39#define SHA3_256_DIGEST_LENGTH 32
44#define SHA3_384_DIGEST_LENGTH 48
49#define SHA3_512_DIGEST_LENGTH 64
56 unsigned char state[200];
78 unsigned char delimitedSuffix);
88 unsigned long long int inputByteLen);
98 unsigned long long int outputByteLen);
164void sha3_256(
void *digest,
const void *data,
size_t len);
175void sha3_384(
void *digest,
const void *data,
size_t len);
186void sha3_512(
void *digest,
const void *data,
size_t len);
void sha3_384_final(keccak_state_t *ctx, void *digest)
SHA3-384 finalization.
void sha3_256_init(keccak_state_t *ctx)
SHA3-256 initialization.
void Keccak_update(keccak_state_t *ctx, const unsigned char *input, unsigned long long int inputByteLen)
Absorbs data into a sponge.
void Keccak_final(keccak_state_t *ctx, unsigned char *output, unsigned long long int outputByteLen)
Squeeze data from a sponge.
void Keccak_init(keccak_state_t *ctx, unsigned int rate, unsigned int capacity, unsigned char delimitedSuffix)
Initialise a sponge based on a keccak-1600 permutation.
void sha3_384_init(keccak_state_t *ctx)
SHA3-384 initialization.
void sha3_384(void *digest, const void *data, size_t len)
A wrapper function to simplify the generation of a hash, this is useful for generating SHA3-384 from ...
void sha3_512(void *digest, const void *data, size_t len)
A wrapper function to simplify the generation of a hash, this is useful for generating SHA3-512 from ...
void sha3_512_final(keccak_state_t *ctx, void *digest)
SHA3-512 finalization.
void sha3_256(void *digest, const void *data, size_t len)
A wrapper function to simplify the generation of a hash, this is useful for generating SHA3-256 from ...
void sha3_update(keccak_state_t *ctx, const void *data, size_t len)
Add bytes into the hash.
void sha3_512_init(keccak_state_t *ctx)
SHA3-512 initialization.
void sha3_256_final(keccak_state_t *ctx, void *digest)
SHA3-256 finalization.
Context for operations on a sponge with keccak permutation.
unsigned int rate
The bitrate of the sponge.
unsigned int rateInBytes
The rate in bytes of the sponge.
unsigned int capacity
The capacity in bits of the sponge.
unsigned char delimitedSuffix
The suffix used for padding.
unsigned int i
Current position within the state.