Module sha256_bit_decomp

Module sha256_bit_decomp 

Source
Expand description

Implementation of SHA-256 circuit using bitwise decomposition

Structsยง

CommittedCarryAdder
An adder that just checks the carry bits instead of explicitly computing it through Ripple Carry Adder.
CompressionFn
Computes the single round of compression function
CompressionFnRoundCarries ๐Ÿ”’
HConstants
The Initial IV of SHA
KeySchedule
The Constant KeySchedule
MessageSchedule
Represents the 64 rounds of message schedule. Each Round consists of 32 Wires where the first 16 rounds are identity gates, and the rest are computed as per the spec
MessageScheduleAdderTree ๐Ÿ”’
MessageScheduleState ๐Ÿ”’
Sha256
Sha256 State for multi word computation
Sha256State ๐Ÿ”’

Constantsยง

WORD_SIZE
SHA256 Works with word size 32

Functionsยง

add_get_carry_bits_lsb ๐Ÿ”’
add_get_carry_bits_msb ๐Ÿ”’
carry_name_counter ๐Ÿ”’
sha256_padded_input ๐Ÿ”’

Type Aliasesยง

Sha256Adder
Specific adder for SHA256
Sigma0
See https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf for details about constants Sigma0 of SHA-256
Sigma1
Sigma0 of SHA-256
SmallSigma0
Little Sigma0
SmallSigma1
Little Sigma1