Sponge Construction Referenz
Referenz für der sponge und duplex constructions verwendet in SHA-3, keyed hashing, und AEAD.
Sponge Mechanism
A sponge function absorbs input in r-bit blocks (the rate) into a b-bit state, then squeezes output in r-bit blocks. The state size b equals rate plus capacity (r + c = b). Absorption XORs each block into the state and applies the permutation. Squeezing repeatedly applies the permutation and outputs rate bits. The capacity c provides security: collision resistance is min(c/2, c) bits.
- rate r
- Block size for absorb/squeeze
- capacity c
- Security parameter
- state b
- r + c, permutation width
input/output chunk c = 2 * security 1600 for Keccak Duplex and Keyed Modes
The duplex construction generalizes the sponge to allow interleaved input and output, enabling authenticated encryption and streaming. Keyed sponge modes use the key as the initial absorption, providing PRF and MAC functionality. The full-state keyed sponge (Fsponge) absorbs using the full state for higher throughput. These constructions underlie many lightweight AEAD and KMAC designs.
- duplex
- Interleaved I/O
- keyed sponge
- Key as initial absorb
- full-state
- Absorb full width
AEAD, streaming KMAC, PRF higher throughput