From 1d4fb191ff7bfde45ef219adc3748bb82bce88ad Mon Sep 17 00:00:00 2001 From: Mitchell Tracy Date: Thu, 28 May 2026 09:19:23 -0400 Subject: [PATCH 1/2] AZIP-17: Optimized Rollup Verifier --- AZIPs/azip-17.md | 55 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 AZIPs/azip-17.md diff --git a/AZIPs/azip-17.md b/AZIPs/azip-17.md new file mode 100644 index 0000000..3e819c9 --- /dev/null +++ b/AZIPs/azip-17.md @@ -0,0 +1,55 @@ +# AZIP-17: Optimized Rollup Verifier + +## Preamble + +| `azip` | `title` | `description` | `author` | `discussions-to` | `status` | `category` | `created` | +| ------ | ------------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------- | ---------------- | -------- | ---------- | ---------- | +| 17 | Optimized Rollup Verifier | Switch the L1 root-rollup verifier to the hand-rolled inline-assembly UltraHonk verifier. | Mitchell Tracy (mitchell@aztec-labs.com) | - | Draft | Core | 2026-05-28 | + +## Abstract + +The L1 root-rollup verifier MUST be the inline-assembly UltraHonk Solidity verifier generated by `bb write_solidity_verifier --optimized`, replacing the high-level Solidity verifier previously used. The verified relation, the proof shape, and the verification key MUST be unchanged; only the on-chain implementation changes. + +## Impacted Stakeholders + +**Sequencers and Provers.** No proof-format change. Existing proofs verify identically against the new contract, just more cheaply. + +**Infrastructure Providers.** No change. + +**App Developers, Wallets, Token Bridges.** No change. + +## Motivation + +Root-rollup verification is expensive. Lowering verification gas directly reduces per-epoch sequencer cost and therefore user fees. + +## Specification + +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 and RFC 8174. + +The rollup verifier deployed by `DeployRollupLib._deployVerifier` MUST be the `HonkVerifier` produced from `barretenberg/sol/src/honk/optimised/honk-optimized.sol.template` with the root-rollup verification key injected at code-generation time. + +The verifier MUST implement the same UltraHonk verification as the non-optimized version. + + +## Rationale + +A hand-rolled assembly verifier is the smallest change that captures the full gas saving without altering the underlying proof system. +## Backwards Compatibility + +The verified relation, proof shape, and VK are unchanged, so existing proofs MUST verify against the new contract. The verifier contract address changes; any consumer pinning a verifier address MUST update. + +## Test Cases + +- Every existing rollup verifier test MUST pass against the new contract. + +## Reference Implementation + +Template: `barretenberg/sol/src/honk/optimised/honk-optimized.sol.template`. Generator: `bb write_solidity_verifier --scheme ultra_honk --disable_zk --optimized`. Rollup wiring: `noir-projects/noir-protocol-circuits/bootstrap.sh`, consumed by `l1-contracts/script/deploy/DeployRollupLib.sol`. + +## Security Considerations + +The optimized verifier MUST receive an external audit. + +## Copyright Waiver + +Copyright and related rights waived via [CC0](/LICENSE). From 3160544504f6e88569f45cf52d6e3d18bc1d6978 Mon Sep 17 00:00:00 2001 From: Koen Date: Fri, 5 Jun 2026 00:05:03 +1000 Subject: [PATCH 2/2] Update status of azip-17 to Accepted --- AZIPs/azip-17.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AZIPs/azip-17.md b/AZIPs/azip-17.md index 3e819c9..9533fa2 100644 --- a/AZIPs/azip-17.md +++ b/AZIPs/azip-17.md @@ -4,7 +4,7 @@ | `azip` | `title` | `description` | `author` | `discussions-to` | `status` | `category` | `created` | | ------ | ------------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------- | ---------------- | -------- | ---------- | ---------- | -| 17 | Optimized Rollup Verifier | Switch the L1 root-rollup verifier to the hand-rolled inline-assembly UltraHonk verifier. | Mitchell Tracy (mitchell@aztec-labs.com) | - | Draft | Core | 2026-05-28 | +| 17 | Optimized Rollup Verifier | Switch the L1 root-rollup verifier to the hand-rolled inline-assembly UltraHonk verifier. | Mitchell Tracy (mitchell@aztec-labs.com) | - | Draft | Accepted | 2026-05-28 | ## Abstract