Security Scol plugin
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
SHA224 Class Reference

SHA-224 message digest. More...

#include <sha.h>

Inheritance diagram for SHA224:
IteratedHashWithStaticTransform< word32, BigEndian, 64, 32, SHA224, 28, true > ClonableImpl< DERIVED, BASE >

Public Member Functions

CRYPTOPP_STATIC_CONSTEXPR const char *CRYPTOPP_API StaticAlgorithmName ()
 The algorithm name.
 
std::string AlgorithmProvider () const
 
- Public Member Functions inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 32, SHA224, 28, true >
 CRYPTOPP_CONSTANT (DIGESTSIZE=T_DigestSize ? T_DigestSize :T_StateSize)
 
unsigned int DigestSize () const
 Provides the digest size of the hash.
 
- Public Member Functions inherited from ClonableImpl< DERIVED, BASE >
ClonableClone () const
 Create a copy of this object.
 

Static Public Member Functions

static void CRYPTOPP_API InitState (HashWordType *state)
 Initialize state array.
 
static void CRYPTOPP_API Transform (HashWordType *digest, const HashWordType *data)
 Operate the hash.
 

Protected Member Functions

size_t HashMultipleBlocks (const HashWordType *input, size_t length)
 
- Protected Member Functions inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 32, SHA224, 28, true >
void HashEndianCorrectedBlock (const word32 *data)
 
void Init ()
 
word32StateBuf ()
 

Additional Inherited Members

- Protected Types inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 32, SHA224, 28, true >
enum  
 
- Protected Attributes inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 32, SHA224, 28, true >
FixedSizeAlignedSecBlock< word32, Blocks, T_StateAligned > m_state
 

Detailed Description

SHA-224 message digest.

See also
SHA-224
Since
SHA2 since Crypto++ 4.0, ARMv8 SHA since Crypto++ 6.0, Intel SHA since Crypto++ 6.0, Power8 SHA since Crypto++ 6.1

Definition at line 103 of file sha.h.

Member Function Documentation

◆ AlgorithmProvider()

std::string SHA224::AlgorithmProvider ( ) const

Definition at line 496 of file sha.cpp.

◆ HashMultipleBlocks()

size_t SHA224::HashMultipleBlocks ( const HashWordType *  input,
size_t  length 
)
protected

Definition at line 987 of file sha.cpp.

◆ InitState()

void SHA224::InitState ( HashWordType *  state)
static

Initialize state array.

Parameters
statethe state of the hash

InitState sets a state array to SHA224 initial values

Hashes which derive from IteratedHashWithStaticTransform provide static member functions InitState and Transform. External classes, like SEAL and MDC, can initialize state with a user provided key and operate the hash on the data with the user supplied state.

Note
On Intel platforms the state array must be 16-byte aligned for SSE2.

Definition at line 501 of file sha.cpp.

◆ StaticAlgorithmName()

CRYPTOPP_STATIC_CONSTEXPR const char *CRYPTOPP_API SHA224::StaticAlgorithmName ( )
inline

The algorithm name.

Returns
C-style string "SHA-224"

Definition at line 129 of file sha.h.

◆ Transform()

static void CRYPTOPP_API SHA224::Transform ( HashWordType *  digest,
const HashWordType *  data 
)
inlinestatic

Operate the hash.

Parameters
digestthe state of the hash
datathe data to be digested

Transform operates the hash on data. When the call is invoked digest holds initial state. Upon return digest holds the hash or updated state.

Hashes which derive from IteratedHashWithStaticTransform provide static member functions InitState and Transform. External classes, like SEAL and MDC, can initialize state with a user provided key and operate the hash on the data with the user supplied state.

Note
On Intel platforms the state array and data must be 16-byte aligned for SSE2.

Definition at line 126 of file sha.h.


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