24#include "InternalCryptLib.h"
26#define KECCAK1600_WIDTH 1600
28typedef UINT64 uint64_t;
38 unsigned char buf[KECCAK1600_WIDTH / 8 - 32];
55 const unsigned char *inp,
168 OUT UINT8 *MessageDigest
215 IN VOID *ProcedureArgument
UINTN EFIAPI RightEncode(OUT UINT8 *EncBuf, IN UINTN Value)
UINTN EFIAPI LeftEncode(OUT UINT8 *EncBuf, IN UINTN Value)
UINT8 EFIAPI KeccakInit(OUT Keccak1600_Ctx *Context, IN UINT8 Pad, IN UINTN BlockSize, IN UINTN MessageDigstLen)
void SHA3_squeeze(uint64_t A[5][5], unsigned char *out, size_t len, size_t r)
VOID EFIAPI DispatchBlockToAp(VOID)
UINT8 EFIAPI Sha3Final(IN OUT Keccak1600_Ctx *Context, OUT UINT8 *MessageDigest)
VOID EFIAPI ParallelHashApExecute(IN VOID *ProcedureArgument)
UINT8 EFIAPI Sha3Update(IN OUT Keccak1600_Ctx *Context, IN const VOID *Data, IN UINTN DataSize)
size_t SHA3_absorb(uint64_t A[5][5], const unsigned char *inp, size_t len, size_t r)
BOOLEAN EFIAPI CShake256HashAll(IN CONST VOID *Data, IN UINTN DataSize, IN UINTN OutputLen, IN CONST VOID *Name, IN UINTN NameLen, IN CONST VOID *Customization, IN UINTN CustomizationLen, OUT UINT8 *HashValue)