nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy > Struct Template Reference

#include <mac.hpp>

+ Inheritance diagram for nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >:
+ Collaboration diagram for nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >:

Public Types

typedef processing_policy::result_type result_type
 
typedef mac::static_digest< block_bitsresult_type
 
typedef block::digest< block_bitsresult_type
 

Public Member Functions

template<typename Args >
 block_impl (const Args &args)
 
template<typename Args >
 mac_impl (const Args &args)
 
template<typename Args >
 mac_impl (const Args &args)
 
template<typename ArgumentPack >
void operator() (const ArgumentPack &args)
 
template<typename ArgumentPack >
void operator() (const ArgumentPack &args)
 
template<typename ArgumentPack >
void operator() (const ArgumentPack &args)
 
result_type result (boost::accumulators::dont_care) const
 
template<typename ArgumentPack >
result_type result (const ArgumentPack &args) const
 
template<typename ArgumentPack >
result_type result (const ArgumentPack &args) const
 

Protected Types

typedef mode_type::block_type block_type
 
typedef mode_type::block_type block_type
 
typedef boost::container::static_vector< word_type, block_wordscache_type
 
typedef boost::container::static_vector< word_type, block_wordscache_type
 
typedef Mode::cipher_type cipher_type
 
typedef Mode::cipher_type cipher_type
 
typedef mode_type::finalizer_type finalizer_type
 
typedef mode_type::finalizer_type finalizer_type
 
typedef processing_policy::internal_accumulator_type internal_accumulator_type
 
typedef processing_policy::key_type key_type
 
typedef processing_policy::mac_type mac_type
 
typedef Mode mode_type
 
typedef Mode mode_type
 
typedef Mode::padding_type padding_type
 
typedef Mode::padding_type padding_type
 
typedef ProcessingPolicy processing_policy
 
typedef mode_type::state_type state_type
 
typedef mode_type::state_type state_type
 
typedef mode_type::word_type word_type
 
typedef mode_type::word_type word_type
 

Protected Member Functions

void process (const block_type &block, std::size_t bits)
 
void process (const block_type &block, std::size_t bits)
 
void process (const word_type &value, std::size_t bits)
 
void resolve_type (const block_type &value, std::size_t bits)
 
template<typename InputRange , typename InputIterator >
void resolve_type (const InputRange &range, InputIterator)
 
void resolve_type (const word_type &value, std::size_t bits)
 
template<typename InputIterator >
void resolve_type (InputIterator first, InputIterator second)
 

Protected Attributes

internal_accumulator_type acc
 
cache_type cache
 
block::cipher< cipher_type, mode_type, padding_typecipher
 
result_type digest
 
key_type key
 
std::size_t seen
 

Static Protected Attributes

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

Member Typedef Documentation

◆ block_type [1/2]

template<typename ProcessingPolicy >
typedef mode_type::block_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::block_type
protected

◆ block_type [2/2]

template<typename ProcessingPolicy >
typedef mode_type::block_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::block_type
protected

◆ cache_type [1/2]

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

◆ cache_type [2/2]

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

◆ cipher_type [1/2]

template<typename ProcessingPolicy >
typedef Mode::cipher_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::cipher_type
protected

◆ cipher_type [2/2]

template<typename ProcessingPolicy >
typedef Mode::cipher_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::cipher_type
protected

◆ finalizer_type [1/2]

template<typename ProcessingPolicy >
typedef mode_type::finalizer_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::finalizer_type
protected

◆ finalizer_type [2/2]

template<typename ProcessingPolicy >
typedef mode_type::finalizer_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::finalizer_type
protected

◆ internal_accumulator_type

template<typename ProcessingPolicy >
typedef processing_policy::internal_accumulator_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::internal_accumulator_type
protected

◆ key_type

template<typename ProcessingPolicy >
typedef processing_policy::key_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::key_type
protected

◆ mac_type

template<typename ProcessingPolicy >
typedef processing_policy::mac_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::mac_type
protected

◆ mode_type [1/2]

template<typename ProcessingPolicy >
typedef Mode nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::mode_type
protected

◆ mode_type [2/2]

template<typename ProcessingPolicy >
typedef Mode nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::mode_type
protected

◆ padding_type [1/2]

template<typename ProcessingPolicy >
typedef Mode::padding_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::padding_type
protected

◆ padding_type [2/2]

template<typename ProcessingPolicy >
typedef Mode::padding_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::padding_type
protected

◆ processing_policy

template<typename ProcessingPolicy >
typedef ProcessingPolicy nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::processing_policy
protected

◆ result_type [1/3]

template<typename ProcessingPolicy >
typedef processing_policy::result_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::result_type

◆ result_type [2/3]

template<typename ProcessingPolicy >
typedef mac::static_digest<block_bits> nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::result_type

◆ result_type [3/3]

template<typename ProcessingPolicy >
typedef block::digest<block_bits> nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::result_type

◆ state_type [1/2]

template<typename ProcessingPolicy >
typedef mode_type::state_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::state_type
protected

◆ state_type [2/2]

template<typename ProcessingPolicy >
typedef mode_type::state_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::state_type
protected

◆ word_type [1/2]

template<typename ProcessingPolicy >
typedef mode_type::word_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::word_type
protected

◆ word_type [2/2]

template<typename ProcessingPolicy >
typedef mode_type::word_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::word_type
protected

Constructor & Destructor Documentation

◆ mac_impl() [1/2]

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

◆ mac_impl() [2/2]

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

Member Function Documentation

◆ block_impl()

template<typename ProcessingPolicy >
template<typename Args >
nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::block_impl ( const Args &  args)
inline

◆ operator()() [1/3]

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

◆ operator()() [2/3]

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

◆ operator()() [3/3]

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

◆ process() [1/3]

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

◆ process() [2/3]

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

◆ process() [3/3]

template<typename ProcessingPolicy >
void nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::process ( const word_type value,
std::size_t  bits 
)
inlineprotected

◆ resolve_type() [1/4]

template<typename ProcessingPolicy >
void nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::resolve_type ( const block_type value,
std::size_t  bits 
)
inlineprotected

◆ resolve_type() [2/4]

template<typename ProcessingPolicy >
template<typename InputRange , typename InputIterator >
void nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::resolve_type ( const InputRange &  range,
InputIterator   
)
inlineprotected

◆ resolve_type() [3/4]

template<typename ProcessingPolicy >
void nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::resolve_type ( const word_type value,
std::size_t  bits 
)
inlineprotected

◆ resolve_type() [4/4]

template<typename ProcessingPolicy >
template<typename InputIterator >
void nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::resolve_type ( InputIterator  first,
InputIterator  second 
)
inlineprotected

◆ result() [1/3]

template<typename ProcessingPolicy >
result_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::result ( boost::accumulators::dont_care  ) const
inline

◆ result() [2/3]

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

◆ result() [3/3]

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

Member Data Documentation

◆ acc

template<typename ProcessingPolicy >
internal_accumulator_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::acc
mutableprotected

◆ block_bits

template<typename ProcessingPolicy >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::block_bits = mode_type::block_bits
staticconstexprprotected

◆ block_words

template<typename ProcessingPolicy >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::block_words = mode_type::block_words
staticconstexprprotected

◆ cache

template<typename ProcessingPolicy >
cache_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::cache
protected

◆ cipher

template<typename ProcessingPolicy >
block::cipher< cipher_type, mode_type, padding_type > nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::cipher
protected

◆ digest

template<typename ProcessingPolicy >
result_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::digest
protected

◆ key

template<typename ProcessingPolicy >
key_type nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::key
protected

◆ seen

template<typename ProcessingPolicy >
std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::seen
protected

◆ state_bits

template<typename ProcessingPolicy >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::state_bits = mode_type::state_bits
staticconstexprprotected

◆ state_words

template<typename ProcessingPolicy >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::state_words = mode_type::state_words
staticconstexprprotected

◆ word_bits

template<typename ProcessingPolicy >
constexpr static const std::size_t nil::crypto3::accumulators::impl::mac_impl< ProcessingPolicy >::word_bits = mode_type::word_bits
staticconstexprprotected

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