This folder contains hash functions that are typically used in non-interactive proof systems. The hash functions we have implemented are:
Rescue contains two hash functions:
- RPO (Rescue Prime Optimized): https://eprint.iacr.org/2022/1577
- RPX (Rescue Prime eXtension / XHash-12): https://eprint.iacr.org/2023/1045
RPX is ~2x faster than RPO by using cubic extension field arithmetic in the extension rounds.
Pedersen is based on elliptic curves, while Monolith, Poseidon and Rescue Prime are algebraic hash functions.
For an introduction to hash functions, see this intro and its follow-up.