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)

Uses (15)

Used by (1)