barretenberg
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
proof_system::honk::flavor::ECCVMBase< CycleGroup_T, Curve_T, PCS_T >::Transcript Class Reference

Derived class that defines proof structure for ECCVM proofs, as well as supporting functions. More...

#include <ecc_vm.hpp>

Inheritance diagram for proof_system::honk::flavor::ECCVMBase< CycleGroup_T, Curve_T, PCS_T >::Transcript:
proof_system::honk::BaseTranscript

Public Member Functions

 Transcript (const std::vector< uint8_t > &proof)
 
void deserialize_full_transcript ()
 
void serialize_full_transcript ()
 
- Public Member Functions inherited from proof_system::honk::BaseTranscript
 BaseTranscript (const Proof &proof_data)
 Construct a new Base Transcript object for Verifier using proof_data.
 
std::vector< uint8_t > export_proof ()
 Return the proof data starting at proof_start.
 
void load_proof (const std::vector< uint8_t > &proof)
 
template<typename... Strings>
std::array< uint256_t, 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<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 >
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.
 
uint256_t get_challenge (const std::string &label)
 
TranscriptManifest get_manifest () const
 
void print ()
 

Public Attributes

uint32_t circuit_size
 
Commitment transcript_add_comm
 
Commitment transcript_mul_comm
 
Commitment transcript_eq_comm
 
Commitment transcript_collision_check_comm
 
Commitment transcript_msm_transition_comm
 
Commitment transcript_pc_comm
 
Commitment transcript_msm_count_comm
 
Commitment transcript_Px_comm
 
Commitment transcript_Py_comm
 
Commitment transcript_z1_comm
 
Commitment transcript_z2_comm
 
Commitment transcript_z1zero_comm
 
Commitment transcript_z2zero_comm
 
Commitment transcript_op_comm
 
Commitment transcript_accumulator_x_comm
 
Commitment transcript_accumulator_y_comm
 
Commitment transcript_msm_x_comm
 
Commitment transcript_msm_y_comm
 
Commitment precompute_pc_comm
 
Commitment precompute_point_transition_comm
 
Commitment precompute_round_comm
 
Commitment precompute_scalar_sum_comm
 
Commitment precompute_s1hi_comm
 
Commitment precompute_s1lo_comm
 
Commitment precompute_s2hi_comm
 
Commitment precompute_s2lo_comm
 
Commitment precompute_s3hi_comm
 
Commitment precompute_s3lo_comm
 
Commitment precompute_s4hi_comm
 
Commitment precompute_s4lo_comm
 
Commitment precompute_skew_comm
 
Commitment precompute_dx_comm
 
Commitment precompute_dy_comm
 
Commitment precompute_tx_comm
 
Commitment precompute_ty_comm
 
Commitment msm_transition_comm
 
Commitment msm_add_comm
 
Commitment msm_double_comm
 
Commitment msm_skew_comm
 
Commitment msm_accumulator_x_comm
 
Commitment msm_accumulator_y_comm
 
Commitment msm_pc_comm
 
Commitment msm_size_of_msm_comm
 
Commitment msm_count_comm
 
Commitment msm_round_comm
 
Commitment msm_add1_comm
 
Commitment msm_add2_comm
 
Commitment msm_add3_comm
 
Commitment msm_add4_comm
 
Commitment msm_x1_comm
 
Commitment msm_y1_comm
 
Commitment msm_x2_comm
 
Commitment msm_y2_comm
 
Commitment msm_x3_comm
 
Commitment msm_y3_comm
 
Commitment msm_x4_comm
 
Commitment msm_y4_comm
 
Commitment msm_collision_x1_comm
 
Commitment msm_collision_x2_comm
 
Commitment msm_collision_x3_comm
 
Commitment msm_collision_x4_comm
 
Commitment msm_lambda1_comm
 
Commitment msm_lambda2_comm
 
Commitment msm_lambda3_comm
 
Commitment msm_lambda4_comm
 
Commitment msm_slice1_comm
 
Commitment msm_slice2_comm
 
Commitment msm_slice3_comm
 
Commitment msm_slice4_comm
 
Commitment transcript_accumulator_empty_comm
 
Commitment transcript_reset_accumulator_comm
 
Commitment precompute_select_comm
 
Commitment lookup_read_counts_0_comm
 
Commitment lookup_read_counts_1_comm
 
Commitment z_perm_comm
 
Commitment lookup_inverses_comm
 
std::vector< barretenberg::Univariate< FF, BATCHED_RELATION_PARTIAL_LENGTH > > sumcheck_univariates
 
std::array< FF, NUM_ALL_ENTITIES > sumcheck_evaluations
 
std::vector< Commitment > gemini_univariate_comms
 
std::vector< FF > gemini_a_evals
 
Commitment shplonk_q_comm
 
Commitment kzg_w_comm
 
uint64_t ipa_poly_degree
 
std::vector< Commitment > ipa_l_comms
 
std::vector< Commitment > ipa_r_comms
 
FF ipa_a_0_eval
 
- Public Attributes inherited from proof_system::honk::BaseTranscript
std::ptrdiff_t proof_start = 0
 
size_t num_bytes_written = 0
 
size_t num_bytes_read = 0
 
size_t round_number = 0
 
Proof proof_data
 

Additional Inherited Members

- Public Types inherited from proof_system::honk::BaseTranscript
using Proof = std::vector< uint8_t >
 
- Static Public Member Functions inherited from proof_system::honk::BaseTranscript
static std::shared_ptr< BaseTranscriptprover_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< BaseTranscriptverifier_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 proof_system::honk::BaseTranscript
static constexpr size_t HASH_OUTPUT_SIZE = 32
 
- Protected Member Functions inherited from proof_system::honk::BaseTranscript
void consume_prover_element_bytes (const std::string &label, std::span< const uint8_t > element_bytes)
 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 >
deserialize_from_buffer (const Proof &proof_data, size_t &offset) const
 Deserializes the bytes starting at offset into the typed element and returns that element.
 

Detailed Description

template<typename CycleGroup_T, typename Curve_T, typename PCS_T>
class proof_system::honk::flavor::ECCVMBase< CycleGroup_T, Curve_T, PCS_T >::Transcript

Derived class that defines proof structure for ECCVM proofs, as well as supporting functions.


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