#include <verifier.hpp>
Static Public Member Functions | |
static bool | process (const processed_verification_key_type &processed_verification_key, const primary_input_type &primary_input, const proof_type &proof) |
static bool | process (const verification_key_type &verification_key, const primary_input_type &primary_input, const proof_type &proof) |
Detailed Description
template<typename CurveType>
class nil::crypto3::zk::snark::r1cs_gg_ppzksnark_verifier_weak_input_consistency< CurveType, ProvingMode::Basic >
Below are four variants of verifier algorithm for the R1CS GG-ppzkSNARK.
These are the four cases that arise from the following two choices:
(1) The verifier accepts a (non-processed) verification key or, instead, a processed verification key. In the latter case, we call the algorithm an "online verifier".
(2) The verifier checks for "weak" input consistency or, instead, "strong" input consistency. Strong input consistency requires that |primary_input| = CS.num_inputs, whereas weak input consistency requires that |primary_input| <= CS.num_inputs (and the primary input is implicitly padded with zeros up to length CS.num_inputs).
Member Typedef Documentation
◆ primary_input_type
typedef policy_type::primary_input_type nil::crypto3::zk::snark::r1cs_gg_ppzksnark_verifier_weak_input_consistency< CurveType, ProvingMode::Basic >::primary_input_type |
◆ processed_verification_key_type
typedef policy_type::processed_verification_key_type nil::crypto3::zk::snark::r1cs_gg_ppzksnark_verifier_weak_input_consistency< CurveType, ProvingMode::Basic >::processed_verification_key_type |
◆ proof_type
typedef policy_type::proof_type nil::crypto3::zk::snark::r1cs_gg_ppzksnark_verifier_weak_input_consistency< CurveType, ProvingMode::Basic >::proof_type |
◆ verification_key_type
typedef policy_type::verification_key_type nil::crypto3::zk::snark::r1cs_gg_ppzksnark_verifier_weak_input_consistency< CurveType, ProvingMode::Basic >::verification_key_type |
Member Function Documentation
◆ process() [1/2]
|
inlinestatic |
A verifier algorithm for the R1CS GG-ppzkSNARK that: (1) accepts a processed verification key, and (2) has weak input consistency.
◆ process() [2/2]
|
inlinestatic |
A verifier algorithm for the R1CS GG-ppzkSNARK that: (1) accepts a non-processed verification key, and (2) has weak input consistency.
The documentation for this class was generated from the following file: