Secure hash operations

The provided hash functions perform secure hash on input data using the chosen algorithm of SHA-224, SHA-256, SHA-384, SHA-512, SHA-512-224, SHA-512-256, SHA3-224, SHA3-256, SHA3-384, SHA3-512, SHAKE-128, or SHAKE-256.

These functions are declared in: include/ica_api.h.

SHA context structures contain information about how much of the actual work was already performed. Also, it contains the part of the hash that is already produced. For the user, it is only interesting in cases where the message is not hashed at once, because the context is needed for further operations.