Crypto++ 8.9 Free C++ class library of cryptographic schemes

Public Member Functions | Static Public Member Functions | List of all members
SHA1 Class Reference

SHA-1 message digest. More...

Inheritance diagram for SHA1:

## Public Member Functions
std::string | AlgorithmProvider () const
Public Member Functions inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 20, SHA1 >
unsigned int | DigestSize () const
| Provides the digest size of the hash. More...
Public Member Functions inherited from ClonableImpl< DERIVED, BASE >
Clonable * | Clone () const
| Create a copy of this object. More...

## Static Public Member Functions
static void | InitState (HashWordType *state)
| Initialize state array. More...
static void | Transform (HashWordType *digest, const HashWordType *data)
| Operate the hash. More...
static const char * | StaticAlgorithmName ()
| The algorithm name. More...

## Additional Inherited Members
Static Public Attributes inherited from IteratedHashWithStaticTransform< word32, BigEndian, 64, 20, SHA1 >
static const int | DIGESTSIZE

## Detailed Description

SHA-1 message digest.

See also
  SHA-1

Since
  SHA1 since Crypto++ 1.0, SHA2 since Crypto++ 4.0, ARMv8 SHA since Crypto++ 6.0, Intel SHA since Crypto++ 6.0

Definition at line 26 of file sha.h.

## Member Function Documentation

## ◆ InitState()

static void SHA1::InitState | ( | HashWordType * | state | ) |
| static

Initialize state array.

Parameters

  state | the state of the hash

InitState sets a state array to SHA1 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.

## ◆ Transform()

static void SHA1::Transform | ( | HashWordType * | digest,
|  | const HashWordType * | data
| ) |  |
| static

Operate the hash.

Parameters

  digest | the state of the hash
  data | the 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.

## ◆ StaticAlgorithmName()

static const char* SHA1::StaticAlgorithmName | ( |  | ) |
| inline static

The algorithm name.

Returns
  C-style string "SHA-1"

Definition at line 52 of file sha.h.

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

- sha.h