libkeccak7
Keccak-family hashing library
Overview
libkeccak is a bit-oriented lanewise implementation of the Keccak-family with support for extend output size, state marshalling, algorithm tuning with implicit parameters, secure erasure of sensitive data, and HMAC.
Future direction
Keccak-3200 may be implemented in the future.
See also
libkeccak_spec_sha3(3)
Configure SHA-3 hashing parameters
libkeccak_spec_cshake(3)
Configure cSHAKE hashing parameters
libkeccak_spec_rawshake(3)
Configure RawSHAKE hashing parameters
libkeccak_spec_shake(3)
Configure SHAKE hashing parameters
libkeccak_spec_check(3)
Validate hashing parameters
libkeccak_generalised_spec_initialise(3)
Set all specification parameters to automatic
libkeccak_degeneralise_spec(3)
Set all specification parameters to automatic
libkeccak_state_initialise(3)
Initialise hash state
libkeccak_state_reset(3)
Reinitialise hash state
libkeccak_state_fast_destroy(3)
Destroys a hash state without erasure
libkeccak_state_wipe_message(3)
Securely erase the message chunk buffer
libkeccak_state_wipe_sponge(3)
Securely erase the Keccak sponge state
libkeccak_state_wipe(3)
Securely erase sensitive data
libkeccak_state_destroy(3)
Destroys a hash state with erasure
libkeccak_state_create(3)
Allocate and initialise hash state
libkeccak_state_fast_free(3)
Destroys and deallocates a hash state without erasure
libkeccak_state_free(3)
Destroys and deallocates a hash state with erasure
libkeccak_state_copy(3)
Copies hash state
libkeccak_state_duplicate(3)
Allocate a duplicate hash state
libkeccak_state_marshal(3)
Marshals a hash state
libkeccak_state_unmarshal(3)
Unharshals a hash state
libkeccak_fast_update(3)
Partially hash a message without erasure
libkeccak_zerocopy_update(3)
Partially hash a message without copying (ADVANCED)
libkeccak_update(3)
Partially hash a message with erasure
libkeccak_cshake_suffix(3)
Get message suffix for cSHAKE hashing
libkeccak_fast_digest(3)
Complete the hashing of a message without erasure
libkeccak_zerocopy_digest(3)
Complete the hashing of a message without copying (ADVANCED)
libkeccak_digest(3)
Complete the hashing of a message with erasure
libkeccak_simple_squeeze(3)
Runs Keccak-f a number of times
libkeccak_fast_squeeze(3)
Runs the squeeze phase a number of times
libkeccak_squeeze(3)
Runs the squeeze phase
libkeccak_generalised_sum_fd(3)
Calculate the hash of a file
libkeccak_keccaksum_fd(3)
Calculate a Keccak hashsum of a file
libkeccak_sha3sum_fd(3)
Calculate a SHA-3 hashsum of a file
libkeccak_rawshakesum_fd(3)
Calculate a RawSHAKE hashsum of a file
libkeccak_shakesum_fd(3)
Calculate a SHAKE hashsum of a file
libkeccak_behex_lower(3)
Converts a binary hashsum to lower case hexadecimal
libkeccak_behex_upper(3)
Converts a binary hashsum to upper case hexadecimal
libkeccak_unhex(3)
Converts a hexadecimal hashsum to binary
libkeccak_hmac_set_key(3)
Changes key for a the HMAC-hashing state
libkeccak_hmac_initialise(3)
Initialise HMAC-hashing state
libkeccak_hmac_create(3)
Allocate and initialise HMAC-hashing state
libkeccak_hmac_reset(3)
Reinitialise a HMAC-hashing state
libkeccak_hmac_wipe(3)
Securely erase sensitive data from a HMAC-hashing state
libkeccak_hmac_fast_destroy(3)
Destroys an HMAC-hashing state without erasure
libkeccak_hmac_destroy(3)
Destroys an HMAC-hashing state with erasure
libkeccak_hmac_fast_free(3)
Destroys and deallocates an HMAC-hashing state without erasure
libkeccak_hmac_free(3)
Destroys and deallocates an HMAC-hashing state with erasure
libkeccak_hmac_copy(3)
Copies an HMAC-hashing state
libkeccak_hmac_duplicate(3)
Allocate a duplicate an HMAC-hashing state
libkeccak_hmac_marshal(3)
Marshals an HMAC-hashing state
libkeccak_hmac_unmarshal(3)
Unharshals an HMAC-hashing state
libkeccak_hmac_fast_update(3)
Partially HMAC-hash a message without erasure
libkeccak_hmac_update(3)
Partially HMAC-hash a message with erasure
libkeccak_hmac_fast_digest(3)
Complete the HMAC-hashing of a message without erasure
libkeccak_hmac_digest(3)
Complete the HMAC-hashing of a message with erasure