Validium is cheaper because data availability moves offchain
Validium is often summarized as a simple trade: state transitions are verified with ZK proofs, while transaction data is stored by a Data Availability Committee, or DAC, instead of being published onchain. That summary is directionally correct, but it hides the engineering point that matters most during failure. A ZK proof can show that a transition from one state root to another was valid. It does not guarantee that a user, wallet, solver, indexer, or router can later obtain the witness needed to prove ownership, exit, refund, or rebalance.
For a non-custodial surface such as [AllSwap cross-chain swap](/exchange-swap), the key Validium risk is not whether the happy path is cheap. It is whether the abnormal path is recoverable. If the target Validium's DAC stops serving data, if enough members collude to withhold data, or if committee certificates drift away from usable state reconstruction, a failed cross-chain swap can enter an awkward state: everyone may know that an asset exists in the state root, but no one outside the operator-DAC path can construct the proof required to recover it.
This article treats Validium/DAC as a protocol boundary. It does not group every ZK L2 under one risk label. A Rollup publishes enough data to let outside parties reconstruct state. A Validium keeps data offchain and asks a committee, service, or data-availability arrangement to make that data available. The cost savings are real. So is the new assumption: asset exit is no longer purely "L1 verifies proof"; it is "L1 verifies proof and the user can recover data."
The practical conclusion is direct. Validium can be a good execution environment for some flows, but cross-chain routers should not price it like a Rollup unless witness recovery, fallback mode, DAC health, and refund semantics are explicit.
System model: ZK validity is not data recoverability
A simplified Validium system has five roles:
- Sequencer `Seq`, which orders transactions and constructs batches. - Prover `P`, which generates a ZK proof for the batch transition. - DAC member set `D = {d_1, ... d_n}`, which receives batch data and signs availability commitments. - L1 verifier contract `V`, which verifies the ZK proof, accepted roots, and DAC certificate. - User or solver `U`, which may need an account leaf, Merkle path, UTXO opening, nonce, or note witness during recovery.
A submitted batch can be abstracted as:
`Batch = (oldRoot, newRoot, txDataCommitment, zkProof, dacCertificate)`
The L1 contract verifies two statements:
`VerifyZK(oldRoot, newRoot, publicInputs, zkProof) = true`
`VerifyDAC(txDataCommitment, dacCertificate, threshold) = true`
The first statement says the state transition is valid under the circuit. The second says enough DAC members attested to the data commitment. It does not place the full data on L1. It does not prove that each user can retrieve their local witness during an outage. It does not prove that third-party indexers can reconstruct all balances independently.
The safety chain should be written as:
`available(data) -> reconstruct(stateWitness) -> exitOrRefund(user)`
If the first arrow breaks, the rest of the recovery path can fail even when every ZK proof is mathematically correct. This is why data availability is not an implementation detail for cross-chain swaps. It determines whether refunds and exits can be independently executed when the normal operator path stops working.
A DAC certificate is an availability commitment, not the data itself
In many Validium designs, DAC members receive batch data and sign a hash, batch id, state-root pair, or data-availability message. Once at least `t` members sign, the L1 contract accepts the batch as data-available. With BLS aggregation, the onchain certificate can be compact. With ordinary multisignature verification, the logic is simpler but the certificate can be heavier.
The certificate can be modeled as:
`cert = AggregateSign(D_subset, H(chainId, batchId, oldRoot, newRoot, dataCommitment))`
The threshold relation is the first risk boundary. Let `n` be the total number of DAC members and `t` the threshold accepted by L1. If enough members are offline, the system loses liveness. If at least `t` members sign an availability statement and later refuse or fail to serve the data, the system can lose recoverability. If the committee is small or operationally correlated, the apparent threshold can be much stronger on paper than in practice.
Member independence matters as much as member count. Seven committee members are not seven independent fault domains if they share a cloud provider, key-management vendor, legal jurisdiction, operator, or backend API. A route engine should not model `n` and `t` as the only inputs. It should consider response latency, recent availability, data-download success rate, independent archival support, and correlated infrastructure.
The threshold is also a safety-liveness trade-off. A higher threshold makes it harder for a small group to sign bad availability statements, but it can halt valid batch submission when too many members are offline. A lower threshold improves batch liveness but increases the risk that a smaller colluding set can make data unrecoverable. Validium's DAC is not a free decentralization layer. It is a committee-based data-availability assumption with explicit operational risk.
This is why a DAC should be evaluated as infrastructure, not only as a cryptographic quorum. The route engine should ask whether members run independent storage, whether their signing keys are separated from their data-serving infrastructure, whether there are independent archival nodes, whether data retrieval is publicly testable, and whether users can verify the bytes they receive against the batch commitment. A committee that signs correctly but serves data only through one private gateway is still a weak recovery path.
The operational model also affects governance risk. If pausing, rotating, or replacing DAC members requires a slow administrative process, recovery can lag behind the user's refund window. If the administrator can rotate the committee too freely, the committee becomes a governance-controlled trust root. The useful middle ground is an auditable process: member changes are delayed, public, tied to known commitments, and do not silently alter the recovery assumptions of already accepted batches.
Data withholding breaks exit ability, not necessarily proof validity
A data withholding attack does not need to forge a validity proof. The state transition can be valid, the proof can verify, the DAC certificate can pass, and users can still be unable to recover the data needed to exit.
Assume a batch moves the system from `root_i` to `root_{i+1}`. The ZK proof is valid, and the DAC certificate is accepted on L1. Later, the DAC or operator path stops serving the relevant transaction data or state diffs. Alice wants to prove that she owns 100 USDC under `root_{i+1}`, but she cannot obtain her account leaf, Merkle path, nonce, or note opening. The L1 escape contract can verify a submitted proof, but it cannot invent Alice's witness.
The economic risk can be sketched as:
`loss <= lockedValue(validium) - slashableStake(DAC) - recoveryCost`
If the committee's slashable stake or reputational penalty is small compared with the value that depends on data availability, pure economic deterrence is weak. Even when penalties exist, they do not provide immediate recovery. A user or solver may wait for governance, evidence gathering, data restoration, or legal escalation while a cross-chain refund window keeps moving.
For cross-chain swaps, the damage is usually not a clean isolated loss. It is a suspended state. Source-chain funds may be locked. Destination-chain payment may be unprovable. Solver rebalancing may be stuck. The route engine may not know whether a transfer was not filled, filled but not provable, refundable, or waiting for a witness. If the product collapses those states into "processing," the user has no actionable recovery path.
Proofs of data possession help, but they are not availability by themselves
The idea of proving data possession is useful. DAC members can periodically prove that they still hold data chunks, perhaps through Proof of Data Possession, Proof of Retrievability, or similar storage proofs. A ZK version can reduce how much raw data must be exposed during an audit. This improves accountability, but it should not be mistaken for complete availability.
There are three limits.
First, sampling coverage. If a proof samples only part of the stored data, a member can lose or hide unsampled chunks. Raising the sample rate increases bandwidth, storage reads, and proof overhead.
Second, response timing. A member may answer an audit during a proof window while still being unavailable when users need data under stress. Cross-chain refunds and exits are time-sensitive; a proof that arrives after the refund deadline is operationally weak.
Third, service path. Proving that a committee member holds data is not the same as proving that wallets, routers, indexers, or solvers can retrieve it with sufficient reliability. Data availability means the relevant party can get the relevant data in time, not merely that someone claims to store it.
A practical architecture needs several recovery paths: direct DAC download, independent archival nodes, and user- or router-side witness caching for critical state. Each path has a different risk profile. Direct DAC download is fast but shares the DAC failure domain. Archival services are more independent but require continuous synchronization and verification. Local witness caching is closest to user recovery but raises storage and privacy concerns.
Witness caching deserves special care. A wallet can cache the user's own account witness after every interaction, but a stale witness may not be enough if later batches modify the account, fee balance, nonce, or note set. A router can cache proof material for swaps it coordinates, but it may not see unrelated transactions that change the user's state. An indexer can track the full Validium state, but then the system depends on that indexer receiving data continuously from the DAC. None of these options is complete alone. The safer pattern is redundancy: wallets cache local state, routers cache order-specific witness material, and independent indexers try to reconstruct full state.
The recovery probability can be expressed as:
`P(recover) = 1 - product_i(1 - p_i)`
`p_i` is the probability that recovery path `i` can provide the witness inside the required window. This expression only works when the paths are independent. If the DAC API, archival API, and router cache all depend on the same backend, the formula overstates safety. A route engine should apply correlation discounts instead of counting multiple endpoints as independent recovery systems.
Rollup fallback is not a switch
"Fallback to Rollup mode" sounds like a perfect compromise: use Validium for low cost during normal operation, and publish data onchain when the DAC becomes unhealthy. In practice, fallback is a state-machine migration under stress.
The minimum states are:
- `validiumMode`: batches are accepted with ZK proof plus DAC certificate. - `degradedDA`: DAC health is degraded, and new batch acceptance is restricted. - `rollupFallback`: future batches must publish full data or sufficient state diffs onchain. - `withdrawOnly`: if historical data cannot be recovered, users can only exit from the last recoverable state.
The hard part is historical data. Switching to Rollup mode protects future batches. It does not automatically restore Validium batches whose data was already lost. If data disappears after `root_k`, the protocol must define the last recoverable root, the withdrawals allowed from that root, and how later transactions are rolled back, invalidated, or settled.
Cost also changes at the worst time. Validium is cheap because full data is not posted to L1. If fallback happens during market stress, L1 gas may already be high. Batch publication, user exits, solver rebalancing, and refund claims may compete for the same blockspace.
Fallback rules therefore need to be protocol rules, not emergency governance improvisation. Trigger conditions, batch limits, last recoverable root, user exit window, DAC penalties, and solver settlement rules should all be verifiable. If one administrator can decide when the system has recovered, fallback becomes another governance assumption.
There is also the question of whether new orders are allowed during degraded data availability. A conservative router should segment behavior. Small orders may continue with higher warnings and adjusted pricing. Large orders should be paused. Orders already locked but not filled should prioritize refund. Solver claims for already-filled orders should go through a separate verification path. This avoids turning degradation into an immediate total shutdown while preventing new risk from being added behind an already weak data-availability boundary.
Solver exposure is where this becomes economically visible. A solver that prefunds a Rollup route mainly worries about finality, gas, and bridge delay. A solver that prefunds a Validium route also worries about whether it can later prove the fill, reclaim inventory, or exit from the target state. If DAC health drops, the rational response is to reduce limits, demand a wider spread, or stop quoting that route. When users see a route become more expensive, the reason may not be liquidity alone; it may be that the recovery assumption behind that liquidity has weakened.
The fallback state machine should therefore include solver settlement rules. If the user was paid before degradation, the solver's claim should not be lost merely because future batches are restricted. If the user locked funds but was not paid, refund should take priority. If data for the relevant batch is unavailable, the protocol needs a rule for whether the solver, user, or DAC insurance pool bears the temporary loss. Without this rule, a data-availability incident turns into a negotiation between counterparties, which is exactly what non-custodial settlement is supposed to avoid.
What AllSwap should price into Validium routes
AllSwap does not need to expose every DAC signature to the user, but its routing model should understand the difference between Validium, Rollup, Volition, and ordinary bridge paths. Two routes can both say "ZK secured" while having very different failure recovery properties.
A route score can include data-availability risk:
`routeScore = priceScore + speedScore - daTrustPenalty - witnessRisk - exitUncertainty`
`daTrustPenalty` comes from DAC threshold, member count, member independence, and slashability. `witnessRisk` comes from whether users or third parties can reconstruct state witnesses. `exitUncertainty` comes from escape path clarity, refund windows, and the definition of the last recoverable root.
For [/fees](/fees), this means a cheap route should not only say it has lower gas. It should be clear whether the cost reduction comes from cheaper execution, deeper liquidity, or a stronger offchain data assumption. For stablecoin paths such as [/swap/usdt-erc20](/swap/usdt-erc20) and [/assets/usdc](/assets/usdc), large orders need stricter distinction between Rollup-grade data availability and DAC-based recovery.
The backend state model should also be finer than `pending` and `failed`. Useful states include `dacHealthy`, `dacDelayed`, `witnessUnavailable`, `fallbackMode`, `refundAvailable`, and `exitProofRequired`. When a path enters degraded data availability, the route engine should reduce limits or pause new orders before users inherit an unrecoverable state.
AllSwap can model data availability as a capability object rather than a marketing label. A `daProfile` can include data posting location, DAC threshold, member count, recent response window, independent archival availability, self-service witness downloads, Rollup fallback rules, and withdraw-only mode. Users do not need to read all of that, but the route engine can translate it into quote limits, risk-adjusted pricing, and recovery instructions.
Monitoring has to be executable. If several consecutive batches lack external archival confirmation, route limits should fall automatically. If DAC response time crosses a threshold, instant-refund promises should be disabled. If witness download failures rise, large orders should avoid that path. If fallback is active, the UI should show only provable recovery actions. Otherwise monitoring becomes a dashboard that does not protect the transaction.
The same logic applies to limits. A Validium path can be perfectly acceptable for small, fast transfers while being inappropriate for large swaps that depend on independent recovery. The route engine can apply tiered policy: low value orders use normal quoting while DAC health is green; medium orders require stronger confirmation and lower slippage tolerance; large orders require Rollup-grade data availability, independent archival confirmation, or explicit user acceptance of the recovery assumption. This is not a marketing distinction. It is an asset-safety boundary. If the boundary is invisible, the quote is incomplete.
Open problems
The first open problem is DAC independence. Member count does not equal independent fault domains. Shared infrastructure, legal jurisdiction, key custody, or operators can make correlated failure much more likely than the threshold suggests.
The second problem is the gap between storage proofs and data service. A committee member can prove it stores data, but users still need reliable download, verification, caching, and witness construction.
The third problem is the time gap between penalty and recovery. Slashing a DAC member later does not help a user whose cross-chain refund is blocked now. Deterrence is not the same as availability.
The fourth problem is labeling. Validium, Volition, Rollup, external DA, and committee DA need a machine-readable `daCapabilities` format. Aggregators should not infer recovery rules from prose documentation.
The fifth problem is solver exposure. A solver may be comfortable prefunding a Rollup path but not a Validium path with degraded DAC health. Routing needs to reflect that difference in quote, limit, and failure state instead of treating all ZK routes as equivalent.
References
[1] Validium, Ethereum.org, 2026, https://ethereum.org/en/developers/docs/scaling/validium/
[2] Data Availability, Ethereum.org, 2026, https://ethereum.org/en/developers/docs/data-availability/
[3] StarkEx Data Availability, StarkWare Docs, 2026, https://docs.starkware.co/starkex/con_data_availability.html
[4] StarkEx Validium and Data Availability Committee, StarkWare Docs, 2026, https://docs.starkware.co/starkex/overview.html
[5] L2BEAT Scaling Summary and Risk Framework, L2BEAT, 2026, https://l2beat.com/scaling/summary
[6] Rollup, Validium, Volition: Where is Your Data Stored?, StarkWare, 2023, https://starkware.co/blog/rollup-validium-volition-where-is-your-data-stored/
[7] Rollups, Validiums, and Disconnected Exits, Vitalik Buterin, 2021, https://vitalik.eth.limo/general/2021/01/05/rollup.html
[8] Polygon CDK Validium Documentation, Polygon, 2026, https://docs.polygon.technology/cdk/concepts/validium/
[9] Celestia Data Availability, Celestia Docs, 2026, https://docs.celestia.org/learn/celestia-101/data-availability/
[10] EigenDA Overview, Layr Labs, 2026, https://layr-labs.github.io/eigenda/
FAQ
What is the biggest difference between Validium and Rollup security?
Both can use ZK proofs for validity, but Rollups publish enough data for external state reconstruction. Validium relies on a DAC or offchain data service, so exits depend on whether users can recover the needed witness.
Does a DAC signature prove that data will always be available?
No. A DAC signature usually proves that enough members attested to a data commitment. It is not the full data, and it does not guarantee that users can download witnesses during an outage.
Why does data withholding affect cross-chain refunds?
Refunds or escape paths often require an account leaf, Merkle path, nonce, or UTXO opening. If the DAC withholds data, users may be unable to generate a proof even when the L1 contract supports exits.
Can Validium simply fall back to Rollup mode during an incident?
Fallback can protect future batches by posting data onchain, but it cannot automatically restore historical Validium data that is already unavailable. The protocol must define the last recoverable root and exit rules.
Why should AllSwap routing distinguish Validium and Rollup paths?
They may both be fast and cheap during normal operation, but their failure recovery differs. Route scoring should price DAC threshold, witness recovery, refund path, and exit uncertainty.


