def round

bend-collections-laws-crypto@1.0.0.0 · spec/crypto/blake/blake2b.bend:155

import bend-collections-laws-crypto@1.0.0.0/spec/crypto/blake/blake2b.bend as Blake2b
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/blake/blake2b/types.bend as T

155# RFC 7693 section 3.2, one round of F with schedule s = SIGMA[i mod 10].
156def round(v: T.State, +m: List<&2,T.Lane>, +s: List<&2,Nat>) -> T.State:
157  v = G(v,0n,4n,8n,12n,word(m,s,0n),word(m,s,1n))
158  v = G(v,1n,5n,9n,13n,word(m,s,2n),word(m,s,3n))
159  v = G(v,2n,6n,10n,14n,word(m,s,4n),word(m,s,5n))
160  v = G(v,3n,7n,11n,15n,word(m,s,6n),word(m,s,7n))
161  v = G(v,0n,5n,10n,15n,word(m,s,8n),word(m,s,9n))
162  v = G(v,1n,6n,11n,12n,word(m,s,10n),word(m,s,11n))
163  v = G(v,2n,7n,8n,13n,word(m,s,12n),word(m,s,13n))
164  G(v,3n,4n,9n,14n,word(m,s,14n),word(m,s,15n))

Uses (6)

Used by (14)