LogoLogo
English
English
  • Introduction
  • API
  • Methodology
    • Blockspace
    • Fundamentals
      • πŸ•“Activity
      • ⭐Value Locked
      • πŸ’³Economics
      • πŸ”€Convenience
  • General Layer 2 Knowledge
    • πŸ“œData Availability
      • βšͺLight/client and full nodes
      • ❌Fault Proofs
      • πŸ„β€β™‚οΈOnchain Data Availablity
        • πŸ“„EIP-4844
        • 🧫Data Availability Sampling
      • πŸ•ŠοΈOffchain Data Availability
        • βš™οΈGeneral Purpose DACs Mechanism
        • πŸ“šSources and Extra Material
  • Developer Content
    • βš–οΈWhich Layer 2 approach is for you?
      • ↔️State Channels
      • ⚑Plasma
      • πŸŒ€Rollups
      • πŸ”Validiums
    • β›½Transaction Costs
      • βš”οΈOptimistic vs. Zero Knowledge Rollups
      • 🀝Validium Hybrids
      • πŸ–ΌοΈWhat EIP 4844 means for Layer 2s
    • ⭐Rollup Performance
      • βŒ›General Stats
      • πŸ“¨Messaging Latency and Cost
  • OP Chains
    • 🧰OP Stack
    • 🌟Superchain
    • πŸ›£οΈRoad to Superchain
      • βœ…Chain Factories
      • βœ…Permissionless Proof System
      • β˜‘οΈConfigurable Sequencer per OP Chain.
    • ⛓️Chain Knowledge
      • πŸ”΅Base
      • βšͺZora
      • 🟒Public Goods Network
Powered by GitBook
On this page
  • What is Data Availability Sampling you ask?
  • 0-50%
  • 51-99%
  1. General Layer 2 Knowledge
  2. Data Availability
  3. Onchain Data Availablity

Data Availability Sampling

PreviousEIP-4844NextOffchain Data Availability

Last updated 1 year ago

What is Data Availability Sampling you ask?

It is one of the techniques to verify the availability of high volumes of data onchain without requiring any single node to personally download all of the data.

Here each node (including light nodes that are not participating in staking) checks every blob, but instead of downloading the whole blob, they privately select N random indices in the blob and attempt to download the data at just those positions.

We want to achieve two goals here:

0-50%

First, we want to make sure that at least half of the data in each blob is available, and we reject any blob that doesn’t match this.

How?

If less than half of the data is available, then it is almost certain that at least one of the indices of any given client samples will not be available. Dankrad Feist, one of the brains from the Ethereum Foundation behind this tech, says the odds of messing this up after downloading 100 random bits is a tiny 10^-30!

51-99%

Now let’s say a bad blob that has 51% to 99% of the data available sneaks past the first step. Here is where Erasure Coding comes in handy.

Imagine this:

If you've got two dots on a graph, you can figure out every other point on the line connecting them, right? Similarly, these blobs are encrypted in a way that if at least half of the data, anyone in the network can fill in the gaps and share the full picture! πŸ§©βž‘οΈπŸ–ΌοΈβ€

πŸ“œ
πŸ„β€β™‚οΈ
🧫
Illustration from
hackmd