#include <sha.h>
Inheritance diagram for SHA256:

Definition at line 20 of file sha.h.
Public Types | |
| typedef BigEndian | ByteOrderClass |
|
typedef IteratedHashBase< word32, HashTransformation >::HashWordType | HashWordType |
Public Member Functions | |
| unsigned int | DigestSize () const |
| size of the hash returned by Final() | |
| Clonable * | Clone () const |
| this is not implemented by most classes yet | |
| std::string | AlgorithmName () const |
| returns name of this algorithm, not universally implemented yet | |
| void | TruncatedFinal (byte *digest, unsigned int size) |
| truncated version of Final() | |
| unsigned int | BlockSize () const |
| block size of underlying compression function, or 0 if not block based | |
| unsigned int | OptimalBlockSize () const |
| input to Update() should have length a multiple of this for optimal speed | |
| unsigned int | OptimalDataAlignment () const |
| returns how input should be aligned for optimal performance | |
| void | Update (const byte *input, unsigned int length) |
| process more input | |
| byte * | CreateUpdateSpace (unsigned int &size) |
| request space to write input into | |
| void | Restart () |
| discard the current state, and restart with a new message | |
| virtual void | Final (byte *digest) |
| compute hash for current message, then restart for a new message | |
| virtual void | CalculateDigest (byte *digest, const byte *input, unsigned int length) |
| use this if your input is in one piece and you don't want to call Update() and Final() separately | |
| virtual bool | Verify (const byte *digest) |
| verify that digest is a valid digest for the current message, then reinitialize the object | |
| virtual bool | VerifyDigest (const byte *digest, const byte *input, unsigned int length) |
| use this if your input is in one piece and you don't want to call Update() and Verify() separately | |
| virtual void | CalculateTruncatedDigest (byte *digest, unsigned int digestSize, const byte *input, unsigned int length) |
| truncated version of CalculateDigest() | |
| virtual bool | TruncatedVerify (const byte *digest, unsigned int digestLength) |
| truncated version of Verify() | |
| virtual bool | VerifyTruncatedDigest (const byte *digest, unsigned int digestLength, const byte *input, unsigned int length) |
| truncated version of VerifyDigest() | |
Static Public Member Functions | |
| void | InitState (HashWordType *state) |
| void | Transform (word32 *digest, const word32 *data) |
| const char * | StaticAlgorithmName () |
| void | CorrectEndianess (HashWordType *out, const HashWordType *in, unsigned int byteCount) |
Static Public Attributes | |
|
CompileAssert<((BLOCKSIZE &(BLOCKSIZE-1))==0) | cryptopp_assert___LINE__ ) |
Protected Member Functions | |
| void | HashEndianCorrectedBlock (const word32 *data) |
| virtual void | HashEndianCorrectedBlock (const HashWordType *data)=0 |
| void | Init () |
| void | HashBlock (const HashWordType *input) |
| virtual void | HashBlock (const word32 *input)=0 |
| void | SetBlockSize (unsigned int blockSize) |
| void | SetStateSize (unsigned int stateSize) |
| word32 | GetBitCountHi () const |
| word32 | GetBitCountLo () const |
| virtual unsigned int | HashMultipleBlocks (const word32 *input, unsigned int length) |
| void | PadLastBlock (unsigned int lastBlockSize, byte padFirst=0x80) |
| void | ThrowIfInvalidTruncatedSize (unsigned int size) const |
Protected Attributes | |
| SecBlock< word32 > | m_data |
| SecBlock< word32 > | m_digest |
Static Protected Attributes | |
| const word32 | K [64] |
|
|
compute hash for current message, then restart for a new message
Referenced by PKCS5_PBKDF2_HMAC< T >::DeriveKey(), HashFilter::Put2(), and HMAC_Base::TruncatedFinal(). |
|
|
verify that digest is a valid digest for the current message, then reinitialize the object Default implementation is to call Final() and do a bitwise comparison between its output and digest. Definition at line 558 of file cryptlib.h. |
|
|
Initial value: Definition at line 150 of file sha.cpp. |
1.3.7-20040704