halo2
1.
Concepts
1.1.
Proof systems
1.2.
PLONKish Arithmetization
1.3.
Chips
1.4.
Gadgets
2.
User Documentation
2.1.
Developer tools
2.2.
A simple example
2.3.
Lookup tables
2.4.
Gadgets
2.5.
Tips and tricks
2.6.
WASM Guide
3.
Developer Documentation
3.1.
Feature development
4.
Design
4.1.
Proving system
4.1.1.
Lookup argument
4.1.2.
Permutation argument
4.1.3.
Circuit commitments
4.1.4.
Vanishing argument
4.1.5.
Multipoint opening argument
4.1.6.
Inner product argument
4.1.7.
Comparison to other work
4.2.
Protocol Description
4.3.
Implementation
4.3.1.
Proofs
4.3.2.
Fields
4.3.3.
Selector combining
4.4.
Gadgets
4.4.1.
Elliptic curve cryptography
4.4.1.1.
Witnessing points
4.4.1.2.
Incomplete and complete addition
4.4.1.3.
Fixed-base scalar multiplication
4.4.1.4.
Variable-base scalar multiplication
4.4.2.
Sinsemilla
4.4.2.1.
MerkleCRH
4.4.3.
Decomposition
4.4.4.
SHA-256
4.4.4.1.
16-bit table chip
5.
Background Material
5.1.
Fields
5.2.
Polynomials
5.3.
Cryptographic groups
5.4.
Elliptic curves
5.5.
Polynomial commitment using inner product argument
5.6.
Recursion
Light
Rust
Coal
Navy
Ayu
The halo2 Book
Implementation