def mic.of

bend-osdev-hashes@0.1.0.0 · check.bend:35

import bend-osdev-hashes@0.1.0.0/check.bend as Check
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B
import bend-osdev-hashes@0.1.0.0/hashes.bend as Hs
import bend-osdev-hashes@0.1.0.0/michael.bend as MI

35def mic.of(r: Result<&2, &2, Hs.HsError, Hs.HsW2>, +m: B.Octets) -> String:
36  match r:
37    case Done{+k}:
38      B.Octets.hex(MI.HsMichael.mic(k, m)) ++ " " ++ B.Octets.hex(MI.HsMichael.final(MI.HsMichael.update(MI.HsMichael.update(MI.HsMichael.update(MI.HsMichael.init(k), p1(m)), p2(m)), p3(m))))
39    case Fail{e}:
40      match e:
41        case Hs.HsBadKeyLength{n}:
42          "bad key length " ++ U32.show(U32.from_nat(n))

Uses (16)

Used by (1)