#cryptography #zero-knowledge #circuits #arithmetic-circuits

mcircuit

A library of tools for working with arithmetic circuits on generic fields

11 releases

0.1.10 Mar 3, 2022
0.1.9 Dec 3, 2021
0.1.8 Oct 25, 2021
0.1.7 Jul 30, 2021

#275 in Cryptography

Download history 21/week @ 2022-06-15 23/week @ 2022-06-22 22/week @ 2022-06-29 32/week @ 2022-07-06 44/week @ 2022-07-13 32/week @ 2022-07-20 45/week @ 2022-07-27 33/week @ 2022-08-03 21/week @ 2022-08-10 22/week @ 2022-08-17 32/week @ 2022-08-24 22/week @ 2022-08-31 48/week @ 2022-09-07 32/week @ 2022-09-14 16/week @ 2022-09-21 20/week @ 2022-09-28

120 downloads per month

AGPL-3.0

98KB
2K SLoC

mcircuit

A library of types for working with boolean & arithmetic circuits

View on docs.rs

Features

  • : Circuit type
  • : I/O extraction
  • : Translations
  • : Plaintext Evaluation
  • : Import/Export

lib.rs:

MCircuit (pronounced mc-urkit) provides a series of types and traits for working with circuits. Specifically, arithmetic circuits on GF2 and Z64, the former of which are effectively boolean circuits. It is used by Reverie.

MCircuit includes:

  • A circuit parsing library for BLIF files
  • Code for evaluating circuits in its gate format
  • Traits for constructing, translating, and iterating over gates
  • Code to export circuits in the Bristol Fashion format

Dependencies

~1.5–2.3MB
~50K SLoC