law hmac_streebog512_streaming

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

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

1489# HMAC over Streebog-512 (hashes): the state after a ++ b is the state after a, then b
1490law hmac_streebog512_streaming:
1491  for s: Hm.CrHmacState<Hs.HsMdState<HST.HsStbCv>>
1492  for +a: B.Octets
1493  for +b: B.Octets
1494  {Hm.CrHmac.update(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.update, s, B.Octets.append(a, b)) == Hm.CrHmac.update(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.update, Hm.CrHmac.update(~Hs.HsMdState<HST.HsStbCv>, ~HST.HsStreebog.update, s, a), b) : Hm.CrHmacState<Hs.HsMdState<HST.HsStbCv>>}

Uses (8)

Used by (0)

No other definition uses this definition.