Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

IteratedHash< T_HashWordType, T_Endianness, T_BlockSize, T_Base > Class Template Reference

#include <iterhash.h>

Inheritance diagram for IteratedHash< T_HashWordType, T_Endianness, T_BlockSize, T_Base >:

IteratedHashBase< T_HashWordType, T_Base > List of all members.

Detailed Description

template<class T_HashWordType, class T_Endianness, unsigned int T_BlockSize, class T_Base = HashTransformation>
class IteratedHash< T_HashWordType, T_Endianness, T_BlockSize, T_Base >

_

Definition at line 69 of file iterhash.h.

Public Types

typedef T_Endianness ByteOrderClass
typedef T_HashWordType HashWordType
enum  { BLOCKSIZE = T_BlockSize }

Public Member Functions

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 ()
void TruncatedFinal (byte *digest, size_t size)

Static Public Member Functions

void CorrectEndianess (HashWordType *out, const HashWordType *in, size_t byteCount)

Static Public Attributes

CompileAssert<((BLOCKSIZE
&(BLOCKSIZE-1))==0) 
cryptopp_assert___LINE__ )

Protected Member Functions

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 Init ()=0
virtual void HashEndianCorrectedBlock (const HashWordType *data)=0
virtual size_t HashMultipleBlocks (const T_HashWordType *input, size_t length)
void HashBlock (const HashWordType *input)

Protected Attributes

SecBlock< T_HashWordType > m_data
SecBlock< T_HashWordType > m_digest


The documentation for this class was generated from the following file:
Generated on Tue Aug 16 08:38:49 2005 for Crypto++ by  doxygen 1.3.9.1