NAME
libhashsum - Library for calculating the cryptographic hashes
DESCRIPTION
libhashsum provides a unified interface for several
cryptographic hash functions. Currently supported
hash functions are:
Built in
MD2, MD4, MD5, RIPEMD-128, RIPEMD-160, RIPEMD-256,
RIPEMD-320
Via libsha1
SHA0, SHA1
Via libsha2
SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224,
SHA-512/256
Via libkeccak>=1.3
Keccak[], Keccak-224, Keccak-256, Keccak-384,
Keccak-512, SHA3-224, SHA3-256, SHA3-384, SHA3-512,
SHAKE128, SHAKE256, SHAKE512, RawSHAKE128,
RawSHAKE256, RawSHAKE512
Via libblake>=1.1
BLAKE224, BLAKE256, BLAKE384, BLAKE512
libhashsum makes it easy to select at compile-time which
functions to compile support for.
For each hash function, libhashsum has a dedicated
initialiser that may take required parameters for the
hash function. It also have a function that can parse
a string describing any support function with its
parameters. For hash function that do not require
any parameters, it has a function that can select
the appropriate initialiser based on an enum value
that specifies the algorithm.