def flip_last

bend-osdev-crypto@0.1.0.0 · check.bend:224

import bend-osdev-crypto@0.1.0.0/check.bend as Check
import Base
import bend-osdev-bytes@0.1.0.0/bytes.bend as B

224# CMAC-AES through the MAC interface: the tag, and whether verify accepts it
225# and refuses it with its last byte changed
226def flip_last(+t: B.Octets) -> B.Octets:
227  B.Octets.append(B.Octets.take(Nat.sub(B.Octets.len(t), 1n), t), B.Octets.of_list([U32.xor(Maybe.default(&2, U32, B.Octets.at(t, Nat.sub(B.Octets.len(t), 1n)), 0), 1)]))

Uses (11)

Used by (2)