What an optimistic rollup is, and why EDMA is one
Rollups scale Ethereum by moving execution off the main chain and posting compressed transaction data back to Ethereum so anyone can verify it. There are two main types. Optimistic rollups assume transactions are valid by default and give people a window to challenge them with a fraud proof. Zero-knowledge (ZK) rollups submit cryptographic validity proofs with every batch.
EDMA is an optimistic rollup, built on the OP Stack. Specifically, the OP Stack is the open-source software that powers Optimism, Base, and several other L2s. EDMA is a fork of that stack with PoV enforcement built into the genesis contracts.
Why optimistic and not ZK? Three reasons. First, ZK proving systems for general EVM computation are still maturing, slower, and much more expensive to run at the throughput EDMA needs for trade settlement. Second, the OP Stack is the most battle-tested L2 architecture in production, with billions of dollars in TVL and years of operational history across Optimism, Base, and Worldcoin. Third, EDMA's trust model does not depend on the rollup being ZK. The real guarantee comes from the PoV brake at the contract layer, not from the proof system at the rollup layer. An optimistic rollup with PoV is structurally safer for RWA settlement than a generic ZK rollup without PoV.
How the rollup actually works
- 01
Execute on L2
Users submit transactions to the EDMA sequencer. The sequencer orders them and produces L2 blocks every ~2 seconds. Application receipts (EMT mints, EDSD releases, fee burns) are emitted immediately. From the user's perspective, the operation is done in seconds. Internally, this is provisional state.
- 02
Batch to Ethereum as EIP-4844 blobs
Every 2 to 10 minutes (or sooner under load), the sequencer bundles a batch of L2 blocks into an EIP-4844 blob and posts it to Ethereum, together with a new state root commitment. Blobs are an Ethereum data type designed specifically for rollups: cheap, ephemeral (pruned after ~18 days), and publicly available long enough for any verifier to reconstruct the L2 state. State roots are permanent on L1.
- 03
7-day challenge window
Once a state root is posted, a 7-day window opens. During this window, anyone can re-execute the batch from the blob data and, if they find an invalid transition, submit a fraud proof to Ethereum to dispute it. If the dispute succeeds, the bad state root is rolled back and the dishonest sequencer is slashed. This is the 'optimistic' part: the state is assumed valid unless successfully challenged.
- 04
Finalize on L1
After the challenge window closes without successful disputes, the state root is finalized on Ethereum. Withdrawals to L1 (bridges, exits) can clear from this point. Day-to-day EDMA operations don't wait for L1 finality; they run on L2 receipts within seconds. The 7-day delay only matters when you're moving funds back to Ethereum mainnet.




