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

#include <merkle_authentication_path_variable.hpp>

Inheritance diagram for libsnark::merkle_authentication_path_variable< FieldT, HashT >:
Inheritance graph
[legend]
Collaboration diagram for libsnark::merkle_authentication_path_variable< FieldT, HashT >:
Collaboration graph
[legend]

Public Member Functions

 merkle_authentication_path_variable (protoboard< FieldT > &pb, const size_t tree_depth, const std::string &annotation_prefix)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness (const size_t address, const merkle_authentication_path &path)
 
merkle_authentication_path get_authentication_path (const size_t address) const
 
- Public Member Functions inherited from libsnark::gadget< FieldT >
 gadget (protoboard< FieldT > &pb, const std::string &annotation_prefix)
 

Public Attributes

const size_t tree_depth
 
std::vector< digest_variable< FieldT > > left_digests
 
std::vector< digest_variable< FieldT > > right_digests
 

Additional Inherited Members

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

Detailed Description

template<typename FieldT, typename HashT>
class libsnark::merkle_authentication_path_variable< FieldT, HashT >

Definition at line 19 of file merkle_authentication_path_variable.hpp.

Constructor & Destructor Documentation

◆ merkle_authentication_path_variable()

template<typename FieldT , typename HashT >
libsnark::merkle_authentication_path_variable< FieldT, HashT >::merkle_authentication_path_variable ( protoboard< FieldT > &  pb,
const size_t  tree_depth,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename FieldT , typename HashT >
void libsnark::merkle_authentication_path_variable< FieldT, HashT >::generate_r1cs_constraints ( )

◆ generate_r1cs_witness()

template<typename FieldT , typename HashT >
void libsnark::merkle_authentication_path_variable< FieldT, HashT >::generate_r1cs_witness ( const size_t  address,
const merkle_authentication_path path 
)

◆ get_authentication_path()

template<typename FieldT , typename HashT >
merkle_authentication_path libsnark::merkle_authentication_path_variable< FieldT, HashT >::get_authentication_path ( const size_t  address) const

Member Data Documentation

◆ left_digests

template<typename FieldT , typename HashT >
std::vector<digest_variable<FieldT> > libsnark::merkle_authentication_path_variable< FieldT, HashT >::left_digests

Definition at line 23 of file merkle_authentication_path_variable.hpp.

◆ right_digests

template<typename FieldT , typename HashT >
std::vector<digest_variable<FieldT> > libsnark::merkle_authentication_path_variable< FieldT, HashT >::right_digests

Definition at line 24 of file merkle_authentication_path_variable.hpp.

◆ tree_depth

template<typename FieldT , typename HashT >
const size_t libsnark::merkle_authentication_path_variable< FieldT, HashT >::tree_depth

Definition at line 22 of file merkle_authentication_path_variable.hpp.


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