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?

  • 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, 2015 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? Apr 18, 2015 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, 2015 at 15:53
  • thats another thing how long do they store it for per each payment? Apr 18, 2015 at 16:45

3 Answers 3


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!

  • 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, 2015 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? Apr 22, 2015 at 16:49

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.


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.


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 and acknowledge you have read our privacy policy.

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