def bulk.ccm
bend-osdev-cipher-modes@0.1.0.0 · check.bend:96
import bend-osdev-cipher-modes@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-cipher-modes@0.1.0.0/cipher_modes.bend as M
import bend-osdev-cipher-modes@0.1.0.0/aes_modes.bend as D
96def bulk.ccm(r: Result<&2, &2, M.CmError, B.Octets>, +m: B.Octets) -> String:
97 match r:
98 case Done{+c}:
99 B.Octets.hex(B.Octets.drop(Nat.sub(B.Octets.len(c), 16n), c)) ++ " back " ++ bulk.same(D.CmAes.ccm_decrypt(bulk.key(), 8n, bulk.nonce(), bulk.aad(), c), m)
100 case Fail{e}:
101 "fail " ++ err(e)