Skip to main content

Ultraplonk Verifier

settlementUltraplonkPallet

Statement hash components

  • context: keccak256(b"ultraplonk")
  • vk: keccak256(vk.encode())
  • pubs: keccak256(pubs)

Verifier implementation

This pallet implements a verifier for UltraPlonk proofs generated with barretenberg library. This library is part of the Aztec Protocol's suite of cryptographic tools. The Noir compiler generates UltraPlonk zk-SNARK proofs using the barretenberg library as the backend. To generate proofs from Noir code, the nargo tool is used.

warning

Starting from bbup v.0.87.0 Ultraplonk has been officially deprecated. To keep submitting Noir proofs via zkVerify, please switch to a previous bbup version(recommended 0.76.4). You can do this via the command: bbup -v <version>

  • verify_proof() uses the ultraplonk_verifier crate to verify proofs. The noir-cli tool can be used to transform the proving artifacts generated by barretenberg backend into the format compatible with this pallet.