Circuits
The circuits layer splits into two purposes. Authoring primitives — logic/ and compiler/ — give you a way to describe arithmetic circuits once in terms of field elements and have them either evaluated directly or compiled to a QuadCircuit the proof system can consume. Gadgets — sha/, ecdsa/, mac/ — are reusable, pre-built circuits that verify specific cryptographic operations; you compose them into your own circuit rather than re-deriving them.
How the pieces compose
Pages in this group
- Logic — gates, bit vectors, adders, comparators, routing, bit-pluckers, and the two backends. The foundation almost every other circuit builds on.
- Compiler — the
QuadCircuitbuilder, layer scheduler, and canonical circuit identity. - SHA-256 — in-circuit SHA-256 gadget.
- ECDSA — in-circuit ECDSA verification gadget.
- MAC — in-circuit MAC verification over GF(2^128).
Last updated on