~/bend-docscommunity

src/crypto/blake/blake2s/compress.bend checks

raw source on the hub · import 0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/compress.bend as Compress

Generated by tools/generators/blake2s_gen.py; do not edit. BLAKE2s compression function F (RFC 7693 section 3.2). One round is fully unrolled (eight G steps, constant rotations); each round index selects the SIGMA-permuted message words by a branch, never by a run-time table.

2 imports
import Base
import ./types.bend as T

Definitions

def round source · line 8 · raw

@v:0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.Vector -> @x0:U32 -> @x1:U32 -> @x2:U32 -> @x3:U32 -> @x4:U32 -> @x5:U32 -> @x6:U32 -> @x7:U32 -> @x8:U32 -> @x9:U32 -> @x10:U32 -> @x11:U32 -> @x12:U32 -> @x13:U32 -> @x14:U32 -> @x15:U32 -> 0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.Vector

def flag source · line 109 · raw

@last:Bool -> U32

def init source · line 114 · raw

@h:0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.State -> @t0:U32 -> @t1:U32 -> @last:Bool -> 0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.Vector

def finish source · line 119 · raw

@h:0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.State -> @v:0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.Vector -> 0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.State

def compress source · line 125 · raw

@+h:0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.State -> @+m0:U32 -> @+m1:U32 -> @+m2:U32 -> @+m3:U32 -> @+m4:U32 -> @+m5:U32 -> @+m6:U32 -> @+m7:U32 -> @+m8:U32 -> @+m9:U32 -> @+m10:U32 -> @+m11:U32 -> @+m12:U32 -> @+m13:U32 -> @+m14:U32 -> @+m15:U32 -> @t0:U32 -> @t1:U32 -> @last:Bool -> 0x9ee2e9a299991dcc089fe22c7f3ceb5f/src/crypto/blake/blake2s/types.State

F(h, m, t, f): ten rounds, round r reading the words in SIGMA[r] order.