law hmac_streebog512_split

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

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/hmac.bend as Hm
import bend-osdev-hashes@0.1.0.0/hashes.bend as Hs
import bend-osdev-hashes@0.1.0.0/streebog.bend as HST

1496# HMAC over Streebog-512 (hashes): the tag in pieces is the tag in one call, for every split
1497law hmac_streebog512_split:
1498  for +kk: Hm.CrHmacKey
1499  for +a: B.Octets
1500  for +b: B.Octets
1501  {Hm.CrHmac.finish(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.init512(), ~HST.HsStreebog.update, ~HST.HsStreebog.final512, Hm.CrHmac.update(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.update, Hm.CrHmac.update(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.update, Hm.CrHmac.start(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.init512(), ~HST.HsStreebog.update, kk), a), b)) == Hm.CrHmac.mac(~HST.HsStreebog.digest512, kk, B.Octets.append(a, b)) : B.Octets}

Uses (16)

Used by (0)

No other definition uses this definition.