nil::crypto3::zk::components::digest_variable< FieldType > Class Template Reference

#include <hash_io.hpp>

+ Inheritance diagram for nil::crypto3::zk::components::digest_variable< FieldType >:
+ Collaboration diagram for nil::crypto3::zk::components::digest_variable< FieldType >:

Public Member Functions

 digest_variable (blueprint< FieldType > &bp, std::size_t digest_size)
 
 digest_variable (blueprint< FieldType > &bp, std::size_t digest_size, const blueprint_variable_vector< FieldType > &partial_bits, const blueprint_variable< FieldType > &padding)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness (const std::vector< bool > &contents)
 
std::vector< bool > get_digest () const
 

Public Attributes

blueprint_variable_vector< FieldType > bits
 
std::size_t digest_size
 

Protected Attributes

blueprint< FieldType > & bp
 

Constructor & Destructor Documentation

◆ digest_variable() [1/2]

template<typename FieldType >
nil::crypto3::zk::components::digest_variable< FieldType >::digest_variable ( blueprint< FieldType > &  bp,
std::size_t  digest_size 
)
inline

◆ digest_variable() [2/2]

template<typename FieldType >
nil::crypto3::zk::components::digest_variable< FieldType >::digest_variable ( blueprint< FieldType > &  bp,
std::size_t  digest_size,
const blueprint_variable_vector< FieldType > &  partial_bits,
const blueprint_variable< FieldType > &  padding 
)
inline

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename FieldType >
void nil::crypto3::zk::components::digest_variable< FieldType >::generate_r1cs_constraints ( )
inline

◆ generate_r1cs_witness()

template<typename FieldType >
void nil::crypto3::zk::components::digest_variable< FieldType >::generate_r1cs_witness ( const std::vector< bool > &  contents)
inline

◆ get_digest()

template<typename FieldType >
std::vector<bool> nil::crypto3::zk::components::digest_variable< FieldType >::get_digest ( ) const
inline

Member Data Documentation

◆ bits

template<typename FieldType >
blueprint_variable_vector<FieldType> nil::crypto3::zk::components::digest_variable< FieldType >::bits

◆ bp

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

◆ digest_size

template<typename FieldType >
std::size_t nil::crypto3::zk::components::digest_variable< FieldType >::digest_size

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