While data layers are still a relatively niche topic, more people are beginning to pay attention. With that extra attention, a certain question is starting to pop up more and more, ‘What is the difference between data layer A and data layer B?’. While no modular data layers are live (Celestia and Polygon Avail are on testnets), it is an important question considering data layers will serve as the foundation of a modular blockchain world.
On the technical side, the most notable difference between data layers is the commitment scheme. That is, how does the data layer commit to data? Do they use something like merkle trees and fraud proofs (Celestia) or do they use polynomial commitments and kzg proofs (Avail). A simpler way to question the difference is, ‘does the data layer use fraud or validity proofs?’.
In a fraud proof scheme, some designated node type will commit to the data and nodes that verify the chain won’t check the correctness of the commitment. They will just assume that it’s correct and wait some amount of time to generate or receive a fraud proof that it’s incorrect.
In a validity proof scheme, the designated node that commits to the data also produces a corresponding validity proof. That validity proof is verified by nodes following the chain that the data was committed to correctly.
The main reasons differences between the two schemes boil down to:
- Cost: kzg proofs are expensive and take considerable time for validators to generate while fraud proofs are only generated during disputes (and can be cheap to generate if done correctly).
- Assumptions: Light nodes need to wait some period to receive fraud proof for a block, which is only considered valid until the period has finished without receiving any fraud proofs. With kzg proofs, the block is valid as soon as they have verified a valid kzg proof — of course along with their data availability sampling.
These points are practically similar to the differences between using fraud or validity proofs in a rollup.
As with looking at the difference between any two competitor blockchains, there is also the ecosystem aspect to consider. This is especially important considering that data layers have powerful network effects. More rollups attract more users, producing more light nodes, enhancing security, and enabling bigger blocks with more capacity for cheap rollup transactions. This means block space across data layers isn’t fungible. You can’t just swap out one data layer for another with equal circumstances around security, liquidity, ecosystem network effects, etc.
While no modular data layers are live yet, I look forward to mainnet launches. Particularly Celestia, which has already had a few announcements of notable projects (like Eclipse’s Solana VM rollups)