Blockchain Idea: Blockchain based torrent tracker

in #steem5 years ago (edited)

Hey you ! This is the first post of a new serie of "Blockchain idea" posts where I give ideas of apps that can be done on the blockchain. Feel free to realize these ideas ! 😀


4mdusymyk6.png
Image source (Took from google image, the original article seams unavailable now)

So, what exactly is a torrent tracker ?

Torrent

Download files in the torrent way is much faster, more reliable and practical. But it lays on people's will to stock a file in their hard drive and to share it, and that can be difficult to less wanted files.
In order to send / receive data from users to users (or peers to peers, aka P2P) torrent software connects to a torrent tracker server.

The tracker

A torrent tracker is a server that allows seeders (people who shares a file they have downloaded) to connect to leachers (people who desires to get that file). This is the central part of the P2P torrent system.
In other word: "Without tracker you don't have torrent".

"Trackerless" torrents using DHT still needs to connect to a single node in order to get redirected to other nodes and get peers. In this case, without this entry point, you have no DHT, no peers, no torrent.

I wont develop any more details about torrents trackers, but I let you several links about it at the end of the post !

The seeders ratio

The ratio of a seeder on a file is computed as the ratio:
Data sent / Data received
It's used by trackers to motivate users to seed after downloading a file, we are going to take advantage of it for our system.

Why developing it for the blockchain ?

This is actually the most important question when developing an app for the blockchain.
As I said below, the torrent tracker is the centralized part of the torrent system, the system can't work without it, this is what we call a SPOF, a Single Point Of Failure. (SPOF Wikipedia), that can lead to downtimes or legal issues with the owner of the server.
The other advantage is the monetization of the fileshare. It turns users to actors, I'll develop this part just below.
Finally, the blockchain is fair, no one can cheat on it. That means we know where are our data, our money, etc ...

We could use the DHT technology for the tracker blockchain, I don't want this post to be technical, I'll maybe create another post if this idea gets constructed and seams really feasible.

Let's create our tracker on the Steem blockchain

Let's design the economic system we could use to make it work.

A file shared on the tracker has a price a user has to pay to get it.

  • 70% of the price goes to the copyright owner
  • 10% of the price goes to the seeders
  • 15% of the price goes to the copyright witnesses
  • 5% of the price goes to the clone hunters

Don't worry, every actor will be explained below

Let's explain it with a simple example:

  • Pythagoras has shared Game Of Thrones season 3 for 15 Steem on the tracker, 2 users are currently seeding it.
  • Thales didn't saw it yet, he wants to get it, he pays 15 Steem to buy it.

When downloading it, the file is seeded by Pythagoras itself, and 2 other seeders.

% of priceAmount
Pythagoras (6.2 ratio)(6.2/11.4) x 10%54.3% of 1.5 = 0.815 STEEM
Seeder A (1.5 ratio)(1.5/11.4) x 10%13.1% of 1.5 = 0.198 STEEM
Seeder B (3.7 ratio)(3.7/11.4) x 10%32.4% of 1.5 = 0.487 STEEM
GoT copyright owner70%10.5 STEEM
Copyrights witnesses15%2.25 STEEM
Clone hunters5%0.75 STEEM

The exemple is simplified as seeders sent all data at the same data speed. The real system is explained below

Seeders

A seeder earnings depends on his ratio on the file he seeds. The more he has ratio on it, the more he will earn. As well as his seeding speed compared to the total seeding speed of the file to a leacher.

Each block of data received by the leacher, a payment will be shared to every seeders who sent data to him that has an average data speed > 0 on the past block.
Let's say our GoT file is splitted into 100 blocks, worth 0.15 STEEM each.

For each block, a Seeder i will earn:
sv6vc4t5ni.png

EoB: Earning in % of the seeders shares of the block
Ri: Ratio of the seeder on the file
RN: Sum of the ratio of each seeder on the block
AvgSi: Average seeding speed of the seeder on the past block
AvgSN: Sum of the average seeding speed of the seeders on the past block

If the EoB here = 0.4 (40%), the seeder will get 40% of the 10% seeder share. 0.15 total -> 0.015 to seeders -> 0.006 to seeder i
(100 blocks like this -> 0.6)

The monetization of seeders permits to:

  • Rewards seeding a file for a long time
  • Rewards seeding file that doesn't have a lot of seeders
  • Rewards seeders dedicating a higher of seeding speed

Copyrights witnesses

In order to know to whom the copyrights has to go, the tracker will reward users that will bring to a file informations the name of the artist / company and a proof of ownership.
Everytime a user brings the proof that a file has copyrights, he becomes a copyright witness on this file and will get rewards for each file sold.
The rewards are equally shared between the witnesses

Clone hunters

Clone hunters are users that report clones of the file on the tracker, after a clone report, users can vote if (yes or no) the file is the same or not. The clone hunters reward of a file goes to every users on the tracker who hunted a clone in the last 30 days.

Copyrights owners

This is the most delicate actor of a file, as it may not be a user of the tracker and a total blockchain-related things ignorant. So we can't really reward him with STEEM for now.

The solution here could simply be to stock the STEEM copyright owner share of a file, and to distribute 1% of it them to active seeders each day; until the copyright owner gets an account on the service, prove his identity and claims the reward.

Problems to solve in order to make it work

The main problem here is about copyrights owners.
The solution I presented could be legally ok, saying "If you want to, you can get your money, if you don't that means you don't want to", but the main problem here are:

  • Copyright owners can't set their own price on the file

Or maybe they could after verifying the validity of their account and their copyright ownerships

  • Copyright owners's account identity and copyright ownership has to be verified without any centralised system
  • Reward / Disk usage ratio could favorize expensive little files compared to cheap big files.

Conclusion

The % share, price or equations were just (closely random) picked for the example.
This is just an idea, not a functionnal system but It would be awesome to make it grow and perfect it with you in the comments !
They may be things I forgot, misunderstood or didn't see, just say it in the comments as well 😉

Torrent related links

BitTorrent tracker Wikipedia
Lifewire - How torrents works
Trackerless torrent myths and truths
DHT (base technology of trackerless torrent) Wikipedia


Sorry for my bad english, don't hesitate to correct me that'll help me improve :-)
Feel free to upvote, resteem, share, comment, this post or follow me for more awesome content ! 😎
Take care,

Warlkiry

Sort:  

Good ideas to be reused although, as you note, the full scenario seems fraught ... as the blockchain is not only an accounting machine (main functionality you use here) but also a hard to erase memory ... so if the copyright owner does not agree with some past behaviour, he can track past exchanges of files he owns and chase down the seeders ... with hard-to-predict legal consequences ...

Yes, this is actually very hard to deal with, and a very actual debat.
The decentralized constraint I wanted to deal with doesn't allow a lot of control on what is shared.
It could be solved by adding moderators who deletes copyrighted contents (which doesn't leave a lot of content) or by the centralization of the whole system, a digital marketplace like any other one who doesn't need big storage servers to let their user download.
Thanks for reading and for your review !

It is a very good idea. I have always been a torrent maniac. Hope someone would make your idea fruitful.
Rewards to seeders will be a reason for the increase in seeds.

Posted using Partiko Android

Thanks for your review ! I'll try to develop the technical means to create this app in a future post ^-^
Glad you enjoyed it !

When posting content that either is owned by someone else or inspired by someone else’s works, it is proper to list the said source in your post with a link to the original.

Failing to do so is considered plagiarism, and could result in being blacklisted by curation groups or even flagged.

Examples include:

  • Using another artist's original drawing/painting/digital art as a “study” or inspiration without linking the original and giving credit to the original artist.
  • Linking to someone else’s YouTube video with no source.
  • Using someone else’s photos or text without linking to the original source etc.

Please make sure you do so in the future, thank you.

Thanks for using eSteem!
Your post has been voted as a part of eSteem encouragement program. Keep up the good work! Install Android, iOS Mobile app or Windows, Mac, Linux Surfer app, if you haven't already!
Learn more: https://esteem.app
Join our discord: https://discord.gg/8eHupPq

This post has received a 45.25 % upvote from @boomerang.

Congratulations @warlkiry! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 1000 upvotes. Your next target is to reach 2000 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:

3 years on Steem - The distribution of commemorative badges has begun!
Happy Birthday! The Steem blockchain is running for 3 years.
Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Coin Marketplace

STEEM 0.19
TRX 0.14
JST 0.030
BTC 62625.86
ETH 3333.11
USDT 1.00
SBD 2.47