plonk_gadgets

Crates.ioplonk_gadgets
lib.rsplonk_gadgets
version0.6.0
sourcesrc
created_at2021-02-12 16:57:01.500015
updated_at2021-07-05 20:24:54.171323
descriptionA collection of generic gadgets for the PLONK ZK-Proof algorithm
homepage
repositoryhttps://github.com/dusk-network/plonk_gadgets
max_upload_size
id354277
size57,030
Dusk Network (dusknetwork)

documentation

README

Plonk Gadgets

Build Status Repository Documentation

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.

Acknowledgements

  • Conditional selection gadgets and AllocatedScalar structure have been taken from the ZCash sapling circuits and translated to the Plonk Constraint System language.

Licensing

This code is licensed under Mozilla Public License Version 2.0 (MPL-2.0). Please see LICENSE for further info.

About

Implementation designed by the dusk team.

Contributing

  • If you want to contribute to this repository/project please, check CONTRIBUTING.md
  • If you want to report a bug or request a new feature addition, please open an issue on this repository.
Commit count: 130

cargo fmt