def cr.lrw.dec.go

bend-osdev-crypto@0.1.0.0 · lrw.bend:89

import bend-osdev-crypto@0.1.0.0/lrw.bend as Lrw
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B
import bend-osdev-gf@0.1.0.0/gf128.bend as G
import bend-osdev-crypto@0.1.0.0/modes.bend as Md

89def cr.lrw.dec.go(~K: Data, ~Blk: Data, ~dec: K -> Blk -> Blk, ~bxor: Blk -> Blk -> Blk, ~blk_of: B.Octets -> Maybe<&2, Blk>, +k: K, +k2: G.Gf128, bs: List<&2, Blk>, +i: G.Gf128, acc: List<&2, Blk>) -> List<&2, Blk>:
90  match bs:
91    case Nil{}:
92      Md.cr.blks.rev_onto(~Blk, acc, Nil{})
93    case Con{c, t}:
94      cr.lrw.dec.go(~K, ~Blk, ~dec, ~bxor, ~blk_of, k, k2, t, cr.lrw.inc(i), Con{cr.lrw.bdec(~K, ~Blk, ~dec, ~bxor, k, cr.lrw.tweak(~Blk, ~blk_of, k2, i), c), acc})

Uses (8)

Used by (9)