law ctr_streaming_data

bend-osdev-crypto@0.1.0.0 · LAWS.bend:120

import bend-osdev-crypto@0.1.0.0/LAWS.bend as LAWS
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B
import bend-osdev-crypto@0.1.0.0/stream.bend as St
import bend-osdev-crypto@0.1.0.0/modes.bend as Md

120law ctr_streaming_data:
121  for ~K: Data
122  for ~Blk: Data
123  for ~enc: K -> Blk -> Blk
124  for ~blk_of: B.Octets -> Maybe<&2, Blk>
125  for ~blk_to: Blk -> B.Octets
126  for +s: Md.CrCtrState<K>
127  for +a: B.Octets
128  for +b: B.Octets
129  {St.CrXor.out_data(~Md.CrCtrState<K>, Md.CrCtr.update(~K, ~Blk, ~enc, ~blk_of, ~blk_to, s, B.Octets.append(a, b))) == B.Octets.append(St.CrXor.out_data(~Md.CrCtrState<K>, Md.CrCtr.update(~K, ~Blk, ~enc, ~blk_of, ~blk_to, s, a)), St.CrXor.out_data(~Md.CrCtrState<K>, Md.CrCtr.update(~K, ~Blk, ~enc, ~blk_of, ~blk_to, St.CrXor.out_state(~Md.CrCtrState<K>, Md.CrCtr.update(~K, ~Blk, ~enc, ~blk_of, ~blk_to, s, a)), b))) : B.Octets}

Uses (9)

Used by (0)

No other definition uses this definition.