Rollups scale the blockchain ecosystem by providing a separate layer where transactions can be executed. But they still rely on the mainnet to store transaction data, which is costly and eats up valuable blockspace. Avail is a modular data availability blockchain that solves this problem by taking the data off chain, helping bring the vision of a billion users to Web3 closer to reality.
This article explains what makes Avail superior to the common alternative to storing data on-chain, how it can massively decrease costs and why rollups should use this solution to become something more -- to become Validiums.
A ZK rollup is a Layer 2 scaling solution that executes transactions off-chain and uses zero knowledge cryptography to create a proof of the execution. It then submits both the proof and all of the individual transactions to Ethereum. Posting transaction data onto the mainnet represents 80-95% of the rollup’s costs.
A Validium is a ZK rollup that still sends the proofs to Ethereum, but takes transaction data off chain. Posting the transactions to Avail, which is hyper optimized for data availability alone, allows the rollup to increase throughput and decrease costs. This, in turn, solidifies Ethereum’s role as the settlement layer while freeing up block space.
Modular blockchains primer: Understanding Avail & Modular Blockchains Through Metaphors
Avail vs Data Availability Committees
Until now, the most common way to take data availability off-chain has been to use a Data Availability Committee (DAC). These are small groups of institutions whose core function is to post signatures back to Ethereum attesting to the availability of the data off-chain. They are responsible for ensuring data is always accessible and sharing it publicly should the rollups they provide DA for act maliciously.
While that’s one way to arrive at a Validium, this approach introduces significant risks because it relies on this small group to continue storing and reporting data honestly. Block producers can freeze a blockchain, preventing any users from withdrawing funds from the network, by hiding transaction data. The likely attack vector here would be demanding a ransom from users to bring the network back online.
Avail is itself a blockchain with its own set of validator nodes, block producers, and consensus mechanisms. While DACs today have as few as 5 participants, Avail plans to have hundreds of nodes acting in concert to provide network security. Additionally, the network will be permissionless, allowing anyone to join as a validator.
One of the most unique aspects of using a blockchain as a data availability layer is that it’s capable of multiplexing. This is just a fancy term meaning it can store transaction data for any number of execution environments built on top of it.
DACs are also typically tied to a single execution environment, limiting fee collection for its validators to one chain. Avail validators, on the other hand, can take full advantage of multiplexing and get exposure to all of the chains that use the solution. This starts a positive feedback loop as more execution environments build on Avail’s neutral data layer, inspiring in turn more validators to join the network to get exposure to more dApps and environments.
DA on Avail is not reliant on validators alone as any light client can also contribute to keeping data available. The consensus requirement on Avail is that two thirds plus 1 of the validators come to an agreement. An attestation to that consensus is what is then submitted to Ethereum.
Any network can then either identify unavailable data with statistical certainty by running a light client capable of performing data availability sampling, or by checking the attestation provided by the Avail validators on Ethereum (or any other party independently checking for availability). Avail can automatically slash the stake of the block producers acting maliciously (e.g., double signing, finality reversal attempts, etc.).
Short of storing your transaction data directly on Ethereum, Avail aims to be the most secure way to maintain data availability guarantees. We hope you’re as excited about the modular blockchain future as we are.If you want to learn more about how to use Avail to optimize your rollup or application, or just want to ask us a question directly, we would love to hear from you. Check out our repository, join our Discord server.
This article was originally published on Polygon's official blog.