crypto.hmac #

fn equal #

fn equal(mac1 []byte, mac2 []byte) bool

equal compares 2 MACs for equality, without leaking timing info.
NB: if the lengths of the 2 MACs are different, probably a completely different hash function was used to generate them => no useful timing information.

fn new #

fn new(key []byte, data []byte, hash_func fn ([]byte) []byte, blocksize int) []byte

new returns a HMAC byte array, depending on the hash algorithm used.