Safe Rollup gives institutions the credibility of Ethereum and the control of a database. Every batch is anchored to Ethereum. Everything else stays with you.
This is a parody. It runs on Sepolia with test ETH and is not intended for any other use.
Settlement is secured by a distributed set of independent keys. All three are co-located for low-latency vetoes.
Zero-knowledge rollups keep the proof and skip the zero knowledge2: their proofs show Ethereum that a batch was executed correctly, and the data is public anyway. Zero Proofs™ keep the zero and skip the proof. No circuits, no provers, no verifier contract, no gas. The fastest proof system ever deployed on Ethereum.
| Leading zkVMs | RecommendedZero Proofs™ | |
|---|---|---|
| Performance | ||
| Proving throughput | ✕Up to 21.8 MHz on one H1003 | ✓Unbounded, on no hardware |
| Proof time per block | ✕About 10 to 35s | ✓0s |
| Blocks proven within 10s | !95% to 99.99%45 | ✓100% |
| Cost per block | ✕Fractions of a cent | ✓$0 |
| Verification | ||
| Proof size | ✕Hundreds of bytes or more | ✓0 bytes |
| Quantum resistance | !Depends on the system | ✓Complete: no cryptography to break |
| Security | ||
| Completeness | !Every valid block is accepted | ✓Every block is accepted |
| Soundness | ✕Cryptographic | ✓Organizational |
| Security level | ✕100 to 128 bits | ✓2 of 3 |
Benchmarks measured on operator infrastructure.
Zero Proofs™ replace the OP Stack proof system, its dispute games and its settlement contracts, removing 251,849 lines of code. Research shows that the number of defects in software grows with its size6, and delivered code averages 15 to 50 defects per 1,000 lines7. Zero Proofs™ remove an estimated 3,778 to 12,592 bugs.
Every feature below ships enabled by default. None of them can be turned off by users.
hacked from cross-chain bridges to date, $753 million of it this year8
Bridges are the most attacked contracts in crypto. Ronin lost $624 million9. In April, a forged cross-chain message drained $292 million from Kelp's rsETH bridge10.
Safe Rollup has no bridge contract. Deposits go directly into a Safe. The Safe contracts secure $27 billion11, have been audited six times and formally verified12, and have never been exploited.
Transaction data never leaves operator infrastructure. Ethereum receives a 32-byte commitment per batch.
Anyone can rebuild the chain from Ethereum and the batch data. The batch data is held by the operator.
The Safe's balance is public on Ethereum at all times. Proof of a depositor's right to withdraw it is available on request.
Transaction ordering is set by the operator, so no external party can extract value from it.
Any signer threshold, from 1 of 1 to n of n. Security is a deployment parameter.
Exactly one counterparty, with a public address.
Bridged assets sit in a Safe, and a Safe can stake, lend or invest them in a single transaction. The yield accrues to the Safe and every loss is allocated to depositors, which makes the yield risk-free.
Native Yield works “without altering the withdrawal or custody guarantees of the bridge”13. We checked: there were none to alter.
Institutions should ask “where does control sit, and who holds it”14. On Safe Rollup, control sits in one Safe and two of three signers hold it. We built the compliance layer first, and stopped there.
| ✓Freezing | The Safe vetoes an account's withdrawals. |
| ✓Clawback | From any L2 account, without its owner's signature. |
| ✓Court-ordered seizure | Two of three signatures. No court required. |
| ✓Allowlists and blocklists | The veto. |
| ✓Regulator access | Read access through our RPC, like everyone else. |
Each one is a deposit the Safe made in the account's name, which L2 runs without the account's signature. HashKey Chain's admin used the same function to move 142,818 USDT out of a user's account15.
“A compliance control that hasn't been through rigorous smart contract audits is a liability wearing the shape of a safeguard”14
Live from Sepolia. Each finding is a Safe transaction with its reason written into it.
Safe Rollup keeps the admin Safe of a Stage 0 OP Stack chain and replaces the 29 contracts below it with two. Your users keep every guarantee they have today.
The contracts a Stage 0 OP Stack chain with permissioned proofs deploys or depends on, at upstream develop (e45aad88). Lines are non-blank, non-comment Solidity in the contracts and the OP Stack libraries they import. OpenZeppelin, Solady and Safe code is not counted on either side.
| Stage 0 rollup | RecommendedSafe Rollup | |
|---|---|---|
| What users can do if the operator misbehaves | ✕Nothing | ✓Nothing |
| Who can move the bridged funds | !The admin multisig, through an upgrade | ✓The multisig, directly |
| Forced withdrawals | !Available until the admin upgrades the bridge | ✓Not available |
| L1 contracts | ✕29 contracts including 11 proxies, 9,555 lines | ✓A Safe and 2 contracts, 199 lines, no proxies |
| Data availability | ✕Ethereum | ✓Operator infrastructure |
| Rehypothecation | !Requires a bridge upgrade | ✓Built in |
| Withdrawal time | ✕Hours to days | ✓… |
Stage 0 and Stage 1 rollups can migrate without changing their chain ID or balances, and remove 88% of the code.
Safe Rollup has completed a self-assessment of its settlement controls against the Safe threshold criteria. Every payout is checked by an independent verifier node that derives the chain from Ethereum and the batch data. We run it.
“We have honored every withdrawal we chose to honor.”
Live data from Sepolia and our nodes.
| RPC | |
| Chain ID | |
| Explorer |
For users, it isn't. In both, the operator's multisig has the final say over user funds. Safe Rollup is the same arrangement without the code in between.
A proof system with no prover and no verifier: a batch is accepted when it is posted. It is also what any rollup's proof system becomes once an admin can replace the verifier without delay.
The reason is onchain, in the Safe transaction that vetoed it, as final as the veto itself. The compliance policy reviews every valid withdrawal and vetoes about one in three, for reasons such as unusual activity (the account attempted a withdrawal), source of funds (the assets originated on Ethereum) and proof of reserves (the payout would reduce reserves).
No. On a Stage 0 rollup you can, unless the admin upgrades the bridge first.
Whoever the operator allows. Today that is anyone using our RPC or our explorer. The batch data behind them stays with the operator.
Safe as in Safe multisig. Your assets sit in a Safe, and its owners can veto any payout. Whether that makes your funds safe depends on who holds the keys, which is also true of every Stage 0 rollup.
It is available on request.
To show how much of a rollup stack exists to constrain the operator, and how little remains when the operator is not constrained. The L1 side became a Safe and 199 lines of code. The OP Stack fork went from 633,212 lines to 72,562.
No. This is a parody. It runs on Sepolia with test ETH and is not intended for any other use.
No. This project is not affiliated with, sponsored or endorsed by the Safe Ecosystem Foundation. It uses the unmodified Safe contracts because they are good at being a multisig.