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 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.