Proving Solana: ZK Integration at the eBPF Level
summary
Builds a ZK path for Solana by proving the eBPF interpreter rather than rewriting contracts, using SP1 as the ZKVM and running a forked Agave single-threaded inside it. Removes non-determinism (randomness/time), disables filesystem and threading, and fixes 32v64 bit-depth memory mismatches with new slice/account structs upstreamed to Agave. Initial benchmark proves 100 heavy SPL transactions in ~2300s costing $5.32; optimizations lower work to ~240s by reducing cycle count to 3 billion cycles and batching setup.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 0:28Why prove SVM transactions
- 3:35Why ZK SVM
- 4:38ZK SVM Issues
- 6:59Threading and File System Access
- 8:38Bit Depth Issues
- 10:11New Structs
- 11:42Cost Savings
- 14:11Upstream Changes
- 15:11Collaborators
related talks
21mFireside Chat
05mRISC Zero: Boundless Execution on Solana
22mBoundless
16mSVM: The Power of Solana Beyond the Blockchain
24mWhat’s in a VM? The Execution Engines Powering Web3’s Future
31meBPF and Wasm: Unifying Userspace Extensions With Bpftime
09mEvent Opening and Welcome
15mzkEVM Technical Updates and Mainnet Beta Launch
