Module EQ := HMAC_Equiv SHA256 EQ256.

(* Specifications: *)
Lemma Equivalence (P : Blist -> Prop) (HP: forall msg, P msg -> NPeano.Nat.divide 8 (length msg)) (kv : Bvector b) (m : HMAC_Abstract.Message P): Vector.to_list (HMAC_spec.HMAC EQ.h_v iv_v (HMAC_Abstract.wrappedSAP _ _ splitAndPad_v) fpad_v EQ.opad_v EQ.ipad_v kv m) = bytesToBits (HMAC_SHA256.HmacCore EQ.ipd EQ.opd (bitsToBytes (HMAC_Abstract.Message2Blist m)) (bitsToBytes (Vector.to_list kv))).