5#ifndef BITCOIN_CRYPTO_SHA3_H 
    6#define BITCOIN_CRYPTO_SHA3_H 
   14void KeccakF(uint64_t (&st)[25]);
 
   30    static_assert(
RATE_BITS % (8 * 
sizeof(
m_buffer)) == 0, 
"Rate must be a multiple of 8 bytes");
 
unsigned char m_buffer[8]
static constexpr unsigned RATE_BUFFERS
Sponge rate expressed as a multiple of the buffer size.
SHA3_256 & Write(Span< const unsigned char > data)
SHA3_256 & Finalize(Span< unsigned char > output)
static constexpr size_t OUTPUT_SIZE
static constexpr unsigned RATE_BITS
Sponge rate in bits.
A Span is an object that can refer to a contiguous sequence of objects.
void KeccakF(uint64_t(&st)[25])
The Keccak-f[1600] transform.