HermeticHashFunctionMAC< T_Hash, T_Info > Class Template Reference

MAC construction using a hermetic hash function. More...

`#include <panama.h>`

Inheritance diagram for HermeticHashFunctionMAC< T_Hash, T_Info >:

## Public Member Functions

void | UncheckedSetKey (const byte *key, unsigned int length, const NameValuePairs &params)
void | Restart ()
void | Update (const byte *input, size_t length)
void | TruncatedFinal (byte *digest, size_t digestSize)
unsigned int | DigestSize () const
unsigned int | BlockSize () const
unsigned int | OptimalBlockSize () const
unsigned int | OptimalDataAlignment () const
Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >, T_Hash >
std::string | AlgorithmName () const
| The algorithm name.
Public Member Functions inherited from SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >
size_t | MinKeyLength () const
| The minimum key length used by the algorithm.
size_t | MaxKeyLength () const
| The maximum key length used by the algorithm.
size_t | DefaultKeyLength () const
| The default key length used by the algorithm.
size_t | GetValidKeyLength (size_t keylength) const
| Provides a valid key length for the algorithm.
SimpleKeyingInterface::IV_Requirement | IVRequirement () const
| The default IV requirements for the algorithm.
unsigned int | IVSize () const
| The initialization vector length for the algorithm.

## Additional Inherited Members

Static Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >, T_Hash >
static std::string | StaticAlgorithmName ()
| The algorithm name.

## Detailed Description

template<class T_Hash, class T_Info = T_Hash>
class HermeticHashFunctionMAC< T_Hash, T_Info >

MAC construction using a hermetic hash function.

Definition at line 67 of file panama.h.

## Member Function Documentation

## UncheckedSetKey()

template<class T_Hash, class T_Info = T_Hash>

void HermeticHashFunctionMAC< T_Hash, T_Info >::UncheckedSetKey | ( | const byte * | key,
|  | unsigned int | length,
|  | const NameValuePairs & | params )

inline

Definition at line 70 of file panama.h.

## Restart()

template<class T_Hash, class T_Info = T_Hash>

void HermeticHashFunctionMAC< T_Hash, T_Info >::Restart | ( |  | ) |

inline

Definition at line 78 of file panama.h.

## Update()

template<class T_Hash, class T_Info = T_Hash>

void HermeticHashFunctionMAC< T_Hash, T_Info >::Update | ( | const byte * | input,
|  | size_t | length )

inline

Definition at line 84 of file panama.h.

## TruncatedFinal()

template<class T_Hash, class T_Info = T_Hash>

void HermeticHashFunctionMAC< T_Hash, T_Info >::TruncatedFinal | ( | byte * | digest,
|  | size_t | digestSize )

inline

Definition at line 91 of file panama.h.

## DigestSize()

template<class T_Hash, class T_Info = T_Hash>

unsigned int HermeticHashFunctionMAC< T_Hash, T_Info >::DigestSize | ( |  | ) | const

inline

Definition at line 99 of file panama.h.

## BlockSize()

template<class T_Hash, class T_Info = T_Hash>

unsigned int HermeticHashFunctionMAC< T_Hash, T_Info >::BlockSize | ( |  | ) | const

inline

Definition at line 101 of file panama.h.

## OptimalBlockSize()

template<class T_Hash, class T_Info = T_Hash>

unsigned int HermeticHashFunctionMAC< T_Hash, T_Info >::OptimalBlockSize | ( |  | ) | const

inline

Definition at line 103 of file panama.h.

## OptimalDataAlignment()

template<class T_Hash, class T_Info = T_Hash>

unsigned int HermeticHashFunctionMAC< T_Hash, T_Info >::OptimalDataAlignment | ( |  | ) | const

inline

Definition at line 105 of file panama.h.

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

- panama.h