def Ccm.encrypt

bend-osdev-cipher-modes@0.1.0.0 · ccm.bend:259

import bend-osdev-cipher-modes@0.1.0.0/ccm.bend as Ccm
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

259# p with associated data aad under the nonce: the ciphertext, then the m-byte tag
260def Ccm.encrypt(~K: Data, ~enc: K -> M.CmBlock -> M.CmBlock, +k: K, +m: Nat, nonce: B.Octets, aad: B.Octets, p: B.Octets) -> Result<&2, &2, M.CmError, B.Octets>:
261  +nv = B.Octets.to_list(nonce)
262  +pv = B.Octets.to_list(p)
263  ccm.e2.fast(~K, ~enc, k, m, nv, B.Octets.to_list(aad), pv, ccm.checks(m, B.len(nv), B.len.fast(pv)))

Uses (10)

Used by (5)