Module evercrypt::hkdf [−][src]
Expand description
HKDF
This module implements HKDF on SHA 1 and SHA 2 (except for SHA 224).
Usage
use evercrypt::prelude::*;
let key = [0x85, 0xa7, 0xcb, 0xaa, 0xe8, 0x25, 0xbb, 0x82, 0xc9, 0xb6, 0xf6, 0xc5, 0xc2, 0xaf, 0x5a, 0xc0, 0x3d, 0x1f, 0x6d, 0xaa, 0x63, 0xd2, 0xa9, 0x3c, 0x18, 0x99, 0x48, 0xec, 0x41, 0xb9, 0xde, 0xd9];
let data = [0xa5, 0x9b];
let expected_tag = [0x0f, 0xe2, 0xf1, 0x3b, 0xba, 0x21, 0x98, 0xf6, 0xdd, 0xa1, 0xa0, 0x84, 0xbe, 0x92, 0x8e, 0x30, 0x4e, 0x9c, 0xb1, 0x6a, 0x56, 0xbc, 0x0b, 0x7b, 0x93, 0x9a, 0x07, 0x32, 0x80, 0x24, 0x43, 0x73];
let len = 32;
let tag = hmac(HmacMode::Sha256, &key, &data, Some(len));
assert_eq!(expected_tag[..], tag[..]);
Functions
HKDF expand using hash function mode
, pre-key material prk
, info
, and output length okm_len
.
Returns the key material in a vector of length okm_len
.
HKDF extract using hash function mode
, salt
, and the input key material ikm
.
Returns the pre-key material in a vector of tag length.
HKDF using hash function mode
, salt
, input key material ikm
, info
, and output length okm_len
.
Calls extract
and expand
with the given input.
Returns the key material in a vector of length okm_len
.