Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
verifier_instance.hpp
Go to the documentation of this file.
1// === AUDIT STATUS ===
2// internal: { status: Planned, auditors: [], commit: }
3// external_1: { status: not started, auditors: [], commit: }
4// external_2: { status: not started, auditors: [], commit: }
5// =====================
6
7#pragma once
12
13namespace bb {
20template <typename Flavor_> class VerifierInstance_ {
21 public:
22 using Flavor = Flavor_;
23 using FF = typename Flavor::FF;
27 using WitnessCommitments = typename Flavor::WitnessCommitments;
28 using SubrelationSeparator = typename Flavor::SubrelationSeparator;
30 using VKAndHash = typename Flavor::VKAndHash;
31
32 std::shared_ptr<VKAndHash> vk_and_hash;
33
34 std::vector<FF> public_inputs; // to be extracted from the corresponding proof
35
36 SubrelationSeparator alpha; // a challenge whose powers are used to batch subrelation contributions during Sumcheck
38 std::vector<FF> gate_challenges;
39
41
42 // For ZK flavors: store Gemini masking polynomial commitment
44
45 explicit VerifierInstance_(std::shared_ptr<VKAndHash> vk_and_hash)
47 {}
48
53 std::shared_ptr<VerificationKey> get_vk() const { return vk_and_hash->vk; }
54};
55
56} // namespace bb
The verification key is responsible for storing the commitments to the precomputed (non-witnessk) pol...
bb::VerifierCommitmentKey< Curve > VerifierCommitmentKey
typename Curve::ScalarField FF
typename G1::affine_element Commitment
BaseTranscript< Codec, HashFunction > Transcript
The VerifierInstance encapsulates all the necessary information for a Honk Verifier to verify a proof...
typename Flavor::WitnessCommitments WitnessCommitments
std::vector< FF > public_inputs
std::vector< FF > gate_challenges
typename Flavor::FF FF
WitnessCommitments witness_commitments
typename Flavor::VKAndHash VKAndHash
std::shared_ptr< VerificationKey > get_vk() const
Get the verification key.
typename Flavor::Transcript Transcript
typename Flavor::Commitment Commitment
typename Flavor::VerifierCommitmentKey VerifierCommitmentKey
SubrelationSeparator alpha
RelationParameters< FF > relation_parameters
std::shared_ptr< VKAndHash > vk_and_hash
VerifierInstance_(std::shared_ptr< VKAndHash > vk_and_hash)
typename Flavor::VerificationKey VerificationKey
typename Flavor::SubrelationSeparator SubrelationSeparator
Base class templates for structures that contain data parameterized by the fundamental polynomials of...
Entry point for Barretenberg command-line interface.
Definition api.hpp:5
This file contains part of the logic for the Origin Tag mechanism that tracks the use of in-circuit p...
Container for parameters used by the grand product (permutation, lookup) Honk relations.