Expand description
The ceremony circuits’ UltraHonk verifiers: which circuit each platform proves under, and the deploy of a circuit’s verifier.
A Honk verifier is not written in this repository. bb derives it from a
circuit’s verification key, libid-circuits runs bb and ships the
Solidity in its release tarballs, and scripts/vendor-circuit-verifiers.sh
downloads the pinned release — checked against digests committed in
solidity/contracts/circuits/circuits.json — formats it and writes it
under solidity/contracts/circuits, gitignored and vendored again before
every build. From there forge build compiles it, on the legacy
pipeline solidity/foundry.toml sets for these files, and
scripts/vendor-artifacts.sh embeds it, so a consumer deploys it from
Artifacts::embedded with no bb.
The verifier is bb’s optimized template: one contract, deployed in one
transaction by deploy_honk_verifier. Its address is what a
platform_verifier::Initializer
pins, beside the code hash it reads off the chain.
Enums§
- Circuit
- One ceremony circuit, and so one vendored Honk verifier.
Functions§
- deploy_
honk_ verifier - Deploy
circuit’s Honk verifier and return its address, which a Platform Verifier initializer takes ashonk_verifier. - version
- The
libid-circuitsrelease the vendored verifiers came from, read from the pinscripts/vendor-artifacts.shcopies in ascircuits.json.