Skip to content

Instantly share code, notes, and snippets.

@brendan-mccaffrey
Created July 22, 2023 21:57
Show Gist options
  • Save brendan-mccaffrey/4bb7b13a3a4c0ac241e42486e3bc7a45 to your computer and use it in GitHub Desktop.
Save brendan-mccaffrey/4bb7b13a3a4c0ac241e42486e3bc7a45 to your computer and use it in GitHub Desktop.
Summary: Ethereum Foundation Mission (RFP) – OP Stack Zero Knowledge Proof

Optimism x Zero Knowledge

Executive Summary

Optimism made a proposal (Ethereum Foundation RFP) to add ZK-proofs to their native stack. Specifically, "Implement a zero knowledge proof which can prove Optimism’s fault proof program through an instruction set architecture supported by the golang compiler."

Goal: Enable secure and efficient cross-chain/rollup communication.

They offered a baseline grant of 250k OP and were accepting multiple proposals.

Outcome: Many people submitted proposals, and there were two winners: O(1) Labs and RiscZero

Announcements

Summary: Ethereum Foundation Mission (RFP) – OP Stack Zero Knowledge Proof

Link

Overview

  • Foundation Mission (RFP): Implement a zero knowledge proof which can prove Optimism’s fault proof program through an instruction set architecture supported by the golang compiler.
  • Proposal Tier: Fledgling
  • Baseline grant amount: 250k OP
  • Accepting one or multiple proposals: Multiple
  • OP Labs or Optimism Foundation Sponsor: Kelvin (@smartcontracts)
  • Submit by: June 28th at 19:00 GMT
  • Selection by: July 13th at 19:00 GMT

Solution Criteria

  1. Performance — What is the compute cost to generate and verify the proof?
  2. Latency — How long does the proof take to generate?
  3. Complexity — How many lines of code is the prover / verifier?
  4. Robustness — How confident are we that there are no bugs?
  5. Security — What are the assumptions the system relies on for its security guarantees? (e.g. trusted setup)
  6. OP Stack Compatibility — Are there fundamental changes required to the OP Stack?
    • Note 1: It may be the case that small changes to the OP Stack are required to achieve an acceptable performance benchmark. One example of this includes introducing a ZKP-friendly batch submission accumulator to reduce the cost of proving transaction inclusion in the OP Chain. However, the fewer changes the better.
    • Note 2: The current OP Stack state transition function is defined in the fault proof program. Changes are evaluated with respect to this state transition function.

Related

Trade

Spread Long OP/ARB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment