Function keyed_hash
fn keyed_hash(key: &[u8; 32], input: &[u8]) -> Hash
The keyed hash function.
This is suitable for use as a message authentication code, for example to
replace an HMAC instance. In that use case, the constant-time equality
checking provided by Hash is almost always a security
requirement, and callers need to be careful not to compare MACs as raw
bytes.
For an incremental version that accepts multiple writes, see Hasher::new_keyed,
Hasher::update, and Hasher::finalize. These two lines are equivalent:
# const KEY: & = &;
let mac = keyed_hash;
# let mac1 = mac;
let mac = new_keyed.update.finalize;
# let mac2 = mac;
# assert_eq!;
For output sizes other than 32 bytes, see Hasher::finalize_xof, and OutputReader.
This function is always single-threaded. For multithreading support, see
Hasher::update_rayon.