def CrCts.encrypt

bend-osdev-crypto@0.1.0.0 · cts.bend:97

import bend-osdev-crypto@0.1.0.0/cts.bend as Cts
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-crypto@0.1.0.0/octets.bend as O

97# CBC-CS3 encryption of m (at least one block) under a one-block IV
98def CrCts.encrypt(~K: Data, ~Blk: Data, ~bsize: Nat, ~enc: K -> Blk -> Blk, ~blk_of: B.Octets -> Maybe<&2, Blk>, ~blk_to: Blk -> B.Octets, +k: K, +iv: B.Octets, +m: B.Octets) -> Result<&2, &2, Cr.CrError, B.Octets>:
99  Result.map(&2, &2, Cr.CrError, Unit, B.Octets, u => cr.cts.enc.go(~K, ~Blk, ~bsize, ~enc, ~blk_of, ~blk_to, O.CrOct.pieces(bsize, B.Octets.to_list(m)), k, iv, Nil{}), cr.cts.check(bsize, iv, B.Octets.len(m)))

Uses (13)

Used by (1)