0Chain Storage Protocol: An Inside Look

Chad Hanson
Zus Network

--

Last week, we took a look at the Reward Protocol. As requested by our Telegram community, this week we dive into 0Chain’s storage protocol, the Blockchain Observable Storage System (BOSS) and other storage information highlighted in the updated whitepaper.

What is it?

0Chain’s architecture distributes data across multiple serves which makes it nearly impossible for a hacker to obtain all the keys to all the servers in order to gain access. In addition, users are able to have complete ownership, control and visibility of their data. For enterprises, data protection allows them to reduce dispute resolution, liability and audit costs.

Current issues with on-chain and off-chain data storage:

On-chain storage imposes data-heavy transaction that can stall the blockchain and delay other transactions. Other problems of on-chain are privacy, data immutability, and visibility to everyone. In traditional off-chain storage methods, data is placed in local storage volumes and replicated (figure 1). This architecture is vulnerable since a hacker only needs to attack one server to gain complete access. Data breach has affected nearly every industry, impacting the reputation of large companies like Equifax, Capital One, Yahoo, Facebook, and Uber. To help solve these issues, the 0Chain platform stripes the data across servers forcing the hacker to steal all the keys on all the servers to gain access, which in reality is impossible.

Figure 1: Blockchain transformation of traditional enterprise data protection

0Chain Protocol & Storage Protocol

The 0Chain protocol takes a different approach compared to traditional blockchains. The tasks of performing consensus, storing blocks, and data storage are divided into 3 separate entities — miners, sharders, and blobbers, respectively. Blobbers, or the computers providing data storage, are not required nor responsible for mining on the 0Chain network. By separating the task of mining from blobbers, the load on the mining network is lightened which enables fast transactions on the blockchain. While blobbers are in charge of storing the data, miners are ensuring that blobbers are storing the data that they are being paid to store. For their work to be validated, blobbers must provide three things when issued a challenge by miners: 1) the data being stored, 2) the relevant system metadata, and 3) the client-signed marker to prove that the correct data is being stored. Thus, the miners confirm that the blobbers are rewarded for their service and that the client is getting the service for which they are paying. Based on the blobber’s ability to provide the requested data, their stake is rewarded or punished accordingly via a smart contract.

Figure 2: Signed markers used to trace, secure date pieces of a file and use blockchain as an independent verifier

The 0Chain protocol writes data to dStorage in parallel chunks of 64kB and are cryptographically signed by the originator as write markers (figure 2). These markers are then rolled up to a Merkle root of the file then to a Merkle root of the allocation. Blobbers then submit these markers to the blockchain for all operations of create/writes, reads, updates and deletes (known as CRUD operations) in order to submit the final state of the allocation. All these operations are done in parallel so that CRUD operations are not impacted. In fact, this is faster than a single server. 0Chain provides the option to commit all CRUD operations to the 0Chain blockchain in the form of metadata. The metadata and corresponding transaction ID can then be exported and uploaded to an other external blockchain, such as Oracle, AWS or Ethereum Blockchain (figure 3). This allows the data to be processed in an application for use-cases such as identity, healthcare, supply chain, banking and more.

Figure 3: Ledger entry of file metadata on external smart contract chains

Speed

All blockchain transactions are aysnchronous to the actual read/write operations in the 0Chain protocol. Read and write markers are cryptographically verifiable. These markers are presented to storage servers which submit the latest marker to the blockchain to identify the latest state of their allocation. Since these data transactions are in parallel to the blockchain transactions, the entire process is as fast, scalable and performant as some enhanced cloud services. In addition to these benefits, 0Chain has made the process even easier for enterprise applications with batch upload and sync operations to automatically commit transactions to the 0Chain Blockchain.

--

--