law pkcs7_pad_blocks

bend-osdev-pkcs7@0.1.0.0 · LAWS.bend:18

import bend-osdev-pkcs7@0.1.0.0/LAWS.bend as LAWS
import Base
import bend-osdev-bytes@0.1.1.0/bytes.bend as B
import bend-osdev-mode-core@0.1.0.0/mode_core.bend as M
import bend-osdev-pkcs7@0.1.0.0/pkcs7.bend as P

18# A padded message is a whole number of blocks, for every block size and
19# message
20law pkcs7_pad_blocks:
21  for +bs: Nat
22  for +m: B.Octets
23  {Result.map(&2, &2, M.CmError, B.Octets, Nat, c => Nat.mod(B.Octets.len(c), bs), P.Pkcs7.pad(bs, m)) == Result.map(&2, &2, M.CmError, B.Octets, Nat, c => 0n, P.Pkcs7.pad(bs, m)) : Result<&2, &2, M.CmError, Nat>}

Uses (10)

Used by (1)