Crate plonk_gadgets

Crate plonk_gadgets 

Source
Expand description

§Plonk Gadgets

This library cointains the gadgets that the Dusk-Network protocol needs to build it’s ZK-Circuits. The library contains generic gadgets which are used across Dusk’s tech stack, all of the other gadgets used which depend on foreign types are placed on the libraries where this types are defined.

§WARNING

This implementation is not audited. Use under your own responsability.

§Content

This library provides:

  • Scalar gadgets: is_non-zero, maybe_equals, conditionally_select_one, conditionally_select_zero.
  • Range gadgets: range_check, max_bound.

Re-exports§

pub use crate::errors::Error;
pub use range as RangeGadgets;
pub use scalar as ScalarGadgets;

Modules§

errors
Gadget Errors Module.
range
Collection of range-checking gadgets.
scalar
Basic Scalar oriented gadgets collection.

Structs§

AllocatedScalar
An allocated scalar holds the underlying witness assignment for the Prover and a dummy value for the verifier XXX: This could possibly be added to the PLONK API