nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType > Class Template Reference

#include <verifier.hpp>

+ Inheritance diagram for nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >:
+ Collaboration diagram for nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >:

Public Types

typedef CurveType::scalar_field_type FieldType
 

Public Member Functions

void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 
 r1cs_ppzksnark_verifier_component (blueprint< FieldType > &bp, const r1cs_ppzksnark_verification_key_variable< CurveType > &vk, const blueprint_variable_vector< FieldType > &input, const std::size_t elt_size, const r1cs_ppzksnark_proof_variable< CurveType > &proof, const blueprint_variable< FieldType > &result)
 

Public Attributes

std::shared_ptr< r1cs_ppzksnark_verifier_process_vk_component< CurveType > > compute_pvk
 
std::shared_ptr< r1cs_ppzksnark_online_verifier_component< CurveType > > online_verifier
 
std::shared_ptr< r1cs_ppzksnark_preprocessed_r1cs_ppzksnark_verification_key_variable< CurveType > > pvk
 

Protected Attributes

blueprint< CurveType::scalar_field_type > & bp
 

Member Typedef Documentation

◆ FieldType

template<typename CurveType >
typedef CurveType::scalar_field_type nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::FieldType

Constructor & Destructor Documentation

◆ r1cs_ppzksnark_verifier_component()

template<typename CurveType >
nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::r1cs_ppzksnark_verifier_component ( blueprint< FieldType > &  bp,
const r1cs_ppzksnark_verification_key_variable< CurveType > &  vk,
const blueprint_variable_vector< FieldType > &  input,
const std::size_t  elt_size,
const r1cs_ppzksnark_proof_variable< CurveType > &  proof,
const blueprint_variable< FieldType > &  result 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename CurveType >
void nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::generate_r1cs_constraints ( )
inline

◆ generate_r1cs_witness()

template<typename CurveType >
void nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::generate_r1cs_witness ( )
inline

Member Data Documentation

◆ bp

blueprint<CurveType::scalar_field_type >& nil::crypto3::zk::components::component< CurveType::scalar_field_type >::bp
protectedinherited

◆ compute_pvk

template<typename CurveType >
std::shared_ptr<r1cs_ppzksnark_verifier_process_vk_component<CurveType> > nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::compute_pvk

◆ online_verifier

template<typename CurveType >
std::shared_ptr<r1cs_ppzksnark_online_verifier_component<CurveType> > nil::crypto3::zk::snark::components::r1cs_ppzksnark_verifier_component< CurveType >::online_verifier

◆ pvk


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