Tuesday, March 17, 2015

Data Storage with Blockchain Technology

Storage Capabilities of Cryptographic Networks

Blockchain Cloud Storage



Distributed cloud storage is not a new service that was created by the emergence of Bitcoin. Cryptography is used today by large cloud storage firms to secure data, but the network structure of these firms is different then Bitcoin cloud services. Data is stored remotely on servers owned and maintained by a company offering storage services. The core difference offered by a Bitcoin cloud service is the blockchain ledger that records Data Inputs and Outputs. Data shards are audited while accessed, automatized when indexing, monitored by decentralized consensus, and secured by using cryptography.

Storj - Website


Decentralized autonomous organizations (DAO) offer new avenues to store data digitally. DAOs use a consensus protocol, built into bitcoin transactions, to grant access to data stored with their service. Storj encrypts portions of a file into the leased hard drive space of miners. Those encrypted portions of files are defined as shards and stored in the leased hard disk space. A shard is typically 8-32 MB in size, and may be further modified depending on outside file-sharing auditing requirements. A 32 MB shard does not necessarily mean that all 32MB are the contents of one file. Shards can be combined to create more fluid data flow of specific client information. Majority consensus of the network will allow the data to be recalled if the correct keys are presented. Consensus of the network is accomplished by Proof-of-Storage and Proof-of-Redundancy.

Visualizing storing data on Storj (Whitepaper)

Proof-of-Storage Consensus

Merkle Roots are recorded on transactions (See Below)
To create a trust-less data storage network, Storj uses Proof-of-Storage versus Proof-of-Work that is common in solving Bitcoin algorithms. Proof-of-Storage provides reliability that the data was not tampered with while being stored. Data shards are formed into Hash Challenges, a Merkle Tree is created and the Merkle Root is recorded on the Blockchain. These hashes act as the Heartbeat when providing proof of ownership. A miner that is using space for data storage is given a Merkle Tree without it's leaves. When the shard a miner's seed contains is referenced, the hash answers on the miner's Merkle Tree are verified before data is transferred.
Hash 01 and Hash 23 are "hearthbeats"
The client divides the file into individual hash challenges. The added values of each hash must match the unique hash answers in each Merkle Tree. The client periodically reissues seeds to farmers to verify that shards have not been altered. If a client alters a portion of their data, a different hash answer will be generated and that seed will not produce the correct hash answer. Storj uses predetermined heartbeat combinations that provide access to the contents of the Merkle Tree.

Proof-of-Redundancy

Information transcribed inside a Transaction
Cloud Storage companies today lease space on their servers using RAID schemes to protect from network or physical failure. Storj uses redundant storage of shards to provide the correct shards if multiple nodes are offline. Shards are stored on various nodes connected to each file, each shard contains different values for each hash. Storing files on a blockchain allows a user to compare contents of a file between to frames of time. Small meta-data is inserted into a blockchain transaction which can be referenced for external auditing purposes. This redundancy, provided by K-of-M erasure coding, compares the total # of shards contained in a file to the # of shards recorded when the file was input into a transaction.

Users can determine how many farmers they wish to share shards between. A farmer in this network is a user that has leased disk space to store shards. Farmers are paid in SJCX cryptocurrency on Storj's network. SJCX does not have the same value as a Bitcoin but SJCX values are broadcast on Bitcoin exchanges. Farmers are allowed to price the disk space that they provide, at a competitive rate compared to other farmers on the network. Less important data can be shared between 3-4 farmers at low cost. More important data can be secured with hundreds of farmers each with competitive storage and processing capabilities.

Cleversafe - Website

Compare Storj to other encryption dispersed storage models and research how nodes are validated to see the transparency decentralized ledgers provide. Cleversafe offers All or Nothing (AONT) encryption which enables the entire file to be accessed once a node threshold is met. This is the same erasure code that is used to grant access to Storj files that are separated and encrypted. The difference is the integrity of each node is dependent solely on Cleversafe’s algorithm. Blockchain node integrity is transparent, broadcast on the blockchain and is paired with a network consensus which removes central authoritative controls.


The usefulness of encrypted cloud storage offerings are dependent on the information stored. Smart Contracts and negotiations of those contracts are a future feature of the Storj network. Alternatives to conventional practices will spur innovation in both sectors. For more information on Bitcoin companies and blockchain topics, check out the more articles from previous topics on the Navigation Bar.