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

#include <sha256_aux.hpp>

Inheritance diagram for libsnark::lastbits_gadget< FieldT >:
Inheritance graph
[legend]
Collaboration diagram for libsnark::lastbits_gadget< FieldT >:
Collaboration graph
[legend]

Public Member Functions

 lastbits_gadget (protoboard< FieldT > &pb, const pb_variable< FieldT > &X, const size_t X_bits, const pb_variable< FieldT > &result, const pb_linear_combination_array< FieldT > &result_bits, const std::string &annotation_prefix)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 
- Public Member Functions inherited from libsnark::gadget< FieldT >
 gadget (protoboard< FieldT > &pb, const std::string &annotation_prefix)
 

Public Attributes

pb_variable< FieldT > X
 
size_t X_bits
 
pb_variable< FieldT > result
 
pb_linear_combination_array< FieldT > result_bits
 
pb_linear_combination_array< FieldT > full_bits
 
std::shared_ptr< packing_gadget< FieldT > > unpack_bits
 
std::shared_ptr< packing_gadget< FieldT > > pack_result
 

Additional Inherited Members

- Protected Attributes inherited from libsnark::gadget< FieldT >
protoboard< FieldT > & pb
 
const std::string annotation_prefix
 

Detailed Description

template<typename FieldT>
class libsnark::lastbits_gadget< FieldT >

Definition at line 20 of file sha256_aux.hpp.

Constructor & Destructor Documentation

◆ lastbits_gadget()

template<typename FieldT >
libsnark::lastbits_gadget< FieldT >::lastbits_gadget ( protoboard< FieldT > &  pb,
const pb_variable< FieldT > &  X,
const size_t  X_bits,
const pb_variable< FieldT > &  result,
const pb_linear_combination_array< FieldT > &  result_bits,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename FieldT >
void libsnark::lastbits_gadget< FieldT >::generate_r1cs_constraints ( )

◆ generate_r1cs_witness()

template<typename FieldT >
void libsnark::lastbits_gadget< FieldT >::generate_r1cs_witness ( )

Member Data Documentation

◆ full_bits

template<typename FieldT >
pb_linear_combination_array<FieldT> libsnark::lastbits_gadget< FieldT >::full_bits

Definition at line 28 of file sha256_aux.hpp.

◆ pack_result

template<typename FieldT >
std::shared_ptr<packing_gadget<FieldT> > libsnark::lastbits_gadget< FieldT >::pack_result

Definition at line 30 of file sha256_aux.hpp.

◆ result

template<typename FieldT >
pb_variable<FieldT> libsnark::lastbits_gadget< FieldT >::result

Definition at line 25 of file sha256_aux.hpp.

◆ result_bits

template<typename FieldT >
pb_linear_combination_array<FieldT> libsnark::lastbits_gadget< FieldT >::result_bits

Definition at line 26 of file sha256_aux.hpp.

◆ unpack_bits

template<typename FieldT >
std::shared_ptr<packing_gadget<FieldT> > libsnark::lastbits_gadget< FieldT >::unpack_bits

Definition at line 29 of file sha256_aux.hpp.

◆ X

template<typename FieldT >
pb_variable<FieldT> libsnark::lastbits_gadget< FieldT >::X

Definition at line 23 of file sha256_aux.hpp.

◆ X_bits

template<typename FieldT >
size_t libsnark::lastbits_gadget< FieldT >::X_bits

Definition at line 24 of file sha256_aux.hpp.


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