6 #ifndef _INC_cHashSHA512_H
7 #define _INC_cHashSHA512_H
30 put_HexDigest(pszHexDigest);
33 static size_t GRAYCALL ComputeHash(BYTE pOutput[k_Size],
const void* pInput,
size_t nInputSize,
bool is384);
34 static size_t GRAYCALL ComputeHmac(BYTE pOutput[k_Size],
const BYTE* pKey,
size_t nKeySize,
const void* pInput,
size_t nInputSize,
bool is384);
51 put_HexDigest(pszHexDigest);
65 static const size_t k_HashSize = 64;
66 static const UINT64 k_K[80];
98 virtual void ResetHash()
override;
99 virtual void ProcessHashBuffer(
const BYTE pBuffer[128])
override;
100 virtual void AddToHash(
const void* pInput,
size_t nSizeIn)
override;
101 virtual size_t FinalizeHash(BYTE* pOutput)
override;
103 virtual void InitHmac(
const BYTE* pKey,
size_t nKeySize)
override;
104 virtual size_t FinalizeHmac(BYTE pOutput[64])
override;
105 virtual void ResetHmac()
override;
132 virtual size_t ComputeHash(BYTE* pOutput,
const BYTE* pInput,
size_t nInputSize)
const override
150 virtual size_t ComputeHash(BYTE* pOutput,
const BYTE* pInput,
size_t nInputSize)
const override
#define GRAYCALL
declare calling convention for static functions so everyone knows the arg passing scheme....
Definition: GrayCore.h:36
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
Definition: cHashBase.h:20
Definition: cHashCode.h:167
Definition: cHashSHA512.h:109
static const size_t k_HashSize
Definition: cHashSHA512.h:113
cHashSHA384Builder()
Definition: cHashSHA512.h:115
Definition: cHashSHA512.h:40
cHashSHA384()
Definition: cHashSHA512.h:47
cHashSHA384(const char *pszHexDigest)
Definition: cHashSHA512.h:49
Definition: cHashSHA512.h:56
virtual ~cHashSHA512Builder()
Definition: cHashSHA512.h:83
cHashSHA512Builder(bool is384=false)
Definition: cHashSHA512.h:78
void SetZeroHash()
Definition: cHashSHA512.h:90
bool m_is384
0 => SHA-512 (64 bytes), else SHA-384 (48 bytes)
Definition: cHashSHA512.h:75
Definition: cHashSHA512.h:19
static size_t GRAYCALL ComputeHash(BYTE pOutput[k_Size], const void *pInput, size_t nInputSize, bool is384)
Definition: cHashSHA512.cpp:27
cHashSHA512() noexcept
Definition: cHashSHA512.h:26
UNITTEST_FRIEND(cHashSHA512)
cHashSHA512(const char *pszHexDigest)
Definition: cHashSHA512.h:28
Definition: cHashTypeDef.h:21
Definition: cHashSHA512.h:121
cHashTypeSHA384()
Definition: cHashSHA512.h:124
virtual size_t ComputeHash(BYTE *pOutput, const BYTE *pInput, size_t nInputSize) const override
Definition: cHashSHA512.h:132
virtual cHashBase * AllocHash(void) const override
Definition: cHashSHA512.h:128
Definition: cHashSHA512.h:139
cHashTypeSHA512()
Definition: cHashSHA512.h:142
virtual size_t ComputeHash(BYTE *pOutput, const BYTE *pInput, size_t nInputSize) const override
Definition: cHashSHA512.h:150
virtual cHashBase * AllocHash(void) const override
Definition: cHashSHA512.h:146
UNITTEST2_PREDEF(cQuadtree)
@ SSL_Hash_SHA512
Definition: cHashCode.h:36
@ SSL_Hash_SHA384
Definition: cHashCode.h:35
static void Zero(void *pData, size_t nSizeBlock) noexcept
Definition: cMem.h:100
static void ZeroSecure(void *pData, size_t nSizeBlock) noexcept
Definition: cMem.h:110