HermeticHashFunctionMAC< T_Hash, T_Info > Class Template Reference

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

Inheritance diagram for HermeticHashFunctionMAC< T_Hash, T_Info >:
AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >, T_Info > SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > > TwoBases

List of all members.

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
std::string AlgorithmName () const
size_t MinKeyLength () const
 The minimum key length used by the cipher.
size_t MaxKeyLength () const
 The maximum key length used by the cipher.
size_t DefaultKeyLength () const
 The default key length used by the cipher.
size_t GetValidKeyLength (size_t keylength) const
 Provides a valid key length for the cipher.
SimpleKeyingInterface::IV_Requirement IVRequirement () const
 The default IV requirements for the cipher.
unsigned int IVSize () const
 The default initialization vector length for the cipher.

Static Public Member Functions

static std::string StaticAlgorithmName ()

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 56 of file panama.h.


Member Function Documentation

size_t SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > , TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >::GetValidKeyLength ( size_t  keylength  )  const [inline, inherited]

Provides a valid key length for the cipher.

Parameters:
keylength the size of the key, in bytes

keylength is provided in bytes, not bits. If keylength is less than MIN_KEYLENGTH, then the function returns MIN_KEYLENGTH. If keylength is greater than MAX_KEYLENGTH, then the function returns MAX_KEYLENGTH. if If keylength is a multiple of KEYLENGTH_MULTIPLE, then keylength is returned. Otherwise, the function returns a lower multiple of KEYLENGTH_MULTIPLE.

Definition at line 273 of file seckey.h.

The default IV requirements for the cipher.

The default value is NOT_RESYNCHRONIZABLE. See IV_Requirement in cryptlib.h for allowed values.

Definition at line 278 of file seckey.h.

unsigned int SimpleKeyingInterfaceImpl< TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > , TwoBases< MessageAuthenticationCode, VariableKeyLength< 32, 0, INT_MAX > > >::IVSize (  )  const [inline, inherited]

The default initialization vector length for the cipher.

IVSize is provided in bytes, not bits. The default implementation uses IV_LENGTH, which is 0.

Definition at line 283 of file seckey.h.


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

Generated on 24 Mar 2016 for Crypto++ by  doxygen 1.6.1