⚡ Proof Generation: Groth16 & PLONK
Discover how provers generate succinct validity proofs
Your Progress
0 / 5 completedProof Generation
**Proof generation** is where the magic happens—the prover takes private transaction data, executes the circuit, and creates a succinct cryptographic proof that all computations were correct. This proof can be verified in constant time (~300k gas) regardless of batch size, enabling massive scalability.
The process involves witness generation (computing wire values), polynomial commitments (binding to the witness), and proof construction (using FFTs and elliptic curve operations). Modern provers can generate proofs for 1000+ transactions in seconds.
Interactive: Proof Generation Pipeline
Watch the four stages of ZK proof generation for a rollup batch.
Witness Generation
~250msCompute all wire values by executing the circuit with private inputs
Polynomial Commitment
~1000msCommit to witness polynomial and compute constraint evaluations
Proof Construction
~2000msGenerate the ZK proof using the proving algorithm (Groth16/PLONK)
Verification
~300k gas (constant)Verifier checks proof on-chain in constant time
Performance Analysis
Adjust batch size to see how it affects proving time, cost per transaction, and throughput.
Analysis
⚡ Proving Optimizations
Production Proving Infrastructure
Hardware Requirements
Proving as a Service
Proof Verification on Ethereum
The verifier contract on Ethereum L1 performs **pairing checks** using precompiled contracts (bn256Add, bn256Mul, bn256Pairing). Verification is constant time regardless of batch size—always ~300k gas.