def ad.ec.open.go

bend-osdev-aead@0.1.0.0 · echainiv.bend:65

import bend-osdev-aead@0.1.0.0/echainiv.bend as Echainiv
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B
import bend-osdev-crypto@0.1.0.0/crypto.bend as Cr

65def ad.ec.open.go(~KA: Data, ~KC: Data, ~open: KA -> B.Octets -> B.Octets -> B.Octets -> Result<&2, &2, Cr.CrError, B.Octets>, +k: AdEchainivKey<KA, KC>, aad: B.Octets, +n: Nat, s: Maybe<&2, B.OctetsSplit>) -> Result<&2, &2, Cr.CrError, B.Octets>:
66  match s:
67    case None{}:
68      Fail{Cr.CrTooShort{n}}
69    case Some{B.OctetsSplit{+iv, c}}:
70      open(ad.ec.ka(~KA, ~KC, k), iv, B.Octets.append(aad, iv), c)

Uses (9)

Used by (2)