4

I was wondering has there been any attempts on using the blockchain as a decentralized database storage system? Would it be feasible to use it on Bitcoin or another Altcoin and if so which altcoin would suit it best? I would imagine Bitcoin would have the most redundancy as it has the most nodes.

Say for example I have my CMS and I wanted to store my user records in a blockchain. Or is there another practical example when using blockchain for storing database records?

4
  • 2
    The blockchain has to be stored by every full node, so it's not exactly the best place to store your data (good redundancy but no one wants to store everyone else's data). The Storj project that Luca pointed out uses a blockchain to facilitate payment when serving up files, but does not store the data in a blockchain itself. You may also be interested in Factom, they use the Bitcoin blockchain to secure data from modification. – morsecoder Apr 18 '15 at 11:48
  • so who stores the data? if users did, what if one of them turns off their computer? or a bunch of them do at once? – Patoshi パトシ Apr 18 '15 at 14:48
  • You have to pay multiple people to store your data in case one of them isn't available to serve it up. – morsecoder Apr 18 '15 at 15:53
  • thats another thing how long do they store it for per each payment? – Patoshi パトシ Apr 18 '15 at 16:45
1

Yes there have been some proposed ideas such as FileCoin, Storj and probably others. However, I'm not sure how well these systems work because there would need to be a way to prove to other peers that you actually are serving the piece of data. Some call it proof-of-storage, others proof-of-retrievability. But it's still an open problem that nobody seems to have solved yet. I mean, this is probably why both projects I mentioned above aren't ready yet.

From a technical point of view the idea of a P2P storage system is that if you upload a piece of content on this cloud, you'd expect it to be there all the time. That's the whole point of a cloud; you upload it, and can download it from anywhere in the world at any time. I'm not sure that P2P is a good solution to this issue. A client-server model, from an entity that you trust and pay directly which has reputation (say Dropbox), is probably a better mechanism of doing this.

In a P2P system, all the nodes that were holding your data could simply go offline for no particular reason and your data would be unreachable. Furthermore, even if the nodes were incentivized to keep sharing your data (perhaps being compensated through some form of cryptocurrency), there's still no way to figure out how the incentive would work exactly. For example, how would you stop yourself from serving your own data using another computer, and therefore getting all the crypto yourself?

It's a very interesting problem and I think we're slowly getting there, but we really need to get the incentives right, and it's a really hard problem in a P2P system. But hey, there's hope, just look at Bitcoin!

2
  • Storj and Filecoin are fairly different. Filecoin includes proof of storage in its proof of work function, and Storj is more like OpenBaazar meets Amazon Web Services. – Nick ODell Apr 20 '15 at 5:34
  • im curious to what happens when u turn off your computer. does the network still hold your data or do they drop it after a certain timeframe? If i understand correctly, you'd have to dedicated some of ur space to the network in return to use other people's storage. But what if i was a large contributor to the network say 20% of it and I went offline for a week. What happens to my data that's hosted on other peoples systems? – Patoshi パトシ Apr 22 '15 at 16:49
0

Check out Datacoin, it is a lot more bitcoin-like than alternatives mentioned like Storj. Plus it's been released about two years ago.

Unfortunately it's dying, but there are still active nodes and it works.

0

Seems like there is a live working solution already using the NXT protocol. They seem to have implemented the ability to upload files into the blockchain, but max file size is 42kb it seems. Also seems like they are addressing the blockchain bloat via pruning the data every 2 weeks, but some nodes can turn off this feature and keep the data indefinitely and charge a fee for old data retrieval.

https://nxtforum.org/nrs-releases/nrs-v1-5-3e/

This update adds the Prunable Tagged Data feature, planned to be enabled at the voting system block too.

Prunable tagged data are similar to prunable plain messages with no recipient, but with additional searchable metadata fields added. This feature can be used for decentralized and trustless distribution of small (up to 42k, including the metadata) pieces of data, which are by default stored for two weeks only (24h on testnet), but can optionally be stored longer or indefinitely by some nodes, and can be verified against the blockchain even after their expiration.

Currently each tagged data can have the following fields, in addition to the data itself: name (required), description, tags, type, isText, filename.

Name, description and tags are indexed and searchable using Lucene. All data and metadata is prunable, after pruning only a single 32 byte hash remains.

Fee for either uploading or extending tagged data is based on the total data size (including metadata), and is 1 NXT for up to 1k bytes, 0.1 NXT for each 1k above, up to the limit of 42k.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.