nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType > Class Template Reference

#include <proving_key.hpp>

+ Collaboration diagram for nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >:

Public Types

typedef ConstraintSystemType constraint_system_type
 
typedef CurveType curve_type
 

Public Member Functions

std::size_t G1_size () const
 
std::size_t G1_sparse_size () const
 
std::size_t G2_size () const
 
std::size_t G2_sparse_size () const
 
r1cs_ppzksnark_proving_keyoperator= (const r1cs_ppzksnark_proving_key &other)=default
 
bool operator== (const r1cs_ppzksnark_proving_key &other) const
 
 r1cs_ppzksnark_proving_key ()
 
 r1cs_ppzksnark_proving_key (const r1cs_ppzksnark_proving_key &other)=default
 
 r1cs_ppzksnark_proving_key (knowledge_commitment_vector< g1_type, g1_type > &&A_query, knowledge_commitment_vector< g2_type, g1_type > &&B_query, knowledge_commitment_vector< g1_type, g1_type > &&C_query, typename std::vector< g1_value_type > &&H_query, typename std::vector< g1_value_type > &&K_query, constraint_system_type &&constraint_system)
 
 r1cs_ppzksnark_proving_key (r1cs_ppzksnark_proving_key &&other)=default
 
std::size_t size_in_bits () const
 

Public Attributes

knowledge_commitment_vector< g1_type, g1_type > A_query
 
knowledge_commitment_vector< g2_type, g1_type > B_query
 
knowledge_commitment_vector< g1_type, g1_type > C_query
 
constraint_system_type constraint_system
 
std::vector< g1_value_type > H_query
 
std::vector< g1_value_type > K_query
 

Detailed Description

template<typename CurveType, typename ConstraintSystemType>
class nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >

A proving key for the R1CS ppzkSNARK.

Member Typedef Documentation

◆ constraint_system_type

template<typename CurveType , typename ConstraintSystemType >
typedef ConstraintSystemType nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::constraint_system_type

◆ curve_type

template<typename CurveType , typename ConstraintSystemType >
typedef CurveType nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::curve_type

Constructor & Destructor Documentation

◆ r1cs_ppzksnark_proving_key() [1/4]

template<typename CurveType , typename ConstraintSystemType >
nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::r1cs_ppzksnark_proving_key ( )
inline

◆ r1cs_ppzksnark_proving_key() [2/4]

template<typename CurveType , typename ConstraintSystemType >
nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::r1cs_ppzksnark_proving_key ( const r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType > &  other)
default

◆ r1cs_ppzksnark_proving_key() [3/4]

template<typename CurveType , typename ConstraintSystemType >
nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::r1cs_ppzksnark_proving_key ( r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType > &&  other)
default

◆ r1cs_ppzksnark_proving_key() [4/4]

template<typename CurveType , typename ConstraintSystemType >
nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::r1cs_ppzksnark_proving_key ( knowledge_commitment_vector< g1_type, g1_type > &&  A_query,
knowledge_commitment_vector< g2_type, g1_type > &&  B_query,
knowledge_commitment_vector< g1_type, g1_type > &&  C_query,
typename std::vector< g1_value_type > &&  H_query,
typename std::vector< g1_value_type > &&  K_query,
constraint_system_type &&  constraint_system 
)
inline

Member Function Documentation

◆ G1_size()

template<typename CurveType , typename ConstraintSystemType >
std::size_t nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::G1_size ( ) const
inline

◆ G1_sparse_size()

template<typename CurveType , typename ConstraintSystemType >
std::size_t nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::G1_sparse_size ( ) const
inline

◆ G2_size()

template<typename CurveType , typename ConstraintSystemType >
std::size_t nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::G2_size ( ) const
inline

◆ G2_sparse_size()

template<typename CurveType , typename ConstraintSystemType >
std::size_t nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::G2_sparse_size ( ) const
inline

◆ operator=()

template<typename CurveType , typename ConstraintSystemType >
r1cs_ppzksnark_proving_key& nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::operator= ( const r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType > &  other)
default

◆ operator==()

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

◆ size_in_bits()

template<typename CurveType , typename ConstraintSystemType >
std::size_t nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::size_in_bits ( ) const
inline

Member Data Documentation

◆ A_query

template<typename CurveType , typename ConstraintSystemType >
knowledge_commitment_vector<g1_type, g1_type> nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::A_query

◆ B_query

template<typename CurveType , typename ConstraintSystemType >
knowledge_commitment_vector<g2_type, g1_type> nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::B_query

◆ C_query

template<typename CurveType , typename ConstraintSystemType >
knowledge_commitment_vector<g1_type, g1_type> nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::C_query

◆ constraint_system

template<typename CurveType , typename ConstraintSystemType >
constraint_system_type nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::constraint_system

◆ H_query

template<typename CurveType , typename ConstraintSystemType >
std::vector<g1_value_type> nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::H_query

◆ K_query

template<typename CurveType , typename ConstraintSystemType >
std::vector<g1_value_type> nil::crypto3::zk::snark::r1cs_ppzksnark_proving_key< CurveType, ConstraintSystemType >::K_query

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