law hmac_crc64_split

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

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-word64@0.1.0.0/word64.bend as W
import bend-osdev-crc@0.1.0.0/crc.bend as C
import bend-osdev-crypto@0.1.0.0/hmac.bend as Hm
import bend-osdev-crypto@0.1.0.0/inst_crc.bend as CR

1201# HMAC over CRC-64 of any parameter set (crc): the tag in pieces is the tag in one call, for every split
1202law hmac_crc64_split:
1203  for ~spec: C.Crc64Spec
1204  for +kk: Hm.CrHmacKey
1205  for +a: B.Octets
1206  for +b: B.Octets
1207  {Hm.CrHmac.finish(~W.W64, ~CR.CrCrc64.init(~spec), ~CR.CrCrc64.update(~spec), ~CR.CrCrc64.final(~spec), Hm.CrHmac.update(~W.W64, ~CR.CrCrc64.update(~spec), Hm.CrHmac.update(~W.W64, ~CR.CrCrc64.update(~spec), Hm.CrHmac.start(~W.W64, ~CR.CrCrc64.init(~spec), ~CR.CrCrc64.update(~spec), kk), a), b)) == Hm.CrHmac.mac(~CR.CrCrc64.digest(~spec), kk, B.Octets.append(a, b)) : B.Octets}

Uses (16)

Used by (0)

No other definition uses this definition.