Keccak hash function
Understanding this Keccak hash function and all it variant

Why is Keccak (SHA-3) a One-Way Hash Function?
A one-way function means that given an output h = H(m), it is computationally infeasible to find the original input m (preimage resistance). Keccak achieves this due to the following technical properties:
1. Keccak’s Sponge Construction Prevents Reversal
Keccak uses a sponge construction, which has two phases:
Absorption: Message blocks are XORed into the state and transformed using Keccak-f permutations.
Squeezing: Output is extracted from the state after several irreversible transformations.
- Once data is mixed into the internal state, it is non-linearly transformed multiple times, making it impossible to isolate the original input. 
- The state contains more bits (1600 bits) than the output (e.g., 256 bits in SHA3-256), meaning information is lost, making inversion impossible. 
2. The Keccak-f Permutation is Cryptographically Strong
The Keccak-f permutation consists of five steps in each round, all contributing to non-invertibility:
1. Theta (Parity Mixing)
- Each bit is mixed with bits from two other columns. 
- Small changes in input cause widespread diffusion across the state. 
2. Rho (Bitwise Rotation)
- Each word is rotated by a unique offset, breaking alignment with previous transformations. 
3. Pi (Lane Permutation)
- Rearranges the state non-linearly, making it impossible to track input positions. 
4. Chi (Nonlinear Layer)
- Applies an AND-XOR transformation, preventing algebraic attacks (no easy linear equations for solving input). 
5. Iota (Round Constant Injection)
- Ensures each round is unique, preventing cycles and fixed points. 
Last updated