def crc32_pieces

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

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
import bend-osdev-crc@0.1.0.0/crc.bend as C
import bend-osdev-crypto@0.1.0.0/hash.bend as H
import bend-osdev-crypto@0.1.0.0/inst_crc.bend as CR

242# CRC-32 through the hash interface: one-shot, and in three pieces
243def crc32_pieces(+m1: B.Octets, +m2: B.Octets, +m3: B.Octets) -> String:
244  cat(B.Octets.hex(CR.CrCrc32.digest(~C.crc32c.spec(), B.Octets.append(m1, B.Octets.append(m2, m3)))), cat(" ", B.Octets.hex(H.CrHash.of_pieces(~U32, ~CR.CrCrc32.init(~C.crc32c.spec()), ~CR.CrCrc32.update(~C.crc32c.spec()), ~CR.CrCrc32.final(~C.crc32c.spec()), [m1, m2, m3]))))

Uses (13)

Used by (1)