Poseidon2
Overview
This is Starkom's implementation of the Poseidon2 algebraic hash.
The implementation is generic and works on any prime field, but we always allocate exactly 1 state element for capacity, resulting in 128-bit security.
We also provide configurations for the BLS12-381 and BlueSky prime fields, for T=3 and T=4.
[!NOTE] The BLS12-381 configurations are controlled by the
bls12_381feature flag, which is disabled by default.
Usage
The following example functions instantiate Poseidon2 with T=3 and T=4 respectively, squeezing a single element from the output.
use Scalar;
use starkom_poseidon2;