Algebraic Attacks
Interpolation attack
The interpolation attack (Jakobsen and Knudsen, 1997) exploits the fact that the cipher (or permutation) can be expressed as a polynomial of low degree over .
If the permutation after rounds can be represented as a polynomial of degree , then input-output pairs suffice to recover the polynomial via Lagrange interpolation. The attack is feasible when .
Complexity
For an S-box with -element state and full rounds, the degree of the output polynomial in the input is at most (before reduction modulo field equations).
The attack applies when:
This gives the minimum number of rounds for security against interpolation:
Partial round optimization
Poseidon uses a mix of full rounds (S-box on every element) and partial rounds (S-box on one element). The degree growth in partial rounds is slower: only one coordinate has its degree multiplied by per round.
Invariant subspace attack
An invariant subspace is a subspace (or coset) that is mapped to itself (or another coset) by every round of the permutation. If such a subspace exists, inputs from produce outputs in a predictable subset, breaking the random permutation assumption.
AO hash functions must be designed so that the combination of S-box and MDS matrix does not admit invariant subspaces. The round constants play a role in breaking potential invariant structures.
References
- Jakobsen, Knudsen. "The Interpolation Attack on Block Ciphers" (FSE 1997)
- Grassi et al. "Poseidon: A New Hash Function for Zero-Knowledge Proof Systems" (USENIX Security 2021), Section 5