|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
Verifier counterpart to OinkProver: receives witness commitments, computes relation parameters, and prepares for Sumcheck. More...
#include <oink_verifier.hpp>
Public Member Functions | |
| OinkVerifier (const std::shared_ptr< Instance > &verifier_instance, const std::shared_ptr< Transcript > &transcript, size_t num_public_inputs) | |
| void | verify (bool emit_alpha=true) |
| Receive witness commitments, compute relation parameters, and prepare for Sumcheck. | |
Private Types | |
| using | Transcript = typename Flavor::Transcript |
| using | FF = typename Flavor::FF |
| using | Commitment = typename Flavor::Commitment |
| using | Instance = bb::VerifierInstance_< Flavor > |
Private Member Functions | |
| void | receive_vk_hash_and_public_inputs () |
| Hash the verification key, assert consistency, and receive public inputs from the transcript. | |
| void | receive_wire_commitments () |
| Receive wire commitments (w_l, w_r, w_o). For Mega, also receive ECC op wire and DataBus commitments. The fourth wire (w_4) is received later, after memory records are incorporated. | |
| void | receive_lookup_counts_and_w4_commitments () |
| Get sorted witness-table accumulator and fourth wire commitments. | |
| void | receive_logderiv_commitments () |
| Receive beta/gamma challenges and log-derivative inverse commitments (plus databus inverses for Mega). | |
| void | complete_grand_product_round () |
| Compute public_input_delta for the permutation argument and receive z_perm commitment. | |
Private Attributes | |
| std::shared_ptr< Transcript > | transcript |
| std::shared_ptr< Instance > | verifier_instance |
| Flavor::CommitmentLabels | comm_labels |
| size_t | num_public_inputs |
Verifier counterpart to OinkProver: receives witness commitments, computes relation parameters, and prepares for Sumcheck.
The rounds mirror OinkProver::prove() and proceed in order:
Works with both native and recursive flavors. When instantiated with a recursive flavor (IsRecursiveFlavor<Flavor>), automatically handles the differences in VK access and VK hash assertion.
Definition at line 30 of file oink_verifier.hpp.
|
private |
Definition at line 33 of file oink_verifier.hpp.
|
private |
Definition at line 32 of file oink_verifier.hpp.
|
private |
Definition at line 34 of file oink_verifier.hpp.
|
private |
Definition at line 31 of file oink_verifier.hpp.
|
inline |
Definition at line 37 of file oink_verifier.hpp.
|
private |
Compute public_input_delta for the permutation argument and receive z_perm commitment.
Definition at line 144 of file oink_verifier.cpp.
|
private |
Receive beta/gamma challenges and log-derivative inverse commitments (plus databus inverses for Mega).
Definition at line 124 of file oink_verifier.cpp.
|
private |
Get sorted witness-table accumulator and fourth wire commitments.
Definition at line 108 of file oink_verifier.cpp.
|
private |
Hash the verification key, assert consistency, and receive public inputs from the transcript.
Definition at line 43 of file oink_verifier.cpp.
|
private |
Receive wire commitments (w_l, w_r, w_o). For Mega, also receive ECC op wire and DataBus commitments. The fourth wire (w_4) is received later, after memory records are incorporated.
Definition at line 82 of file oink_verifier.cpp.
| void bb::OinkVerifier< Flavor >::verify | ( | bool | emit_alpha = true | ) |
Receive witness commitments, compute relation parameters, and prepare for Sumcheck.
Definition at line 23 of file oink_verifier.cpp.
|
private |
Definition at line 53 of file oink_verifier.hpp.
|
private |
Definition at line 54 of file oink_verifier.hpp.
|
private |
Definition at line 51 of file oink_verifier.hpp.
|
private |
Definition at line 52 of file oink_verifier.hpp.