|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <flavor.hpp>
Public Member Functions | |
| Transcript ()=default | |
| void | deserialize_full_transcript () |
| void | serialize_full_transcript () |
Public Member Functions inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| BaseTranscript () | |
| std::vector< DataType > | export_proof () |
| Return the proof data starting at proof_start. | |
| void | load_proof (const std::vector< DataType > &proof) |
| size_t | size_proof_data () |
| Return the size of proof_data. | |
| void | enable_manifest () |
| Enables the manifest. | |
| template<typename ChallengeType , typename... Strings> | |
| std::array< ChallengeType, sizeof...(Strings)> | get_challenges (const Strings &... labels) |
| After all the prover messages have been sent, finalize the round by hashing all the data and then create the number of requested challenges. | |
| template<typename ChallengeType , typename String , std::size_t N> | |
| std::array< ChallengeType, N > | get_challenges (std::array< String, N > const &labels) |
| Wrapper around get_challenges to handle array of challenges. | |
| template<typename ChallengeType > | |
| std::vector< ChallengeType > | compute_round_challenge_pows (const size_t num_powers, const ChallengeType &round_challenge) |
| Given δ, compute the vector [δ, δ^2,..., δ^2^num_powers]. | |
| template<typename ChallengeType , typename String > | |
| std::vector< ChallengeType > | get_powers_of_challenge (const String &label, size_t num_challenges) |
| template<class T > | |
| void | add_to_independent_hash_buffer (const std::string &label, const T &element) |
| Adds an element to an independent hash buffer. | |
| DataType | hash_independent_buffer () |
| Hashes the independent hash buffer and clears it. | |
| template<class T > | |
| void | add_to_hash_buffer (const std::string &label, const T &element) |
| Adds an element to the transcript. | |
| template<class T > | |
| void | send_to_verifier (const std::string &label, const T &element) |
| Adds a prover message to the transcript, only intended to be used by the prover. | |
| template<class T > | |
| T | receive_from_prover (const std::string &label) |
Reads the next element of type T from the transcript, with a predefined label, only used by verifier. | |
| template<typename ChallengeType > | |
| ChallengeType | get_challenge (const std::string &label) |
| TranscriptManifest | get_manifest () const |
| void | print () |
| BaseTranscript | branch_transcript () |
| Branch a transcript to perform verifier-only computations. | |
Public Attributes | |
| size_t | log_circuit_size = MAX_AVM_TRACE_LOG_SIZE |
| std::array< Commitment, NUM_WITNESS_ENTITIES > | commitments |
| std::vector< bb::Univariate< FF, BATCHED_RELATION_PARTIAL_LENGTH > > | sumcheck_univariates |
| std::array< FF, NUM_ALL_ENTITIES > | sumcheck_evaluations |
| std::vector< Commitment > | gemini_fold_comms |
| std::vector< FF > | gemini_fold_evals |
| Commitment | shplonk_q_comm |
| Commitment | kzg_w_comm |
Public Attributes inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| size_t | transcript_index = 0 |
| size_t | round_index = 0 |
| bool | reception_phase = true |
| std::ptrdiff_t | proof_start = 0 |
| size_t | num_frs_written = 0 |
| size_t | num_frs_read = 0 |
| size_t | round_number = 0 |
Additional Inherited Members | |
Public Types inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| using | Codec = Codec_ |
| using | DataType = typename Codec::DataType |
| using | Proof = std::vector< DataType > |
Static Public Member Functions inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| static DataType | hash (const std::vector< DataType > &data) |
| Static hash method that forwards to Codec hash. | |
| template<typename T > | |
| static std::vector< DataType > | serialize (const T &element) |
| Serialize a size_t to a vector of field elements. | |
| template<typename T > | |
| static T | deserialize (std::span< const DataType > frs) |
| template<typename T > | |
| static size_t | calc_num_data_types () |
| static std::shared_ptr< BaseTranscript > | convert_prover_transcript_to_verifier_transcript (const std::shared_ptr< BaseTranscript > &prover_transcript) |
| Convert a prover transcript to a verifier transcript. | |
| static std::shared_ptr< BaseTranscript > | prover_init_empty () |
| For testing: initializes transcript with some arbitrary data so that a challenge can be generated after initialization. Only intended to be used by Prover. | |
| static std::shared_ptr< BaseTranscript > | verifier_init_empty (const std::shared_ptr< BaseTranscript > &transcript) |
| For testing: initializes transcript based on proof data then receives junk data produced by BaseTranscript::prover_init_empty(). Only intended to be used by Verifier. | |
Static Public Attributes inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| static constexpr bool | in_circuit = InCircuit<DataType> |
Protected Member Functions inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| void | add_element_frs_to_hash_buffer (const std::string &label, std::span< const DataType > element_frs) |
| Adds challenge elements to the current_round_buffer and updates the manifest. | |
| template<typename T > | |
| void | serialize_to_buffer (const T &element, Proof &proof_data) |
| Serializes object and appends it to proof_data. | |
| template<typename T > | |
| T | deserialize_from_buffer (const Proof &proof_data, size_t &offset) const |
| Deserializes the frs starting at offset into the typed element and returns that element. | |
Protected Attributes inherited from bb::BaseTranscript< Codec_, HashFunction > | |
| Proof | proof_data |
Definition at line 182 of file flavor.hpp.
|
default |
| void bb::avm2::AvmFlavor::Transcript::deserialize_full_transcript | ( | ) |
Definition at line 18 of file flavor.cpp.
| void bb::avm2::AvmFlavor::Transcript::serialize_full_transcript | ( | ) |
Definition at line 47 of file flavor.cpp.
| std::array<Commitment, NUM_WITNESS_ENTITIES> bb::avm2::AvmFlavor::Transcript::commitments |
Definition at line 186 of file flavor.hpp.
| std::vector<Commitment> bb::avm2::AvmFlavor::Transcript::gemini_fold_comms |
Definition at line 190 of file flavor.hpp.
| std::vector<FF> bb::avm2::AvmFlavor::Transcript::gemini_fold_evals |
Definition at line 191 of file flavor.hpp.
| Commitment bb::avm2::AvmFlavor::Transcript::kzg_w_comm |
Definition at line 193 of file flavor.hpp.
| size_t bb::avm2::AvmFlavor::Transcript::log_circuit_size = MAX_AVM_TRACE_LOG_SIZE |
Definition at line 184 of file flavor.hpp.
| Commitment bb::avm2::AvmFlavor::Transcript::shplonk_q_comm |
Definition at line 192 of file flavor.hpp.
| std::array<FF, NUM_ALL_ENTITIES> bb::avm2::AvmFlavor::Transcript::sumcheck_evaluations |
Definition at line 189 of file flavor.hpp.
| std::vector<bb::Univariate<FF, BATCHED_RELATION_PARTIAL_LENGTH> > bb::avm2::AvmFlavor::Transcript::sumcheck_univariates |
Definition at line 188 of file flavor.hpp.