MD5MAC_Base Class Reference

Inheritance diagram for MD5MAC_Base:

FixedKeyLength< 16 > IteratedHash< T_HashWordType, T_Endianness, T_BlockSize, T_Base > IteratedHashBase< T_HashWordType, T_Base > SimpleKeyingInterfaceImpl< MD5MAC_Base, MD5MAC_Base > AlgorithmImpl< SimpleKeyingInterfaceImpl< MD5MAC_Base, MD5MAC_Base >, MD5MAC_Base > MessageAuthenticationCodeImpl< MD5MAC_Base > ClonableImpl< MessageAuthenticationCodeFinal< MD5MAC_Base >, MessageAuthenticationCodeImpl< MD5MAC_Base > > MessageAuthenticationCodeFinal< MD5MAC_Base > MD5MAC List of all members.

Detailed Description

Definition at line 12 of file md5mac.h.

Public Types

typedef T_Endianness ByteOrderClass
typedef T_HashWordType HashWordType

Public Member Functions

 MD5MAC_Base ()
void UncheckedSetKey (const byte *userKey, unsigned int keylength, const NameValuePairs &params)
void TruncatedFinal (byte *mac, size_t size)
unsigned int DigestSize () const
ByteOrder GetByteOrder () const
unsigned int BlockSize () const
unsigned int OptimalBlockSize () const
unsigned int OptimalDataAlignment () const
void Update (const byte *input, size_t length)
byte * CreateUpdateSpace (size_t &size)
void Restart ()

Static Public Member Functions

static std::string StaticAlgorithmName ()
static size_t __cdecl StaticGetValidKeyLength (size_t)
static void CorrectEndianess (HashWordType *out, const HashWordType *in, size_t byteCount)

Static Public Attributes

static const int DIGESTSIZE = 16
static const int KEYLENGTH
static const int MIN_KEYLENGTH
static const int MAX_KEYLENGTH
static const int DEFAULT_KEYLENGTH
static const int IV_REQUIREMENT
static const int IV_LENGTH
static const int BLOCKSIZE = T_BlockSize
static CompileAssert<((T_BlockSize
&(T_BlockSize-1))==0)> 
cryptopp_assert___LINE__

Protected Member Functions

void HashEndianCorrectedBlock (const word32 *data)
void Init ()
void SetBlockSize (unsigned int blockSize)
void SetStateSize (unsigned int stateSize)
T_HashWordType GetBitCountHi () const
T_HashWordType GetBitCountLo () const
void PadLastBlock (unsigned int lastBlockSize, byte padFirst=0x80)
virtual void HashEndianCorrectedBlock (const HashWordType *data)=0
virtual size_t HashMultipleBlocks (const T_HashWordType *input, size_t length)
void HashBlock (const HashWordType *input)

Static Protected Member Functions

static void Transform (word32 *buf, const word32 *in, const word32 *key)

Protected Attributes

FixedSizeSecBlock< word32, 12 > m_key
SecBlock< T_HashWordType > m_data
SecBlock< T_HashWordType > m_digest

Static Protected Attributes

static const word32 T [12]


The documentation for this class was generated from the following files:
Generated on Sat Dec 23 02:07:27 2006 for Crypto++ by  doxygen 1.5.1-p1