Crypto++
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
IteratedHash< T_HashWordType, T_Endianness, T_BlockSize, T_Base > Class Template Referenceabstract

_ More...

#include <iterhash.h>

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

Public Types

typedef T_Endianness ByteOrderClass
 
typedef T_HashWordType HashWordType
 

Public Member Functions

unsigned int BlockSize () const
 
ByteOrder GetByteOrder () 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

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

Static Public Attributes

static const int BLOCKSIZE = T_BlockSize
 
static CompileAssert
<((T_BlockSize &(T_BlockSize-1))==0)> 
cryptopp_assert___LINE__
 

Protected Member Functions

T_HashWordType * DataBuf ()
 
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)
 
virtual T_HashWordType * StateBuf ()=0
 

Protected Attributes

FixedSizeSecBlock
< T_HashWordType, T_BlockSize/sizeof(T_HashWordType)> 
m_data
 

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 55 of file iterhash.h.


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