Awesome PLONK
Papers
- PLONK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge
- Proposal: The Turbo-PLONK program syntax for specifying SNARK programs
- plookup: A simplified polynomial protocol for lookup tables
- fflonK: a Fast-Fourier inspired verifier efficient version of PlonK
- extends KZG10 commitment scheme and allows for multiple polynomials to be represented by a single commitment
- requiring 6 scalar multiplications and 2 bilinear pairings
- verifier efficient
- saves gas on Ethereum
- at the cost of roughly tripling the prover time
- Public inputs in PlonKโs permutation argument
- SHPLONK
- REDSHIFT: Transparent SNARKs from List Polynomial Commitment IOPs
- Reinforced Concrete: A new ZK friendly hash function. When Plookup is enabled, it can be up to 17x faster than Poseidon (50 cycles/byte), and only 7 times slower than Blake2.
Forums
Articles
- Understanding PLONK by Vitalik Buterin
- Plonk tutorial by barryWhiteHat
- metastate's plonk-by-hand series ([1], [2], [3])
- plonk-by-fingers is a toy implementation in rust
- Multiset checks in PLONK and Plookup by Ariel Gabizon
- Plonk and PLookup by Dmitry Khovratovich
- PLONK custom gates design considerations by Kobi Gurkan
- Thoughts on Plookup implementation of Sha256 and Keccak by Konstantce
- Plonk and Poseidon (Plonk adaptation tailored to Poseidon) by Dmitry Khovratovich
- Non-native field arithmetic using custom gates
- Fast recursive arguments based on Plonk and Halo
- Adding zero knowledge to Plonk-Halo
- UltraPLONK Arithmetization in Halo 2
- TurboPLONK benchmarks
- AZTEC Ignition (setup codes here, verification codes here)
Podcasts / Videos
- Zero Knowledge Episode 112: Dive into Plonk!
- ZK Study Club - Plonk with Zac Williamson
- Zac Williamson on PLONK and TurboPLONK at ZKSummit
- zkSummit5: PLONK without FFTs - Justin Drake (EF)
- zkSummit: plookup: Speeding up the PLONK prover - Zac Williamson & Ariel Gabizon (with Turbo PLONK & Ultra PLONK benchmarks)
- ZK-LDN 0x04: On Marlin and PLONK
- Aztec: Plonk in Dystopian Times
- Polynomial protocols for range proofs
- How does PLONK work? ([1], [2])