nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash > Struct Template Reference

#include <authentication_path.hpp>

+ Inheritance diagram for nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >:
+ Collaboration diagram for nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >:

Public Member Functions

void generate_r1cs_constraints ()
 
void generate_r1cs_witness (const std::size_t address, const snark::merkle_authentication_path &path)
 
snark::merkle_authentication_path get_authentication_path (const std::size_t address) const
 
 merkle_authentication_path_variable (blueprint< FieldType > &bp, const std::size_t tree_depth)
 

Public Attributes

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

Protected Attributes

blueprint< FieldType > & bp
 

Constructor & Destructor Documentation

◆ merkle_authentication_path_variable()

template<typename FieldType , typename Hash >
nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::merkle_authentication_path_variable ( blueprint< FieldType > &  bp,
const std::size_t  tree_depth 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename FieldType , typename Hash >
void nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::generate_r1cs_constraints ( )
inline

◆ generate_r1cs_witness()

template<typename FieldType , typename Hash >
void nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::generate_r1cs_witness ( const std::size_t  address,
const snark::merkle_authentication_path path 
)
inline

◆ get_authentication_path()

template<typename FieldType , typename Hash >
snark::merkle_authentication_path nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::get_authentication_path ( const std::size_t  address) const
inline

Member Data Documentation

◆ bp

template<typename FieldType >
blueprint<FieldType>& nil::crypto3::zk::components::component< FieldType >::bp
protectedinherited

◆ left_digests

template<typename FieldType , typename Hash >
std::vector<digest_variable<FieldType> > nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::left_digests

◆ right_digests

template<typename FieldType , typename Hash >
std::vector<digest_variable<FieldType> > nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::right_digests

◆ tree_depth

template<typename FieldType , typename Hash >
const std::size_t nil::crypto3::zk::components::merkle_authentication_path_variable< FieldType, Hash >::tree_depth

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