|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
A full proof for the IVC scheme containing a Mega proof showing correctness of the hiding circuit (which recursive verified the last folding and decider proof) and a Goblin proof (translator VM, ECCVM and last merge proof). More...
#include <client_ivc.hpp>
Classes | |
| class | DeserializationError |
Public Member Functions | |
| size_t | size () const |
| std::vector< FF > | to_field_elements () const |
| Serialize proof to field elements. | |
| msgpack::sbuffer | to_msgpack_buffer () const |
| uint8_t * | to_msgpack_heap_buffer () const |
| Very quirky method to convert a msgpack buffer to a "heap" buffer. | |
| void | to_file_msgpack (const std::string &filename) const |
| MSGPACK_FIELDS (mega_proof, goblin_proof) | |
| bool | operator== (const Proof &other) const =default |
Static Public Member Functions | |
| static constexpr size_t | PROOF_LENGTH_WITHOUT_PUB_INPUTS (size_t virtual_log_n=MegaZKFlavor::VIRTUAL_LOG_N) |
| The size of a ClientIVC proof without backend-added public inputs. | |
| static constexpr size_t | PROOF_LENGTH (size_t virtual_log_n=MegaZKFlavor::VIRTUAL_LOG_N) |
| The size of a ClientIVC proof with backend-added public inputs: HidingKernelIO. | |
| static Proof | from_field_elements (const std::vector< ClientIVC::FF > &fields) |
| static Proof | from_msgpack_buffer (uint8_t const *&buffer) |
| static Proof | from_msgpack_buffer (const msgpack::sbuffer &buffer) |
| static Proof | from_file_msgpack (const std::string &filename) |
Public Attributes | |
| HonkProof | mega_proof |
| GoblinProof | goblin_proof |
Static Public Attributes | |
| static constexpr const char | MSGPACK_SCHEMA_NAME [] = "ClientIVCProof" |
A full proof for the IVC scheme containing a Mega proof showing correctness of the hiding circuit (which recursive verified the last folding and decider proof) and a Goblin proof (translator VM, ECCVM and last merge proof).
This proof will be zero-knowledge.
Definition at line 92 of file client_ivc.hpp.
|
static |
Definition at line 692 of file client_ivc.cpp.
|
static |
Definition at line 774 of file client_ivc.cpp.
|
static |
Definition at line 754 of file client_ivc.cpp.
|
static |
Definition at line 744 of file client_ivc.cpp.
| bb::ClientIVC::Proof::MSGPACK_FIELDS | ( | mega_proof | , |
| goblin_proof | |||
| ) |
|
default |
|
inlinestaticconstexpr |
The size of a ClientIVC proof with backend-added public inputs: HidingKernelIO.
| virtual_log_n |
Definition at line 117 of file client_ivc.hpp.
|
inlinestaticconstexpr |
The size of a ClientIVC proof without backend-added public inputs.
| virtual_log_n |
Definition at line 102 of file client_ivc.hpp.
| size_t bb::ClientIVC::Proof::size | ( | ) | const |
Definition at line 674 of file client_ivc.cpp.
| std::vector< ClientIVC::FF > bb::ClientIVC::Proof::to_field_elements | ( | ) | const |
Serialize proof to field elements.
Definition at line 679 of file client_ivc.cpp.
| void bb::ClientIVC::Proof::to_file_msgpack | ( | const std::string & | filename | ) | const |
Definition at line 763 of file client_ivc.cpp.
| msgpack::sbuffer bb::ClientIVC::Proof::to_msgpack_buffer | ( | ) | const |
Definition at line 729 of file client_ivc.cpp.
| uint8_t * bb::ClientIVC::Proof::to_msgpack_heap_buffer | ( | ) | const |
Very quirky method to convert a msgpack buffer to a "heap" buffer.
This method results in a buffer that is double-size-prefixed with the buffer size. This is to mimmic the original bb.js behavior which did a *out_proof = to_heap_buffer(to_buffer(proof));
Definition at line 736 of file client_ivc.cpp.
| GoblinProof bb::ClientIVC::Proof::goblin_proof |
Definition at line 94 of file client_ivc.hpp.
| HonkProof bb::ClientIVC::Proof::mega_proof |
Definition at line 93 of file client_ivc.hpp.
|
staticconstexpr |
Definition at line 146 of file client_ivc.hpp.