MIVORA Start learning free

Data Availability: The Hidden Pillar

A rollup can prove its math is right and still trap your funds — if the transaction data was never actually published for anyone to see.

Crypto & Tokenization · Lesson 33 · 11 min read

Last two lessons, rollups posted their transaction data to L1 — and we breezed past why that posting matters. It turns out to be one of the deepest ideas in scaling. Here’s a puzzle: a ZK rollup (lesson 32) can prove every transaction was valid… and still leave you unable to get your money out. How? Because proving the math is correct is a different question from whether the underlying data was actually published for people to use. That second question — data availability — is a silent pillar holding up every rollup. Hold the question: if a system can prove its state is valid, why would it also need to prove the data is available?

Valid is not the same as available

Data availability (DA) is the guarantee that the transaction data behind a batch was actually published — made retrievable by anyone, not kept secret. It’s a separate property from validity. Validity asks “were the rules followed?”; availability asks “can everyone actually see the data that was processed?” You need both. Remember from lesson 31 that to challenge a fraudulent optimistic batch, a watcher must re-check the transaction data — impossible if that data was withheld. And to withdraw from any rollup, you (or a tool) must be able to reconstruct the current state — your balance — from the published transactions. If the data isn’t available, a rollup can be provably valid and still leave everyone frozen, unable to verify or exit.

The data-withholding attack

This isn’t hypothetical — it’s a specific threat called data withholding. Imagine a rollup operator who publishes the result (a new state root, even a valid ZK proof) but hides the transaction list itself. Everything looks fine on L1. But now no one else can reconstruct the state, so no one can independently compute their own balance to withdraw, and (for optimistic rollups) no one can build a fraud proof because they can’t see what to check. The operator hasn’t broken the math — they’ve broken your ability to act on it. You’re now dependent on that one operator to tell you your balance and process your exit, which is exactly the trusted-middleman position the whole system was meant to avoid (recall custody, lesson 18). Availability is what keeps a rollup permissionless to exit.

Worked example
Why a valid proof isn’t enough:
• A ZK rollup posts: “new state root X, here’s a valid proof that X follows the rules.” ✅ math checks out.
• But it never publishes the transactions that led to X.
• You want to withdraw. To do so you must prove your balance is part of state X — which requires the transaction data. It’s missing.
• Result: the rollup is provably correct and you still can’t leave without the operator’s cooperation. Valid, but not available.

The DA tradeoff: on-chain vs off-chain

So where should the data live? On-chain DA — posting the full data to L1 (what lessons 31–32 assumed) — is the gold standard: L1 is the most secure, censorship-resistant place, so if the data is there, availability is guaranteed. But it’s also the most expensive part of running a rollup (you’re renting L1’s scarce space). That cost pressure creates a spectrum. Off-chain DA posts the data somewhere cheaper — a separate DA layer (a network specialized in cheaply guaranteeing availability) or a committee that attests “we’re holding the data.” A rollup that keeps execution proofs on L1 but moves data off-chain is often called a validium. The tradeoff is stark and worth stating plainly: off-chain DA is cheaper but adds a trust assumption — you’re now trusting that layer or committee to actually keep the data available. Cheaper fees, weaker guarantee. There’s no free lunch (the recurring lesson of this track); DA is simply where many rollups choose to make their tradeoff.

An everyday analogy

Imagine a bank that posts a sealed, notarized statement: “We certify every account balance is correct.” Reassuring — until you try to withdraw and discover they won’t show anyone the actual ledger of transactions. The certificate might be perfectly honest, but without the underlying records you can’t prove what you own, and no outside auditor can check the books. You’re forced to trust the bank’s say-so for everything. Data availability is the rule that the ledger itself must be open for anyone to read, not just the summary — because a correct-but-hidden ledger quietly turns a trustless system back into “just trust us.”

Worked example
Placing three designs on the DA spectrum:
1. Rollup posts all transaction data to L1 → strongest availability, highest cost. If L1 has the data, no one can withhold it.
2. Validium keeps validity proofs on L1 but stores data with an off-chain committee → much cheaper, but you trust the committee to keep the data available.
3. Dedicated DA layer → a middle path: a network specialized in cheaply guaranteeing availability, weaker than L1 but stronger than a small committee.
4. The question to always ask a rollup: “where does the data live, and who could withhold it?” — that answer is its real security level.

This is the reading. The interactive version — active-recall quiz, a hands-on experiment you run in your own AI, and an earned mastery check — is free in the app.

Start this lesson free →