Bitcoin Forum
November 03, 2024, 11:06:06 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: [Idea] The Hive  (Read 1605 times)
the8thbit (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
December 13, 2013, 02:36:56 PM
Last edit: December 15, 2013, 08:15:33 AM by the8thbit
 #1

Potential new name: The Hive. It is a decentralized 'central' resource for all torrent swarms, like a hive for bees. Except decentralized. It's not a perfect metaphor. This name also makes it clear that this is not primarily a currency, and that it is different from other altchains. Like? Don't like?

Repository: https://github.com/the8thbit/The-Hive

-----------------------------

I find the concept behind datacoin to be really interesting, but I feel it has a bit of a problem. A blockchain is a very clunky way to store rich, human consumable data. Even storing a short book is a daunting task for something like datacoin, storing a whole album, film, or video game is ridiculous. Everyone who uses datacoin would have to download every film, game, etc... that anyone wants to share! What if we leveraged the power of an existing decentralized technology to do the heavy lifting for us?

BitTorrent is a much better protocol for distributing data than a cryptocoin. Instead of using a monolithic blockchain that everyone needs to have a copy of, only the people interested in a file need to worry about it. Unfortunately, BitTorrent has a bit of a problem. Though the underlying technology is decentralized, it has been impossible to completely decentralize data transaction in BitTorrent.

There has certainly been progress, don't get me wrong. In the old days, centralized websites had to host .torrent files- files that would link to a tracker (a centralized server), which would connect new members of the swarm to other members. Today, recent breakthroughs in distributed hash tables have lead to a less centralized way of doing things. Rather than using a centralized tracker users obtain magnet links which are like IDs for torrents. Each member of the BitTorrent network holds a hash table containing the IPs of a small number of nodes on the network. The user with the magnet link sends a request through the network by sending it to one of the IPs listed in her hash table. That node does the same thing, and so on, until a node which is a member of the correct swarm is discovered. This cuts the tracker out of the equation, but there is still a need for a centralized database of magnet link listings. This is why sites like The Pirate Bay still exist. The Pirate Bay is not a tracker anymore, but it's still needed to find the actual magnet links. Still, this is a huge improvement. Now TPB no longer needs to manage the individual users in a swarm, now its only purpose is serving up static information. This means that other users can make backups of TPB, and use those backups to find magnet links. The more people with up to date backups, the less centralized TPB's listings are. And if everyone has an up to date copy of the TPB database...

That's where the blockchain comes in. I think the blockchain may be the final puzzle piece in distributed and decentralized file transfer. The blockchain is, effectively, a database that everyone has, and where new information propagate through the network very quickly. A blockchain is limited in that old data is read only, but that will be fine for our purposes, as most of our blockchain data will be static and/or simple. My idea is that the blockchain would list, not just transactions broadcast to the network, but also magnet links and metadata about the magnet links. (title, description, tags, etc...) A user who wants to download a torrent would search his blockchain for the magnet link, broadcast the link to the BitTorrent node network, locate the torrent's swarm, join the swarm, and download/share the file from/with the swarm.

Like any chain, when blocks are mined a certain number of coins are released to the miner. Much like with datacoins, these coins can be spent to include new data in the blockchain. As the amount of information contained in the magnet link itself is very small, the cost to list a new link should also be very small. To illustrate how small magnet links are and how cheap storing them in a blockchain would be, consider this: If we decided to store all of the data on the pirate bay on the datacoin chain it would cost less than 10000 datacoins, including metadata but not comments. With around 1,700,000 torrents, that's around 0.006 datacoins per torrent.

In order to incentivize seeding, The Hive client sets a default badwidth cost, some arbitrary value, say, 0.0001 hivecoin/kb. A random Hive node is chosen to act as an escrow agent, which receives a large chunk of the payment all at once (Say, 10MB worth) along with the transaction fee, and a small escrow fee. The leacher starts compiling a table that details all of the data he's received/sent. At certain arbitrary intervals, say, once every ten minutes, the table is sent to the escrow detailing all of the data transactions. The escrow releases funds accordingly. If the escrow never receives the table, or if there is extra left over at the end then the escrow keeps the extra.
As the blockchain is aware of all messages to the escrow, there is no risk of the escrow running off with the coin. The blockchain simply moves around the escrow funds on its own. Pending escrow funds wouldn't even show up in an escrow's wallet until some arbitrary and long period of time has passed during which the blockchain has not received contact from the leacher. The escrow service could even be used to reward network nodes, something that bitcoin doesn't manage to do.

In summary, this is an idea for an altchain which completely decentralizes file sharing by creating a listing of torrent magnet links within the blockchain. This replaces the need for centralized listings like The Pirate Bay. The Hive also incentivises seeding which keeps swarms healthy, and incentivises running a chain node which keeps the network healthy.

Possible modifications:

  • Would it be possible for users to issue corrections to inaccurately titled or tagged listings by adding new data to the next block being mined which lists a set of changes and points to the block containing the incorrect listing? Could this be used to rate and comment on torrents? Could this be used to put an updated number of seeders/leachers for every listing in the newest block of the blockchain?

Possible alternatives:

  • As mentioned, datacoin attempts to do a similar thing, but in a more generalized sense. The Hive could effectively lie within the datacoin blockchain, however, the issue with that is that then every user has to put up with every item added to the blockchain. So if someone buys space for a film, everyone has to host that film forever. The Datacoin developers seem to want to go in this direction, encouraging users to set up wallets dedicated to particular large data files and ask for donations in order to get them added to the blockchain. My idea would only allow for torrent magnet links and metadata, so the blockchain would stay slim, and large files could get listed for very cheap. Datacoin does hold the advantage that it immortalizes data, whereas torrents can die if all of the seeders disappear.
  • Freenet attempts to do a similar thing, but it is on the other extreme from datacoin. Rather than storing all of the information locally on the blockchain, all of the information is distributed throughout the entire network. This offers an advantage in that no blockchain ever needs to be downloaded, however, it also carries the disadvantage that it is very slow because information can be located anywhere on the network. Compare to a blockchain where no Internet access is required to retrieve the file, and to torrents where users interested in the same files are organized into decentralized swarms.

Potential issues:

  • If seeding is not incentivized then the blockchain would be technically superfluous. This isn't really an issue, but it's something to think about, as other types of distributed databases might be better suited for this project. That said, datacoin is already very technically similar to what I'm describing, so development may be more rapid as an altchain than as a different type of database.
  • The blockchain would store not just magnet links and metadata, but also a ledger of all Hive transactions. If we used a different type of distributed database which did not track a currency of any sort, then the database size would be much, much smaller. In fact, the actual magnet links would take up a minority of space compared to the transaction ledger. We're talking MB vs. GB, a difference that is several orders of magnitude large. One solution to this is the creation of a litewallet which only holds the magnet links and recent transactions. This type of wallet would only be a few MBs large, but it wouldn't be able to act as a node. Multibit takes this strategy.
  • The blockchain does not allow for older data to be overwritten. Like I've said earlier, this isn't too much of an issue as magnet links are static data, but it would be nice for tags, descriptions, etc... Also, it would be nice to be able to remove some older magnet links which don't have swarms any more. There are ways around this, but they involve bloating the blockchain even more. Rather than overwriting data, you must include both the new data and every old version of the data in the blockchain.

I'm mostly looking for feedback, here. How hard would it be to include the possible modifications I listed? How hard would the base implementation be? Are there any caveats (technical or economic) that I'm missing? Etc...
maxsolnc
Sr. Member
****
Offline Offline

Activity: 350
Merit: 250


DTC unofficial team


View Profile WWW
December 13, 2013, 02:43:12 PM
 #2

Interesting concept.
Firstly, I think that some kind of it can be easily implemented on top-level of Datacoin Wink
Secondly, is someone creates such coin, it can co-exist together with Datacoin, because you understand: it won't give good performance if you need to get a lot of 1 KB files via torrent. So these two coins can complement each other: Torrentcoin for magnet-links in way that you provided, Datacoin for small text files. It's possible to build the whole 'Internet' on top of Datacoin, but with Torrentcoin it will be impossible. But imagine: 'Internet' based on Datacoin, and all its media content stored in Torrentcoin! It can really change the world of decentralized networks.

DTC: DMcKNp47fNtgM7sritK9GfJEQ1DzME5nwk
BTC: 1FgUGra685ZwkrX5VnRvfaYp4bHJhC7x4H
MisO69
Legendary
*
Offline Offline

Activity: 1946
Merit: 1005


My mule don't like people laughing


View Profile
December 13, 2013, 02:48:32 PM
 #3

I can't help you with the technical stuff but I really like the idea of torrents being available to anyone anonymously. With no "pirate bay" server for the authorities to take down.

I also seen you posted something similar on the bitshares forum. I think you should keep this as a DAC. Its a great idea that I think will take off. You just have to make the client stupid friendly and get people using it asap.

Snard
Full Member
***
Offline Offline

Activity: 140
Merit: 100


View Profile
December 13, 2013, 03:50:30 PM
 #4

Datacoin was not created to host such large files as movies or games as the largest data size you can add to a transaction is 128KB. So to insert a movie or game, you would need to spread it out over many transactions and blocks. Can this theoretically be done? Yes, but it would be cost prohibitive and prone to errors on reconstruction that it is just not worth it.

Quote
If we decided to store all of the data on the pirate bay on the datacoin chain it would cost less than 10000 datacoins, including metadata but not comments. With around 1,700,000 torrents, that's around 0.006 datacoins per torrent.

How are you getting these numbers? I have seen torrents range as high as 94kb (ubuntu torrent). If I wanted to add the Ubuntu torrent to the chain it would cost me 4.75 DTC.  

With that said, I think Datacoin is a perfect torrent coin. For the search and launching of a torrent you would just need to create a client side front end that can search and retrieve torrents from the downloaded blockchain and automatically launch them with your torrent app. This should be fairly trivial to do once a block chain is downloaded, but its outside my scope of expertise on Windows. Would be easy to do in PHP.

The only issue I see with Datacoin is the inability to add a title, which makes searching difficult.  There are ways around it by using some sort of parsable flag in the begining of the file like <!-#TITLE#:Title here-!>, but everyone would need to adhere to that pattern to really make it work.

If you make a dedicated torrent coin there is also no way to prohibit someone from inserting other types of media or text, which would then just lead to the same issues that you are concerned about with Datacoin.

the8thbit (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
December 13, 2013, 09:33:17 PM
 #5

Firstly, I think that some kind of it can be easily implemented on top-level of Datacoin Wink

Quote from: Snard
With that said, I think Datacoin is a perfect torrent coin. For the search and launching of a torrent you would just need to create a client side front end that can search and retrieve torrents from the downloaded blockchain and automatically launch them with your torrent app. This should be fairly trivial to do once a block chain is downloaded, but its outside my scope of expertise on Windows. Would be easy to do in PHP.

I mention this idea, and a problem with it here:

"A torrent coin could effectively lie within the datacoin blockchain, however, the issue with that is that then every user has to put up with every item added to the blockchain. So if someone buys space for a film, everyone has to host that film forever. ... My idea would only allow for torrent magnet links and metadata, so the blockchain would stay slim, and large files could get listed for very cheap."

In addition, there are a couple of legal and practical issues. Legally, torrentcoin shifts liability a little bit. With datacoin, you have to download anything that gets added to the blockchain. If someone uploads a copywrited song, then everyone has to download that song. If someone uploads child porn, then everyone has to download that childporn. Torrentcoin, on the other hand, would mearly contain a list of pointers in its blockchain, where individual swarms would be held responsible for hosting and sharing the actual content. That's not a 100% legal loophole, but it does put the user in much better legal standing, on the basis that we don't generally see prosecutions for people who hit the pirate bay IP, nor for people who hold backups of the pirate bay.

Finally, I don't know if it's possible to reward seeders and punish leachers through a torrentcoin, but its certainly not possible with datacoin.

Quote from: maxsolnc
Secondly, is someone creates such coin, it can co-exist together with Datacoin, because you understand: it won't give good performance if you need to get a lot of 1 KB files via torrent. So these two coins can complement each other: Torrentcoin for magnet-links in way that you provided, Datacoin for small text files. It's possible to build the whole 'Internet' on top of Datacoin, but with Torrentcoin it will be impossible. But imagine: 'Internet' based on Datacoin, and all its media content stored in Torrentcoin! It can really change the world of decentralized networks.

It's true that datacoin and torrentcoin could coexist, however, I don't think datacoin will serve well as a web-like tool. It does have an advantage in that it would be much faster once you have the blockchain. Network-wise, it would be instant because all of the data is retrieved from the locally stored blockchain. However, the web is big. Like, really big. As of 2010, there are an estimated 1.2 zettabytes of data on the web. If we want to hold even 1% of 1% of 1% of that (0.0001%) the blockchain would have to grow to over one million gigabytes in size, and it would cost over 50 billion DTC to hold all of that information. That's just not feasible. In addition, it would be impossible to do AJAX. Consider a simple counter that shows how many people are accessing a website at a time without refreshing the page. Imagine it updates once per second: this isn't really that fast at all. Datacoin can handle up to 200 transactions per second. Each one of those updates would require an update to the blockchain, and thus, a transaction. That means the entire network could only support up to 200 of those counters. A single facebook session would likely eat up the networks entire update bandwidth.

Luckily, tools like Tor and Freenet already offer decentralized/distributed/anonymous solutions for web.

Quote from: MisO69
I also seen you posted something similar on the bitshares forum.

Indeed! In fact, its the exact same post, but with a different title.

Quote from: MisO69
I think you should keep this as a DAC.

From what I understand, the only difference between a DAC and an altcoin is mindset. Both DACs and altcoins are altchains, it's just that one is thought of as a decentralized, distributed, autonomous currency, while the other is thought of as a decentralized, distributed, autonomous service provider.

Quote from: Snard
How are you getting these numbers? I have seen torrents range as high as 94kb (ubuntu torrent). If I wanted to add the Ubuntu torrent to the chain it would cost me 4.75 DTC.

The Pirate Bay used to be around 15GB in size. Today it's around 100MB. You're right that torrent files can be much larger than what I said and would cost a lot to host on the datacoin blockchain, however, torrent files are the old way of accessing torrents. They're big and bulky, and require a centralized tracker to direct swarms. Today, sites like The Pirate Bay simply list magnet links. These are short lines of text that act as a key which identifies to the swarm sharing the content you want. These magnet links are comparably tiny: While a torrent file for ubuntu is around 94kb, a magnet link is around 250 characters. At 2bytes per character, that's less than half a kilobyte.

super3
Legendary
*
Offline Offline

Activity: 1094
Merit: 1006


View Profile WWW
December 13, 2013, 09:47:35 PM
 #6

I like this. This could perhaps be implemented be implemented very quickly. When I get home from the Inside Bitcoin conference, I'll start writing a whitepaper for this.

Bitcoin Dev / Storj - Decentralized Cloud Storage. Winner of Texas Bitcoin Conference Hackathon 2014. / Peercoin Web Lead / Primecoin Web Lead / Armory Guide Author / "Am I the only one that trusts Dogecoin more than the Federal Reserve?"
Snard
Full Member
***
Offline Offline

Activity: 140
Merit: 100


View Profile
December 13, 2013, 09:52:23 PM
 #7

"A torrent coin could effectively lie within the datacoin blockchain, however, the issue with that is that then every user has to put up with every item added to the blockchain. So if someone buys space for a film, everyone has to host that film forever. ... My idea would only allow for torrent magnet links and metadata, so the blockchain would stay slim, and large files could get listed for very cheap."

Now that you explained about magnet links, I agree if there was a way to enforce only a magnet link being added then it would definitely be a lot smaller.  You could probably create today a MagnetCoin using Datacoins source. Just make the data allocation much smaller.

As for the other features you want, that would have to be added and not something I could help with unfortunately.

In addition, there are a couple of legal and practical issues. Legally, torrentcoin shifts liability a little bit. With datacoin, you have to download anything that gets added to the blockchain. If someone uploads a copywrited song, then everyone has to download that song. If someone uploads child porn, then everyone has to download that childporn. Torrentcoin, on the other hand, would mearly contain a list of pointers in its blockchain, where individual swarms would be held responsible for hosting and sharing the actual content. That's not a 100% legal loophole, but it does put the user in much better legal standing, on the basis that we don't generally see prosecutions for people who hit the pirate bay IP, nor for people who hold backups of the pirate bay.

Theoretically, torrents to copyrighted software could be considered illegal as it is being hosted for the intent of distributing copyrighted software.  Personally, I have no strong opinions either way, but just playing the devil's advocate.


I think its an interesting idea if you could get the features you wanted in there. Otherwise, you can just take datacoin, modify the source, and release it as MagnetCoin.  You could also add some code to validate that its a proper format for a magnet link.

Do you have a link to legit magnet link I could look at?
super3
Legendary
*
Offline Offline

Activity: 1094
Merit: 1006


View Profile WWW
December 13, 2013, 09:55:43 PM
 #8

"A torrent coin could effectively lie within the datacoin blockchain, however, the issue with that is that then every user has to put up with every item added to the blockchain. So if someone buys space for a film, everyone has to host that film forever. ... My idea would only allow for torrent magnet links and metadata, so the blockchain would stay slim, and large files could get listed for very cheap."

Now that you explained about magnet links, I agree if there was a way to enforce only a magnet link being added then it would definitely be a lot smaller.  You could probably create today a MagnetCoin using Datacoins source. Just make the data allocation much smaller.

As for the other features you want, that would have to be added and not something I could help with unfortunately.

Example magnet link:

In addition, there are a couple of legal and practical issues. Legally, torrentcoin shifts liability a little bit. With datacoin, you have to download anything that gets added to the blockchain. If someone uploads a copywrited song, then everyone has to download that song. If someone uploads child porn, then everyone has to download that childporn. Torrentcoin, on the other hand, would mearly contain a list of pointers in its blockchain, where individual swarms would be held responsible for hosting and sharing the actual content. That's not a 100% legal loophole, but it does put the user in much better legal standing, on the basis that we don't generally see prosecutions for people who hit the pirate bay IP, nor for people who hold backups of the pirate bay.

Theoretically, torrents to copyrighted software could be considered illegal as it is being hosted for the intent of distributing copyrighted software.  Personally, I have no strong opinions either way, but just playing the devil's advocate.


I think its an interesting idea if you could get the features you wanted in there. Otherwise, you can just take datacoin, modify the source, and release it as MagnetCoin.  You could also add some code to validate that its a proper format for a magnet link.

Do you have a link to legit magnet link I could look at?
Example:

magnet:?xt=urn:btih:78BCA8ECD8DE05CEA06AD68153A22B269E474F18&dn=riddick+2013+vostfr+dvdrip+xvid+jabal&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.com%3A1337

Bitcoin Dev / Storj - Decentralized Cloud Storage. Winner of Texas Bitcoin Conference Hackathon 2014. / Peercoin Web Lead / Primecoin Web Lead / Armory Guide Author / "Am I the only one that trusts Dogecoin more than the Federal Reserve?"
Snard
Full Member
***
Offline Offline

Activity: 140
Merit: 100


View Profile
December 13, 2013, 10:16:08 PM
 #9

So that's about 192 bytes.  You could probably realistically change the Datacoin source so that the data length is max 1k, which is still probably larger than you need it.  Then you just need to figure out the leaching/submission penalties/rewards
Gontxi
Sr. Member
****
Offline Offline

Activity: 966
Merit: 250


View Profile
December 13, 2013, 10:22:19 PM
 #10

Interesting concept.
Firstly, I think that some kind of it can be easily implemented on top-level of Datacoin Wink
Secondly, is someone creates such coin, it can co-exist together with Datacoin, because you understand: it won't give good performance if you need to get a lot of 1 KB files via torrent. So these two coins can complement each other: Torrentcoin for magnet-links in way that you provided, Datacoin for small text files. It's possible to build the whole 'Internet' on top of Datacoin, but with Torrentcoin it will be impossible. But imagine: 'Internet' based on Datacoin, and all its media content stored in Torrentcoin! It can really change the world of decentralized networks.
Nice nice... and (take one more idea) it can be used to stream video?  Huh

EDIT: live video
the8thbit (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
December 14, 2013, 11:07:10 PM
 #11

So I've talked to someone knowledgeable about bitcoin (who will remain anonymous) on IRC, and he expressed some concerns about the project. Apparently my understanding of the advantage of a blockchain is a bit fuzzy. A blockchain is one particular type of distributed database who's primary advantage is that it allows users to know exactly what order transactions occur in. For the type of thing I'm describing, I don't really care how many people are downloading a particular torrent or in what order they are downloading it, so the use of a blockchain, specifically, is superfluous. I asked him if there is any disadvantage to using a blockchain, but he was hesitant to comment as he wasn't familiar enough with datacoin to know if said issues had already been addressed. That said, here are a couple of issues I can think of (if anyone can think of anymore, please post them, and I'll add them to the list. It's really important that we know whether its worth using a blockchain early in/before development!):

  • The blockchain would store not just magnet links and metadata, but also a ledger of all TorrentCoin transactions. If we used a different type of distributed database which did not track a currency of any sort, then the database size would be much, much smaller. In fact, the actual magnet links would take up a minority of space compared to the transaction ledger. We're talking MB vs. GB, a difference that is several orders of magnitude large. One solution to this is the creation of a litewallet which only holds the magnet links and recent transactions. This type of wallet would only be a few MBs large, but it wouldn't be able to act as a node. Multibit takes this strategy.
  • The blockchain does not allow for older data to be overwritten. Like I've said earlier, this isn't too much of an issue as magnet links are static data, but it would be nice for tags, descriptions, etc... Also, it would be nice to be able to remove some older magnet links which don't have swarms any more. There are ways around this, but they involve bloating the blockchain even more. Rather than overwriting data, you must include both the new data and every old version of the data in the blockchain.

That said, there may be a couple of advantages to using a blockchain:

  • Datacoin already exists, so we could fork their code. The idea is functionally VERY similar to datacoin, so being able to use their code would speed up development a lot.
  • If we do end up reimbursing people for running nodes and seeding then some sort of blockchain needs to exist. That said, it doesn't necessarily have to be a new one. Leechers could pay in an already existing coin. However, to do the implementation I was talking about earlier, the coin would have to have some sort of built in escrow. I don't think any existing coin has escrow, though bitshares will have it. Because of the nature of bitshares, I don't really feel they are appropriate for this sort of thing (They're not really a currency, as much as a speculation vehicle.) and we have no idea when bitshares are coming out anyway. Thus, it might be best to use a blockchain and sample from the bitshares source code/ask bytemaster for development advice.

I like this. This could perhaps be implemented be implemented very quickly. When I get home from the Inside Bitcoin conference, I'll start writing a whitepaper for this.

I've gone ahead and created a github repository for it, here. I'll go ahead and add that to the OP. If you'd like to take charge and kick off development there then be my guest. I don't have an experience working with blockchains, so I don't know if I'm confident enough to do all the work myself, but I would like to help out where possible.

Quote
Theoretically, torrents to copyrighted software could be considered illegal as it is being hosted for the intent of distributing copyrighted software.  Personally, I have no strong opinions either way, but just playing the devil's advocate.

If all you have is a magnet link listing, then you don't have tracker files- which are what actually help people download the particular files. All you have are a list of titles and a list of hash codes. I'm not saying it would eliminate liability, but it would reduce it.

Quote from: snard
So that's about 192 bytes.  You could probably realistically change the Datacoin source so that the data length is max 1k, which is still probably larger than you need it.

I'd say 2k for title, magnet link, description, and tags, and you could split that up into an address space.

Quote
Then you just need to figure out the leaching/submission penalties/rewards

I've been thinking about that. I don't think that's possible through network consensus/mining like I was describing before, as it would be very difficult to link a wallet to torrent node in a way that is trustless. (My anonymous contact agrees.) However, it could be done in a more adhoc way between the individual seeder and leacher. The client (which is both a *coin client and a torrent client) can set a default badwidth cost, some arbitrary value, say, 0.0001 *coin/kb. The payment for the first kb is transfered to the seeder. When the leacher recieves the first kb, he sends the next payment to the seeder, and so on and so forth.

The only things I'd be worried about are the high transaction volume gumming up the network and the speed of transaction propagation. We might need to do this with larger chunks of data, but that introduces the problem of risk in individual transactions. If you're risking 1kb of coin then its not that big of a deal. It's a tiny amount lost, so you just move onto the next seeder. But 100kb? or 1mb? For a lot of torrents, a payment per MB would still be around 1 transaction per second.

One way to solve this that I just thought of is that you could send a very large chunk to an escrow address randomly chosen from the network nodes. You could even send the entire file's worth of coin plus a small escrow fee to the escrow. You then start compiling a table that details all of the data you've received. At certain arbitrary intervals, say, once every ten minutes, a table is sent to the escrow detailing all the data transactions. The escrow releases funds accordingly. There are a couple of problems with this model, but I feel they are small:

  • This model trusts that the leacher will send his table to the escrow once the data transaction has finished. It is possible that the leacher will simply hold onto the table, and the seeder will be completely out of luck. I don't think this is likely, however, as this wouldn't benefit the leacher at all. The escrow would just keep all of the funds which were supposed to go to the seeder. It might even be to the detriment of the leacher, as the seeder may blacklist him.

    This model assumes that the leacher will be able to find legitimate seeders. Otherwise, the leacher might send a file's worth of coin to an escrow, only to never receive any data. I don't think this is a huge problem, though, as there's also no benefit to posing as a seeder.

    If the leacher changes his mind and decides he doesn't want the file halfway through, then the leacher looses his whole investment. One way to solve this problem is to set up more frequent escrows for smaller amounts of data. So, for example, instead of doing one monolithic escrow per file, why not do one every 5 or 10 megabytes? That way the leacher can recoup some of his costs partway through.

As the blockchain is aware of all messages to the escrow, there is no risk of the escrow running off with the coin. The blockchain simply moves around the escrow funds on its own. Pending escrow funds wouldn't even show up in an escrow's wallet until some arbitrary and long period of time has passed during which the blockchain has not received contact from the leacher. The escrow service could even be used to reward network nodes, something that bitcoin doesn't manage to do.

Quote
Nice nice... and (take one more idea) it can be used to stream video?  Huh

That would depend on the torrent protocol and client moreso than anything I'm describing here. I've seen torrent streaming implementations, but they're not the best. The way torrents are designed, you want to be able to pull down fragments from all over the file. Some at the beginning, but also some at the end and some in the middle. Streaming relies on the idea that you can download the start of a file faster than you can download the whole file, but this isn't necessarily the case with torrents.

Quote
EDIT: live video

Eh, I don't think livestreaming would be a good use of the protocol. Live streaming is inherently centralized. It's a case of one person with information trying to distribute that information to a large group of people quickly. So the livestreamer is the central node, and everyone else is a client.
Sukrim
Legendary
*
Offline Offline

Activity: 2618
Merit: 1007


View Profile
December 14, 2013, 11:14:07 PM
 #12

Magnet links still just point to a torrent file that has been stored in the mainline DHT instead of a centralized source like thepiratebay.
If you turn off DHT and just have the magnet link (actually you anyways just need the info hash (the btih part)) you are completely helpless, even though you'd find people offering you the file for download!

https://www.coinlend.org <-- automated lending at various exchanges.
https://www.bitfinex.com <-- Trade BTC for other currencies and vice versa.
the8thbit (OP)
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
December 14, 2013, 11:34:07 PM
 #13

Magnet links still just point to a torrent file that has been stored in the mainline DHT instead of a centralized source like thepiratebay.
If you turn off DHT and just have the magnet link (actually you anyways just need the info hash (the btih part)) you are completely helpless, even though you'd find people offering you the file for download!

I'm not sure if I know what you're saying. I'm not saying we should get rid of the DHT. I'm discussing a distributed listing on top of the DHT.
fran2k
Hero Member
*****
Offline Offline

Activity: 784
Merit: 500


View Profile WWW
December 15, 2013, 05:47:02 PM
 #14

Fantastic. First time to read some seudo formal idea about this. I had already thought about the MagnetCoin, great you put it into words.

Would like to see some developers taking the project into reality soon.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!