nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType > Class Template Reference

#include <verification_key.hpp>

+ Collaboration diagram for nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >:

Public Types

typedef CurveType curve_type
 

Public Member Functions

bool operator== (const uscs_ppzksnark_processed_verification_key &other) const
 

Public Attributes

accumulation_vector< typename CurveType::template g1_type<> > encoded_IC_query
 
CurveType::gt_type::value_type pairing_of_g1_and_g2
 
pairing_policy::g1_precomputed_type pp_G1_one_precomp
 
pairing_policy::g2_precomputed_type pp_G2_one_precomp
 
pairing_policy::g2_precomputed_type vk_alpha_tilde_g2_precomp
 
pairing_policy::g2_precomputed_type vk_tilde_g2_precomp
 
pairing_policy::g2_precomputed_type vk_Z_g2_precomp
 

Detailed Description

template<typename CurveType>
class nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >

A processed verification key for the USCS ppzkSNARK.

Compared to a (non-processed) verification key, a processed verification key contains a small constant amount of additional pre-computed information that enables a faster verification time.

Member Typedef Documentation

◆ curve_type

template<typename CurveType >
typedef CurveType nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::curve_type

Member Function Documentation

◆ operator==()

template<typename CurveType >
bool nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::operator== ( const uscs_ppzksnark_processed_verification_key< CurveType > &  other) const
inline

Member Data Documentation

◆ encoded_IC_query

template<typename CurveType >
accumulation_vector<typename CurveType::template g1_type<> > nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::encoded_IC_query

◆ pairing_of_g1_and_g2

template<typename CurveType >
CurveType::gt_type::value_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::pairing_of_g1_and_g2

◆ pp_G1_one_precomp

template<typename CurveType >
pairing_policy::g1_precomputed_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::pp_G1_one_precomp

◆ pp_G2_one_precomp

template<typename CurveType >
pairing_policy::g2_precomputed_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::pp_G2_one_precomp

◆ vk_alpha_tilde_g2_precomp

template<typename CurveType >
pairing_policy::g2_precomputed_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::vk_alpha_tilde_g2_precomp

◆ vk_tilde_g2_precomp

template<typename CurveType >
pairing_policy::g2_precomputed_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::vk_tilde_g2_precomp

◆ vk_Z_g2_precomp

template<typename CurveType >
pairing_policy::g2_precomputed_type nil::crypto3::zk::snark::uscs_ppzksnark_processed_verification_key< CurveType >::vk_Z_g2_precomp

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