|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <chonk_proof.hpp>
Classes | |
| class | DeserializationError |
Public Types | |
| using | Builder = std::conditional_t< IsRecursive, UltraCircuitBuilder, void > |
| using | HonkProof = std::conditional_t< IsRecursive, stdlib::Proof< Builder >, ::bb::HonkProof > |
| using | GoblinProof = std::conditional_t< IsRecursive, GoblinStdlibProof, ::bb::GoblinProof > |
| using | FF = std::conditional_t< IsRecursive, stdlib::field_t< Builder >, bb::fr > |
Public Member Functions | |
| ChonkProof_ ()=default | |
| ChonkProof_ (const HonkProof &mega, const GoblinProof &goblin) | |
| ChonkProof_ (HonkProof &&mega, GoblinProof &&goblin) | |
| template<typename B = Builder> requires IsRecursive | |
| ChonkProof_ (B &builder, const ChonkProof_< false > &proof) | |
| size_t | size () const |
| std::vector< FF > | to_field_elements () const |
| Serialize proof to field elements (native mode) | |
| msgpack::sbuffer | to_msgpack_buffer () const |
| uint8_t * | to_msgpack_heap_buffer () const |
| void | to_file_msgpack (const std::string &filename) const |
| MSGPACK_FIELDS (mega_proof, goblin_proof) | |
| bool | operator== (const ChonkProof_ &other) const =default |
Static Public Member Functions | |
| static ChonkProof_ | from_field_elements (const std::vector< FF > &fields) |
| Common logic to reconstruct proof from field elements. | |
| static ChonkProof_ | from_msgpack_buffer (uint8_t const *&buffer) |
| static ChonkProof_ | from_msgpack_buffer (const msgpack::sbuffer &buffer) |
| static ChonkProof_ | from_file_msgpack (const std::string &filename) |
Public Attributes | |
| HonkProof | mega_proof |
| GoblinProof | goblin_proof |
Static Public Attributes | |
| static constexpr size_t | PROOF_LENGTH_WITHOUT_PUB_INPUTS |
| The size of a Chonk proof without backend-added public inputs. | |
| static constexpr size_t | PROOF_LENGTH |
| The size of a Chonk proof with backend-added public inputs: HidingKernelIO. | |
| static constexpr size_t | HIDING_KERNEL_PROOF_LENGTH_WITHOUT_PUBLIC_INPUTS |
| static constexpr const char | MSGPACK_SCHEMA_NAME [] = "ChonkProof" |
Chonk proof type.
When IsRecursive=false (native): Contains native proof types with msgpack serialization. When IsRecursive=true (recursive): Contains stdlib proof types for in-circuit verification.
Definition at line 25 of file chonk_proof.hpp.
| using bb::ChonkProof_< IsRecursive >::Builder = std::conditional_t<IsRecursive, UltraCircuitBuilder, void> |
Definition at line 26 of file chonk_proof.hpp.
| using bb::ChonkProof_< IsRecursive >::FF = std::conditional_t<IsRecursive, stdlib::field_t<Builder>, bb::fr> |
Definition at line 29 of file chonk_proof.hpp.
| using bb::ChonkProof_< IsRecursive >::GoblinProof = std::conditional_t<IsRecursive, GoblinStdlibProof, ::bb::GoblinProof> |
Definition at line 28 of file chonk_proof.hpp.
| using bb::ChonkProof_< IsRecursive >::HonkProof = std::conditional_t<IsRecursive, stdlib::Proof<Builder>, ::bb::HonkProof> |
Definition at line 27 of file chonk_proof.hpp.
|
default |
|
inline |
Definition at line 57 of file chonk_proof.hpp.
|
inline |
Definition at line 63 of file chonk_proof.hpp.
|
inline |
Definition at line 71 of file chonk_proof.hpp.
|
static |
Common logic to reconstruct proof from field elements.
Split a vector of field elements into ChonkProof components.
| FieldType | Either bb::fr (native) or stdlib::field_t<Builder> (recursive) |
Definition at line 32 of file chonk_proof.cpp.
|
inlinestatic |
Definition at line 140 of file chonk_proof.hpp.
|
inlinestatic |
Definition at line 118 of file chonk_proof.hpp.
|
inlinestatic |
Definition at line 109 of file chonk_proof.hpp.
| bb::ChonkProof_< IsRecursive >::MSGPACK_FIELDS | ( | mega_proof | , |
| goblin_proof | |||
| ) |
|
default |
|
inline |
Definition at line 78 of file chonk_proof.hpp.
| template std::vector< stdlib::field_t< UltraCircuitBuilder > > bb::ChonkProof_< IsRecursive >::to_field_elements | ( | ) | const |
Serialize proof to field elements (native mode)
Serialize Chonk Proof.
Definition at line 16 of file chonk_proof.cpp.
|
inline |
Definition at line 128 of file chonk_proof.hpp.
|
inline |
Definition at line 93 of file chonk_proof.hpp.
|
inline |
Definition at line 101 of file chonk_proof.hpp.
| GoblinProof bb::ChonkProof_< IsRecursive >::goblin_proof |
Definition at line 32 of file chonk_proof.hpp.
|
staticconstexpr |
Definition at line 50 of file chonk_proof.hpp.
| HonkProof bb::ChonkProof_< IsRecursive >::mega_proof |
Definition at line 31 of file chonk_proof.hpp.
|
staticconstexpr |
Definition at line 159 of file chonk_proof.hpp.
|
staticconstexpr |
The size of a Chonk proof with backend-added public inputs: HidingKernelIO.
Definition at line 47 of file chonk_proof.hpp.
|
staticconstexpr |
The size of a Chonk proof without backend-added public inputs.
Definition at line 37 of file chonk_proof.hpp.