Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::ProtogalaxyVerifier_< DeciderVerificationKeys > Class Template Reference

#include <protogalaxy_verifier.hpp>

Public Types

using Flavor = typename DeciderVerificationKeys::Flavor
 
using Transcript = typename Flavor::Transcript
 
using FF = typename Flavor::FF
 
using Commitment = typename Flavor::Commitment
 
using DeciderVK = typename DeciderVerificationKeys::DeciderVK
 
using VerificationKey = typename Flavor::VerificationKey
 
using WitnessCommitments = typename Flavor::WitnessCommitments
 
using CommitmentLabels = typename Flavor::CommitmentLabels
 
using SubrelationSeparators = typename Flavor::SubrelationSeparators
 

Public Member Functions

 ProtogalaxyVerifier_ (const std::vector< std::shared_ptr< DeciderVK > > &keys, const std::shared_ptr< Transcript > &transcript)
 
 ~ProtogalaxyVerifier_ ()=default
 
void run_oink_verifier_on_each_incomplete_key (const std::vector< FF > &)
 Instatiate the vks and the transcript.
 
std::shared_ptr< DeciderVKverify_folding_proof (const std::vector< FF > &)
 Run the folding protocol on the verifier side to establish whether the public data ϕ of the new accumulator, received from the prover is the same as that produced by the verifier.
 

Public Attributes

DeciderVerificationKeys keys_to_fold
 
std::shared_ptr< Transcripttranscript = std::make_shared<Transcript>()
 

Static Public Attributes

static constexpr size_t NUM_SUBRELATIONS = Flavor::NUM_SUBRELATIONS
 

Detailed Description

template<class DeciderVerificationKeys>
class bb::ProtogalaxyVerifier_< DeciderVerificationKeys >

Definition at line 15 of file protogalaxy_verifier.hpp.

Member Typedef Documentation

◆ Commitment

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::Commitment = typename Flavor::Commitment

Definition at line 20 of file protogalaxy_verifier.hpp.

◆ CommitmentLabels

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::CommitmentLabels = typename Flavor::CommitmentLabels

Definition at line 24 of file protogalaxy_verifier.hpp.

◆ DeciderVK

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::DeciderVK = typename DeciderVerificationKeys::DeciderVK

Definition at line 21 of file protogalaxy_verifier.hpp.

◆ FF

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::FF = typename Flavor::FF

Definition at line 19 of file protogalaxy_verifier.hpp.

◆ Flavor

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::Flavor = typename DeciderVerificationKeys::Flavor

Definition at line 17 of file protogalaxy_verifier.hpp.

◆ SubrelationSeparators

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::SubrelationSeparators = typename Flavor::SubrelationSeparators

Definition at line 25 of file protogalaxy_verifier.hpp.

◆ Transcript

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::Transcript = typename Flavor::Transcript

Definition at line 18 of file protogalaxy_verifier.hpp.

◆ VerificationKey

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::VerificationKey = typename Flavor::VerificationKey

Definition at line 22 of file protogalaxy_verifier.hpp.

◆ WitnessCommitments

template<class DeciderVerificationKeys >
using bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::WitnessCommitments = typename Flavor::WitnessCommitments

Definition at line 23 of file protogalaxy_verifier.hpp.

Constructor & Destructor Documentation

◆ ProtogalaxyVerifier_()

template<class DeciderVerificationKeys >
bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::ProtogalaxyVerifier_ ( const std::vector< std::shared_ptr< DeciderVK > > &  keys,
const std::shared_ptr< Transcript > &  transcript 
)
inline

Definition at line 33 of file protogalaxy_verifier.hpp.

◆ ~ProtogalaxyVerifier_()

template<class DeciderVerificationKeys >
bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::~ProtogalaxyVerifier_ ( )
default

Member Function Documentation

◆ run_oink_verifier_on_each_incomplete_key()

template<class DeciderVerificationKeys >
void bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::run_oink_verifier_on_each_incomplete_key ( const std::vector< FF > &  proof)

Instatiate the vks and the transcript.

Parameters
fold_dataThe data transmitted via the transcript by the prover.

Definition at line 16 of file protogalaxy_verifier.cpp.

◆ verify_folding_proof()

template<class DeciderVerificationKeys >
std::shared_ptr< typename DeciderVerificationKeys::DeciderVK > bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::verify_folding_proof ( const std::vector< FF > &  proof)

Run the folding protocol on the verifier side to establish whether the public data ϕ of the new accumulator, received from the prover is the same as that produced by the verifier.

Definition at line 69 of file protogalaxy_verifier.cpp.

Member Data Documentation

◆ keys_to_fold

template<class DeciderVerificationKeys >
DeciderVerificationKeys bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::keys_to_fold

Definition at line 29 of file protogalaxy_verifier.hpp.

◆ NUM_SUBRELATIONS

template<class DeciderVerificationKeys >
constexpr size_t bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::NUM_SUBRELATIONS = Flavor::NUM_SUBRELATIONS
staticconstexpr

Definition at line 27 of file protogalaxy_verifier.hpp.

◆ transcript

template<class DeciderVerificationKeys >
std::shared_ptr<Transcript> bb::ProtogalaxyVerifier_< DeciderVerificationKeys >::transcript = std::make_shared<Transcript>()

Definition at line 31 of file protogalaxy_verifier.hpp.


The documentation for this class was generated from the following files: