Avail’s modular blockchain has been designed to provide affordable, decentralized, scalable and secure data availability services for other blockchains built on top. Through Avail's unique combination of features, the Avail network is able to effectively and efficiently solve the data availability problem.
Validity Proofs
Blockchain nodes need data availability guarantees when committing new blocks to a blockchain. Inspired by the cryptographic security of ZK-technology, Avail uses validity proofs (KZG commitments) so that developers and users don’t need to trust Avail that data is available, they can verify it for themselves.
Once a validity proof is generated it becomes computationally efficient to prove and verify, providing data availability guarantees directly to different nodes in a highly scalable way. Avail finalizes blocks in around 60 seconds. This is one of the fastest, if not the fastest, verification times offered by data availability providers today.
Erasure Coding
Erasure coding is a method for protecting data. It’s widely used across computer systems and is the reason why you can still use a CD with scratches on it. Data that’s sent to Avail is duplicated, adding redundancy to the data, and separated into chunks which are stored across multiple locations. This helps make the data on Avail more tamper proof and resilient, making it much harder for malicious nodes to suppress any data within the system.
By using erasure coding, in conjunction with the validity proofs mentioned above, Avail provides blockchain developers, and their users, with high data integrity guarantees and added redundancy to ensure the data they send to Avail remains safe and secure. If you’re considering using the Avail network for something other than data availability, it’s important to note that data availability is not data storage. While they share some similarities, the two use cases are very different.
Light Clients
Avail’s light client is a light piece of software that enables you to interact with the Avail blockchain easily without requiring a full-node. Avail light clients can run almost anywhere providing data availability guarantees to blockchain nodes and users, improving network decentralization and end-user verification.
The Avail light client has already been adapted to run on a mobile, smart watch, browser and is designed to be embedded in wallets, sequencers and other products so that users can independently verify that data is available within the network. You can offer light clients to developers and users when you build with Avail.
Data Availability Sampling (DAS)
Data Availability Sampling leverages light clients, validity proofs and erasure coding to randomly sample data from the Avail blockchain and generate a confidence score. The light client can quickly generate data availability guarantees very close to 100% with 8-30 samples.
In its final form, Avail will have a P2P network made up of multiple light clients which it can sample data from. Avail is the only DA layer that can sample from its light client P2P network instead of relying on full nodes. This sets Avail apart from all current and planned data availability solutions, adding an additional layer of resilience to the network and improving decentralization.
DAS can also be done in a more targeted way. Using the AppId, you can efficiently sample a specific dataset.
Expandable Blockspace (Scalability)
As the number of light clients grows, so too does the network’s capacity to sample data from the blockchain. With more data availability sampling happening, the coverage offered by the Light Client network grows to a point where it becomes large enough to collectively sample larger blocks. This happens because the sampling capacity offered by the network of light clients is large enough to provide guarantees over all the data within the current block size, and has additional capacity to support larger blocks.
This leads to a positive feedback loop where blockspace, security and resilience actually increases, the more light clients there are in the network. Contrary to monolithic blockchain designs which reduce the amount of blockspace available as demand increases, Avail’s DA layer can scale blockspace with demand, future-proofing your appchain or rollup.
Build with Avail DA
Avail's Data Availability Layer has been highly optimized and is ready to efficiently scale your blockchain. If you would like to learn more about integrating Avail into your project take a look at the Avail documentation or join our developer community on the Avail Forum or Discord.