HMAC-based Extract-and-Expand Key Derivation Function (HKDF) in pure V Language. See RFC 5869 for more detail.
fn new(h crypto.Hash) &Hkdf
fn (k Hkdf) hasher() crypto.Hash
fn (k Hkdf) sum(data []u8) ![]u8
sum return sum of the data for Hkdf hash
fn (k Hkdf) size() !int
size return size of the checksum underlying hash
fn (k Hkdf) hmac(key []u8, data []u8) ![]u8
hmac create new hmac
fn (k Hkdf) extract(salt []u8, ikm []u8) ![]u8
extract create pseudorandom key (prk) from input given.
its output is hmac based hash with length (size) of Hashing checksum size
fn (k Hkdf) expand(prk []u8, info []u8, length int) ![]u8
// expand expand pseudorandom key to build output keying materi.
where length is the length of output keying material in octets (<= 255*HashLen) where HashLen denotes the length of the hash function output in octets