nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > > Struct Template Reference

#include <accumulator.hpp>

+ Inheritance diagram for nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >:
+ Collaboration diagram for nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >:

Public Types

typedef block::digest< block_bitsresult_type
 

Public Member Functions

template<typename Args >
 mac_impl (const Args &args)
 
template<typename ArgumentPack >
void operator() (const ArgumentPack &args)
 
template<typename ArgumentPack >
result_type result (const ArgumentPack &args) const
 

Protected Types

typedef mac_type::block_type block_type
 
typedef boost::container::static_vector< word_type, block_wordscache_type
 
typedef BlockCipher cipher_type
 
typedef mac::cbc_mac< cipher_typemac_type
 
typedef mac_type::state_type state_type
 
typedef mac_type::word_type word_type
 

Protected Member Functions

void process (const block_type &block, std::size_t bits)
 

Protected Attributes

cache_type cache
 
result_type digest
 
mac_type mac
 
std::size_t seen
 

Static Protected Attributes

constexpr static const std::size_t block_bits = mac_type::block_bits
 
constexpr static const std::size_t block_words = mac_type::block_words
 
constexpr static const std::size_t state_bits = mac_type::state_bits
 
constexpr static const std::size_t state_words = mac_type::state_words
 
constexpr static const std::size_t word_bits = mac_type::word_bits
 

Member Typedef Documentation

◆ block_type

template<typename BlockCipher >
typedef mac_type::block_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::block_type
protected

◆ cache_type

template<typename BlockCipher >
typedef boost::container::static_vector<word_type, block_words> nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::cache_type
protected

◆ cipher_type

template<typename BlockCipher >
typedef BlockCipher nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::cipher_type
protected

◆ mac_type

template<typename BlockCipher >
typedef mac::cbc_mac<cipher_type> nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::mac_type
protected

◆ result_type

template<typename BlockCipher >
typedef block::digest<block_bits> nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::result_type

◆ state_type

template<typename BlockCipher >
typedef mac_type::state_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::state_type
protected

◆ word_type

template<typename BlockCipher >
typedef mac_type::word_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::word_type
protected

Constructor & Destructor Documentation

◆ mac_impl()

template<typename BlockCipher >
template<typename Args >
nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::mac_impl ( const Args &  args)
inline

Member Function Documentation

◆ operator()()

template<typename BlockCipher >
template<typename ArgumentPack >
void nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::operator() ( const ArgumentPack &  args)
inline

◆ process()

template<typename BlockCipher >
void nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::process ( const block_type block,
std::size_t  bits 
)
inlineprotected

◆ result()

template<typename BlockCipher >
template<typename ArgumentPack >
result_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::result ( const ArgumentPack &  args) const
inline

Member Data Documentation

◆ block_bits

template<typename BlockCipher >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::block_bits = mac_type::block_bits
staticconstexprprotected

◆ block_words

template<typename BlockCipher >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::block_words = mac_type::block_words
staticconstexprprotected

◆ cache

template<typename BlockCipher >
cache_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::cache
protected

◆ digest

template<typename BlockCipher >
result_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::digest
protected

◆ mac

template<typename BlockCipher >
mac_type nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::mac
protected

◆ seen

template<typename BlockCipher >
std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::seen
protected

◆ state_bits

template<typename BlockCipher >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::state_bits = mac_type::state_bits
staticconstexprprotected

◆ state_words

template<typename BlockCipher >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::state_words = mac_type::state_words
staticconstexprprotected

◆ word_bits

template<typename BlockCipher >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< mac::cbc_mac< BlockCipher > >::word_bits = mac_type::word_bits
staticconstexprprotected

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