Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Types | Public Member Functions | Public Attributes | Friends | List of all members
libsnark::tbcs_ppzksnark_proving_key< ppT > Class Template Reference

#include <tbcs_ppzksnark.hpp>

Collaboration diagram for libsnark::tbcs_ppzksnark_proving_key< ppT >:
Collaboration graph
[legend]

Public Types

typedef libff::Fr< ppT > FieldT
 

Public Member Functions

 tbcs_ppzksnark_proving_key ()
 
 tbcs_ppzksnark_proving_key (const tbcs_ppzksnark_proving_key< ppT > &other)=default
 
 tbcs_ppzksnark_proving_key (tbcs_ppzksnark_proving_key< ppT > &&other)=default
 
 tbcs_ppzksnark_proving_key (const tbcs_ppzksnark_circuit &circuit, const uscs_ppzksnark_proving_key< ppT > &uscs_pk)
 
 tbcs_ppzksnark_proving_key (tbcs_ppzksnark_circuit &&circuit, uscs_ppzksnark_proving_key< ppT > &&uscs_pk)
 
tbcs_ppzksnark_proving_key< ppT > & operator= (const tbcs_ppzksnark_proving_key< ppT > &other)=default
 
size_t G1_size () const
 
size_t G2_size () const
 
size_t G1_sparse_size () const
 
size_t G2_sparse_size () const
 
size_t size_in_bits () const
 
void print_size () const
 
bool operator== (const tbcs_ppzksnark_proving_key< ppT > &other) const
 

Public Attributes

tbcs_ppzksnark_circuit circuit
 
uscs_ppzksnark_proving_key< ppT > uscs_pk
 

Friends

std::ostream & operator (std::ostream &out, const tbcs_ppzksnark_proving_key< ppT > &pk)
 
std::istream & operator>> (std::istream &in, tbcs_ppzksnark_proving_key< ppT > &pk)
 

Detailed Description

template<typename ppT>
class libsnark::tbcs_ppzksnark_proving_key< ppT >

A proving key for the TBCS ppzkSNARK.

Definition at line 47 of file tbcs_ppzksnark.hpp.

Member Typedef Documentation

◆ FieldT

template<typename ppT >
typedef libff::Fr<ppT> libsnark::tbcs_ppzksnark_proving_key< ppT >::FieldT

Definition at line 62 of file tbcs_ppzksnark.hpp.

Constructor & Destructor Documentation

◆ tbcs_ppzksnark_proving_key() [1/5]

template<typename ppT >
libsnark::tbcs_ppzksnark_proving_key< ppT >::tbcs_ppzksnark_proving_key ( )
inline

Definition at line 67 of file tbcs_ppzksnark.hpp.

67 {};

◆ tbcs_ppzksnark_proving_key() [2/5]

template<typename ppT >
libsnark::tbcs_ppzksnark_proving_key< ppT >::tbcs_ppzksnark_proving_key ( const tbcs_ppzksnark_proving_key< ppT > &  other)
default

◆ tbcs_ppzksnark_proving_key() [3/5]

template<typename ppT >
libsnark::tbcs_ppzksnark_proving_key< ppT >::tbcs_ppzksnark_proving_key ( tbcs_ppzksnark_proving_key< ppT > &&  other)
default

◆ tbcs_ppzksnark_proving_key() [4/5]

template<typename ppT >
libsnark::tbcs_ppzksnark_proving_key< ppT >::tbcs_ppzksnark_proving_key ( const tbcs_ppzksnark_circuit circuit,
const uscs_ppzksnark_proving_key< ppT > &  uscs_pk 
)
inline

Definition at line 72 of file tbcs_ppzksnark.hpp.

76  {
77  }

◆ tbcs_ppzksnark_proving_key() [5/5]

template<typename ppT >
libsnark::tbcs_ppzksnark_proving_key< ppT >::tbcs_ppzksnark_proving_key ( tbcs_ppzksnark_circuit &&  circuit,
uscs_ppzksnark_proving_key< ppT > &&  uscs_pk 
)
inline

Definition at line 78 of file tbcs_ppzksnark.hpp.

81  : circuit(std::move(circuit)), uscs_pk(std::move(uscs_pk))
82  {
83  }

Member Function Documentation

◆ G1_size()

template<typename ppT >
size_t libsnark::tbcs_ppzksnark_proving_key< ppT >::G1_size ( ) const
inline

Definition at line 88 of file tbcs_ppzksnark.hpp.

88 { return uscs_pk.G1_size(); }

◆ G1_sparse_size()

template<typename ppT >
size_t libsnark::tbcs_ppzksnark_proving_key< ppT >::G1_sparse_size ( ) const
inline

Definition at line 92 of file tbcs_ppzksnark.hpp.

92 { return uscs_pk.G1_sparse_size(); }

◆ G2_size()

template<typename ppT >
size_t libsnark::tbcs_ppzksnark_proving_key< ppT >::G2_size ( ) const
inline

Definition at line 90 of file tbcs_ppzksnark.hpp.

90 { return uscs_pk.G2_size(); }

◆ G2_sparse_size()

template<typename ppT >
size_t libsnark::tbcs_ppzksnark_proving_key< ppT >::G2_sparse_size ( ) const
inline

Definition at line 94 of file tbcs_ppzksnark.hpp.

94 { return uscs_pk.G2_sparse_size(); }

◆ operator=()

template<typename ppT >
tbcs_ppzksnark_proving_key<ppT>& libsnark::tbcs_ppzksnark_proving_key< ppT >::operator= ( const tbcs_ppzksnark_proving_key< ppT > &  other)
default

◆ operator==()

template<typename ppT >
bool libsnark::tbcs_ppzksnark_proving_key< ppT >::operator== ( const tbcs_ppzksnark_proving_key< ppT > &  other) const

◆ print_size()

template<typename ppT >
void libsnark::tbcs_ppzksnark_proving_key< ppT >::print_size ( ) const
inline

Definition at line 98 of file tbcs_ppzksnark.hpp.

98 { uscs_pk.print_size(); }

◆ size_in_bits()

template<typename ppT >
size_t libsnark::tbcs_ppzksnark_proving_key< ppT >::size_in_bits ( ) const
inline

Definition at line 96 of file tbcs_ppzksnark.hpp.

96 { return uscs_pk.size_in_bits(); }

Friends And Related Function Documentation

◆ operator

template<typename ppT >
std::ostream& operator ( std::ostream &  out,
const tbcs_ppzksnark_proving_key< ppT > &  pk 
)
friend

◆ operator>>

template<typename ppT >
std::istream& operator>> ( std::istream &  in,
tbcs_ppzksnark_proving_key< ppT > &  pk 
)
friend

Member Data Documentation

◆ circuit

template<typename ppT >
tbcs_ppzksnark_circuit libsnark::tbcs_ppzksnark_proving_key< ppT >::circuit

Definition at line 64 of file tbcs_ppzksnark.hpp.

◆ uscs_pk

template<typename ppT >
uscs_ppzksnark_proving_key<ppT> libsnark::tbcs_ppzksnark_proving_key< ppT >::uscs_pk

Definition at line 65 of file tbcs_ppzksnark.hpp.


The documentation for this class was generated from the following file:
libsnark::tbcs_ppzksnark_proving_key::uscs_pk
uscs_ppzksnark_proving_key< ppT > uscs_pk
Definition: tbcs_ppzksnark.hpp:65
libsnark::tbcs_ppzksnark_proving_key::circuit
tbcs_ppzksnark_circuit circuit
Definition: tbcs_ppzksnark.hpp:64