def aegis

bend-osdev-aead@0.1.0.0 · check.bend:86

import bend-osdev-aead@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-crypto@0.1.0.0/crypto.bend as Cr
import bend-osdev-aead@0.1.0.0/aegis128.bend as Ae

86def aegis(+k: B.Octets, +n: B.Octets, +a: B.Octets, +p: B.Octets) -> String:
87  +r = Ae.AdAegis128.key(k)
88  +c = Result.bind(&2, &2, Cr.CrError, Ae.AdAegisKey, B.Octets, r, kk => Ae.AdAegis128.seal(kk, n, a, p))
89  both(c, Result.bind(&2, &2, Cr.CrError, Ae.AdAegisKey, B.Octets, r, kk => Result.bind(&2, &2, Cr.CrError, B.Octets, B.Octets, c, x => Ae.AdAegis128.open(kk, n, a, x))))

Uses (9)

Used by (1)