Lightweight Cryptography Primitives
|
Meta-information about a hash algorithm that is related to an AEAD. More...
#include <aead-common.h>
Data Fields | |
const char * | name |
size_t | state_size |
unsigned | hash_len |
unsigned | flags |
aead_hash_t | hash |
aead_hash_init_t | init |
aead_hash_update_t | update |
aead_hash_finalize_t | finalize |
aead_xof_absorb_t | absorb |
aead_xof_squeeze_t | squeeze |
Meta-information about a hash algorithm that is related to an AEAD.
Regular hash algorithms should provide the "hash", "init", "update", and "finalize" functions. Extensible Output Functions (XOF's) should proivde the "hash", "init", "absorb", and "squeeze" functions.
aead_xof_absorb_t aead_hash_algorithm_t::absorb |
Incremental XOF absorb function
aead_hash_finalize_t aead_hash_algorithm_t::finalize |
Incremental hash finalize function
unsigned aead_hash_algorithm_t::flags |
Flags for extra features
aead_hash_t aead_hash_algorithm_t::hash |
All in one hashing function
unsigned aead_hash_algorithm_t::hash_len |
Length of the hash in bytes
aead_hash_init_t aead_hash_algorithm_t::init |
Incremental hash/XOF init function
const char* aead_hash_algorithm_t::name |
Name of the hash algorithm
aead_xof_squeeze_t aead_hash_algorithm_t::squeeze |
Incremental XOF squeeze function
size_t aead_hash_algorithm_t::state_size |
Size of the incremental state structure
aead_hash_update_t aead_hash_algorithm_t::update |
Incremental hash update function