Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
verifier.hpp
Go to the documentation of this file.
1// === AUDIT STATUS ===
2// internal: { status: Completed, auditors: [Federico], commit: 0e37cb8}
3// external_1: { status: not started, auditors: [], commit: }
4// external_2: { status: not started, auditors: [], commit: }
5// =====================
6#pragma once
7
10
11namespace bb::avm2 {
12
14 public:
16 using FF = Flavor::FF;
21
22 AvmVerifier() = default;
23 AvmVerifier(AvmVerifier&& other) noexcept;
24 AvmVerifier(const AvmVerifier& other) = delete;
25 virtual ~AvmVerifier() = default;
26
27 AvmVerifier& operator=(const AvmVerifier& other) = delete;
28 AvmVerifier& operator=(AvmVerifier&& other) noexcept;
29
30 bool verify_proof(const HonkProof& proof, const std::vector<std::vector<FF>>& public_inputs);
31
32 std::shared_ptr<VerificationKey> key = std::make_shared<VerificationKey>();
33 std::shared_ptr<Transcript> transcript = std::make_shared<Transcript>();
34
35 private:
36 static FF evaluate_public_input_column(const std::vector<FF>& points, const std::vector<FF>& challenges);
37};
38
39} // namespace bb::avm2
Simple verification key class for fixed-size circuits (ECCVM, Translator, AVM).
Definition flavor.hpp:101
Representation of the Grumpkin Verifier Commitment Key inside a bn254 circuit.
AvmFlavorSettings::FF FF
Definition flavor.hpp:43
FixedVKAndHash_< PrecomputedEntities< Commitment >, FF, typename constraining::AvmHardCodedVKAndHash > VerificationKey
Verification key of the AVM. It is fixed and reconstructed from precomputed values.
Definition flavor.hpp:226
AvmFlavorSettings::VerifierCommitmentKey VerifierCommitmentKey
Definition flavor.hpp:50
AvmFlavorSettings::Commitment Commitment
Definition flavor.hpp:47
std::shared_ptr< Transcript > transcript
Definition verifier.hpp:33
AvmVerifier & operator=(const AvmVerifier &other)=delete
static FF evaluate_public_input_column(const std::vector< FF > &points, const std::vector< FF > &challenges)
Evaluate the given public input column over the multivariate challenge points.
Definition verifier.cpp:41
AvmVerifier(const AvmVerifier &other)=delete
std::shared_ptr< VerificationKey > key
Definition verifier.hpp:32
bool verify_proof(const HonkProof &proof, const std::vector< std::vector< FF > > &public_inputs)
Verify an AVM proof.
Definition verifier.cpp:52
Flavor::Commitment Commitment
Definition verifier.hpp:17
virtual ~AvmVerifier()=default
std::vector< fr > HonkProof
Definition proof.hpp:15
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13