hash package:saltine

Computes a cryptographically collision-resistant hash making hash m == hash m' ==> m == m' highly likely even when under attack.
The hash function hashes a message ByteString and returns a hash. Hashes are always of length hash. The shorthash function hashes a message ByteString with respect to a secret key and returns a very short hash. Short hashes are always of length shorthash. The hash function is designed to be usable as a strong component of DSA, RSA-PSS, key derivation, hash-based message-authentication codes, hash-based ciphers, and various other common applications. Strong means that the security of these applications, when instantiated with hash, is the same as the security of the applications against generic attacks. In particular, the hash function is designed to make finding collisions difficult. hash is currently an implementation of SHA-512. shorthash is currently an implementation of SipHash-2-4 (https://131002.net/siphash/). There has been considerable degradation of public confidence in the security conjectures for many hash functions, including SHA-512. However, for the moment, there do not appear to be alternatives that inspire satisfactory levels of confidence. One can hope that NIST's SHA-3 competition will improve the situation. Sodium includes an implementation of the Blake2b hash function (https://blake2.net/) and is bound here as the generichash function. This is version 2010.08.30 of the hash.html web page. Information about SipHash has been added.
The size of a hash resulting from hash.
The size of a hash resulting from sha256.
An opaque generichash cryptographic secret key.
An opaque shorthash cryptographic secret key.
Computes a generic, keyed hash.
Create a validated Generichash output length
Randomly generates a new key for generichash of the given length.
Randomly generates a new key for shorthash.
Computes a very short, fast keyed hash. This function is defined here to break circulat module imports
Indicates whether a password needs to be rehashed, because the opslimit/memlimit parameters used to hash the password are inconsistent with the supplied values. Returns Nothing if the hash appears to be invalid. Internally this function will always use the current DefaultAlgorithm and hence will give undefined results if a different algorithm was used to hash the password.
Derives a key of the specified length from a password using a salt according to the provided policy. Since this function may cause a huge amount of memory to be allocated, it will return Nothing if the allocation failed and on any other error.
Hashes a password according to the policy This function is non-deterministic and hence in IO. Since this function may cause a huge amount of memory to be allocated, it will return Nothing if the allocation failed and on any other error.
Verifies that a certain password hash was constructed from the supplied password
An opaque generichash cryptographic secret key.
An opaque shorthash cryptographic secret key.
The maximum output size of the generic hash function generichash