Loading…
Loading…
From zero to zero-knowledge
A hands-on, from-first-principles introduction to zero-knowledge Succinct Non-interactive Arguments of Knowledge. You will build up the full machinery — finite fields, polynomials, elliptic curves, arithmetic circuits, R1CS, QAP, and Groth16 — with Rust and Arkworks exercises along the way.
Install rustup and Cargo, clone the companion labs repository, and run your first cargo build. Do this once before Module 1 if you want to code along.
Hash functions, finite fields & modular arithmetic, polynomials over finite fields, pseudo-random number generators, and elliptic curves.
Arithmetic circuits, R1CS, Schwartz–Zippel lemma, Quadratic Arithmetic Programs (QAP), knowledge-of-exponent, and encrypted arithmetic with pairings.
Trusted setup & SRS, zero-knowledge via randomization, the Groth16 pairing equation end-to-end in Rust, plus a bonus KZG polynomial commitment.