Data Availability

While all of these infrastructure tools are critical to making blockchain achieve advanced functionality, none of this would be possible if all the data stored on-chain was not accessible. Data availability refers to this exact idea: making blockchain data available to everyone at any time.

In a typical database, only those that operate that database can view and verify transactions. If this standard persisted into the blockchain ecosystem, it would mean that only the node validators would be able to view blockchain transactions because they are the ones that are validating them. Instead, the decentralized and open nature of blockchain makes all of this transaction data available to the public. Anyone can go and view all transactions occurring on the network for themselves in order to verify them.

Data availability (DA) in a blockchain network is responsible for providing users with access to this data. This is the reason that blockchains are trustless, since they let users verify for themselves the validity of the data. For the nodes operating the network, this system is particularly important because it lets all the nodes on the network review the data and determine its accuracy.

Data availability does not prove whether transactional data is accurate, it simply makes it available for anyone to view. It is still up to the nodes that operate the network to verify that incoming transactions are correct.

Here is a breakdown of the role of DA within block verification:

  • Propagation: when a new block full of transactions is suggested to be added to the chain, DA lets all the nodes access that new block
  • Validation: once a node gets access to the new block, DA lets each node have access to the transaction data on it in order to verify that the transactions are correct
  • Header Verification: since each new block is connected to the previous block by containing that block’s hash, DA gives access to the transaction hash of the previous block to ensure the chain follows the proper order
  • Consensus Compliance: nodes have to verify new blocks were properly agreed upon by the network, so DA lets a node check whether the new block reached that threshold
  • Updated Chains: each node must ensure it’s up to date with the current state of the chain, so DA lets a node check to see whether any new blocks were added

Source: Celestia

Without having data availability, a blockchain risks becoming centralized and controlled by a single party; if no one except the person that operates the database can see the transactions occurring on it, then that person is free to manipulate the database without anyone knowing it was edited. Blockchain prevents this issue from occurring by creating an open database that is run by a group of nodes where if any user attempts to submit a false transaction, that transaction will automatically be detected and removed.

💡 Voting on the blockchain

When it comes to electing a leader, a democratic voting process is critical to ensuring that a winner is selected fairly by a majority. Unfortunately, countries all over the world see instances of voter fraud occurring, where a less popular candidate somehow manages to win an election despite evidence suggesting that they did not receive enough votes. Vote tallying is a secretive process that is usually closed off to the public and is reliant on a small group of people to correctly count up the votes. This can result in manipulation and bribery, where officials are coerced into letting the losing party become the winner of the election, and no one can prove it occurred because they don’t have access to voter data.

By moving voting onto the blockchain, voters can rely on the data availability of the chain to clearly determine a winner. DA lets everyone directly view how many votes each candidate received, where each vote can be listed as a transaction and verified by the nodes operating the chain to be accurate. This creates a fair and trustless system that can determine a clear winner by verifying all votes to be legitimate.

Data Availability Layers

DA layers are special data availability solutions where instead of storing all transaction data directly on the chain itself, transaction data is stored in a blockchain separate from the main chain. This layer is responsible for providing users access to transactional data while at the same time saving storage space on the chain by storing this data separately.

Using a DA layer instead of having full data availability on a blockchain network can significantly increase transaction speed and decrease storage cost. In fact, rollups and sharding both utilize DA layers to operate.

Source: Celestia

Rollups use a DA layer to store all of the blobs created by transactions. This system creates much less of a strain on the blockchain network by only requiring the cryptographic proofs to be stored on-chain instead of all the transaction data - the blobs that contain all the actual data are stored in the DA layer, and the proofs that prove these transactions to be valid are maintained by the chain. This way, the blockchain network still has evidence directly on it of all transactions being valid, and if anyone wants to see the actual transaction data, they can do so on the DA layer. This lets blockchains maintain full data availability while also cutting down on the cost of storing data.

Having a DA layer can also be useful for blockchains that utilize sharding because it creates a shared space for storing transaction data. Since each individual shard essentially acts as its own mini chain, having a shared DA layer where all the shards can store transaction data would make it significantly easier to manage data availability across the entire network.

One popular DA layer is Celestia. This protocol acts as its own blockchain network that can provide a DA layer as a service to other chains. Celestia offers economy of scale to these chains where instead of having to create their own data availability on their chain, they can utilize Celestia and save money as they scale. Celestia also has its own native token TIA that acts the platform’s main form of payment - blockchains that utilize Celestia for data storage can directly pay for that storage in TIA. Users can also stake TIA directly on Celestia to help secure the network and participate in its consensus mechanism while earning interest on their holdings.

To learn more about Celestia and its inner workings, check out the Celestia guide.

💡 Modular vs Monolithic chains

When a network processes all transaction data directly on a single chain with no reliance on external tools, it is referred to as a being a monolithic chain. Bitcoin, for example, is a monolithic chain because the transactions are created, settled, and stored directly on the Bitcoin network. There is no reliance on external data or any other tools - everything is done directly on Bitcoin’s chain. While this system makes the chain simple and secure, it creates challenges with scaling or upgrading the network because of the constraints on the amount of data that can be stored and how fast transactions can be settled.

Modular chains, on the other hand, utilize external means of executing, settling, or storing data. Celestia, for example, is a modular chain because transactions are executed via rollups and then stored in a DA layer. Separating the different operations of a blockchain can create effective scaling solutions because it can outsource each operation. A blockchain network that chooses to become modular would not have to worry about creating an effective data availability system because it can outsource that responsibility to Celestia, which specializes in this exact operation. However, modularity can increase complexity, so modular chains have to ensure their security is well maintained in order to avoid any issues.

To learn more about the differences between modular and monolithic chains, check out Celestia’s guide on modular and monolithic blockchains.

Data availability is crucial to keep blockchains decentralized and open. As soon as transaction data becomes controlled and hidden by a single party, a database can easily be manipulated and distorted. By having a system in place that lets anyone verify for themselves that all transactions are accurate instead of simply trusting that they are correct, blockchain creates a trustless and secure environment for users to operate freely within.

To learn more about data availability, check out this article by CoinGecko on what is data availability, as well as this YouTube video on data availability and DA layers.

Practice Question

📋 Practice Question

True or False: without data availability on a blockchain, users will not be able to access and verify transactional data.