def store

bend-collections-laws-crypto@1.0.0.0 · src/crypto/argon2/argon2.bend:239

import bend-collections-laws-crypto@1.0.0.0/src/crypto/argon2/argon2.bend as Argon2
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/argon2/types.bend as A
import bend-collections-laws-crypto@1.0.0.0/src/crypto/argon2/blamka.bend as G
import bend-collections-laws-crypto@1.0.0.0/src/crypto/argon2/memory.bend as M

239# B[l][j] = G(B[l][j-1], B[l'][z']), XORed into the old block after the first pass.
240def store(r0: Bool, +cur: Nat, +prev: A.Block, +refb: A.Block, a: Array<U32>) -> Array<U32>:
241  match r0:
242    case True{}:
243      M.set(cur, G.compress(prev, refb), a)
244    case False{}:
245      store_xor(cur, prev, refb, M.get(cur, a))

Uses (9)

Used by (2)