ZK Rollup, 8-account Merkle state

Not deployed, and the addresses this page used to print were empty. Measured with eth_getCode at the chain head on 2026-08-01, both the rollup address and the verifier address shown here previously returned zero bytes. There is no contract at either one. The circuits, the browser prover and the contract source below are real work; the deployment is not done. The addresses have been removed so that nobody sends a transaction to an empty account on the strength of this page. Everything below describes the design.

Production-shape ZK rollup design. State would be a depth-3 Poseidon Merkle root over 8 account leaves. Each batch is a transfer (senderIdx → receiverIdx, amount); the L1 verifier checks a Groth16 proof of the full state transition: sender Merkle inclusion, sender deduction yields intermediate root, receiver Merkle inclusion against intermediate, receiver addition yields newRoot, plus solvency. No fraud window. Same pattern scales straightforwardly to depth-N.

Rollup status

AereZKRollup8not deployed on chain 2800 (measured 2026-08-01)
Verifiernot deployed on chain 2800 (measured 2026-08-01)
Tree depth3 (8 leaves), by design
State rootno contract to read
Batches submitted0, no contract to read

1 · Local balances (must match on-chain root)

Genesis: account 0 = 1000, all others 0. Update if you've replayed batches locally.

,

2 · Build a transfer

,

3 · Submit batch

,

Recent batches

,