Crate zkplonk

Source
Expand description
GitHub issues GitHub

Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge (PLONK) is a zero knowledge proof system.

This protocol was created by:

  • Ariel Gabizon (Protocol Labs),
  • Zachary J. Williamson (Aztec Protocol)
  • Oana Ciobotaru

This crate contains a pure-rust implementation done by the DuskNetwork team of this algorithm using as a reference implementation this one done by the creators of the protocol:

https://github.com/AztecProtocol/barretenberg/blob/master/barretenberg/src/aztec/plonk/

Modules§

commitment_scheme
Ideally we should cleanly abstract away the polynomial commitment scheme We note that PLONK makes use of the linearization technique conceived in SONIC [Mary Maller].
gadget
The constraint System module stores the implementation of the PLONK Standard Composer, as well as the circuit tools and abstractions, used by the Composer to generate, build, preprocess circuits.
notes
This module is a self contained file which explains how PLONK and its protocol components work in our library.
prelude
Collection of functions needed to use plonk library.

Structs§

Plonk
Construct and prove circuits
PlonkKey
Generate the arguments to prove and verify a circuit
Prover
Turbo Prover with processed keys
Verifier
Verify proofs of a given circuit