nil::crypto3::mac Namespace Reference
Namespaces | |
detail | |
Classes | |
class | ansi_x919_mac |
DES/3DES-based MAC from ANSI X9.19. More... | |
struct | cbc_mac |
CBC-MAC. More... | |
struct | cmac |
CMAC, also known as OMAC1. More... | |
class | gmac |
GMAC. More... | |
struct | hmac |
struct | mac_key |
Mac key - a key that can be used to create and verify MAC. More... | |
struct | mac_key< hmac< Hash > > |
struct | nop_padding |
class | poly_1305 |
DJB's Poly1305. More... | |
struct | processing_policies |
class | siphash |
Typedefs | |
using | BlockCipher = boost::accumulators::accumulator_set< mac::digest< MessageAuthenticationCode::input_block_bits >, boost::accumulators::features< accumulators::tag::mac< MessageAuthenticationCode > >> |
template<typename ProcessingPolicy > | |
using | computation_accumulator_set = boost::accumulators::accumulator_set< typename ProcessingPolicy::result_type, boost::accumulators::features< accumulators::tag::mac< ProcessingPolicy > >> |
template<typename Mac , template< typename > class Padding = nop_padding> | |
using | computation_policy = typename processing_policies< Mac, Padding >::computation_policy |
template<typename BlockCipher > | |
using | omac1 = cmac< BlockCipher > |
Functions | |
template<typename MessageAuthenticationCode , typename OutputRange , typename SinglePassRange > | |
OutputRange | verify (const SinglePassRange &rng) |
template<typename MessageAuthenticationCode , typename SinglePassRange , typename OutputIterator > | |
OutputIterator | verify (const SinglePassRange &rng, OutputIterator out) |
template<typename MessageAuthenticationCode , typename InputIterator , typename OutputIterator > | |
OutputIterator | verify (InputIterator first, InputIterator last, OutputIterator out) |
Typedef Documentation
◆ BlockCipher
using nil::crypto3::mac::BlockCipher = typedef boost::accumulators::accumulator_set< mac::digest<MessageAuthenticationCode::input_block_bits>, boost::accumulators::features<accumulators::tag::mac<MessageAuthenticationCode> >> |
◆ computation_accumulator_set
template<typename ProcessingPolicy >
using nil::crypto3::mac::computation_accumulator_set = typedef boost::accumulators::accumulator_set< typename ProcessingPolicy::result_type, boost::accumulators::features<accumulators::tag::mac<ProcessingPolicy> >> |
◆ computation_policy
template<typename Mac , template< typename > class Padding = nop_padding>
using nil::crypto3::mac::computation_policy = typedef typename processing_policies<Mac, Padding>::computation_policy |
◆ omac1
template<typename BlockCipher >
using nil::crypto3::mac::omac1 = typedef cmac<BlockCipher> |
Function Documentation
◆ verify() [1/3]
template<typename MessageAuthenticationCode , typename OutputRange , typename SinglePassRange >
OutputRange nil::crypto3::mac::verify | ( | const SinglePassRange & | rng | ) |
- Template Parameters
-
MessageAuthenticationCode OutputRange SinglePassRange
- Parameters
-
rng
- Returns
◆ verify() [2/3]
template<typename MessageAuthenticationCode , typename SinglePassRange , typename OutputIterator >
OutputIterator nil::crypto3::mac::verify | ( | const SinglePassRange & | rng, |
OutputIterator | out | ||
) |
- Template Parameters
-
MessageAuthenticationCode SinglePassRange OutputIterator
- Parameters
-
rng out
- Returns
◆ verify() [3/3]
template<typename MessageAuthenticationCode , typename InputIterator , typename OutputIterator >
OutputIterator nil::crypto3::mac::verify | ( | InputIterator | first, |
InputIterator | last, | ||
OutputIterator | out | ||
) |
- Template Parameters
-
MessageAuthenticationCode InputIterator OutputIterator
- Parameters
-
first last out
- Returns