def finish

bend-collections@1.0.0.0 · src/crypto/blake/blake2b/compress.bend:705

import bend-collections@1.0.0.0/src/crypto/blake/blake2b/compress.bend as Compress
import Base
import bend-collections@1.0.0.0/src/crypto/blake/blake2b/types.bend as T
import bend-collections@1.0.0.0/src/crypto/blake/blake2b/lane.bend as L

705# h[i] ^= v[i] ^ v[i+8].
706def finish(h: T.Chain, v: T.State) -> T.Chain:
707  match h v:
708    case T.H{h0,h1,h2,h3,h4,h5,h6,h7} T.V{v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15}:
709      T.H{L.xor(L.xor(h0,v0),v8),L.xor(L.xor(h1,v1),v9),L.xor(L.xor(h2,v2),v10),L.xor(L.xor(h3,v3),v11),L.xor(L.xor(h4,v4),v12),L.xor(L.xor(h5,v5),v13),L.xor(L.xor(h6,v6),v14),L.xor(L.xor(h7,v7),v15)}

Uses (3)

Used by (2)