Skip to main content

Crate p3_mersenne_31

Crate p3_mersenne_31 

Source
Expand description

The prime field F_p where p = 2^31 - 1.

Structs§

GenericPoseidon2LinearLayersMersenne31
An implementation of the matrix multiplications in the internal and external layers of Poseidon2.
MdsMatrixMersenne31
Mersenne31
The prime field F_p where p = 2^31 - 1.
Mersenne31ComplexRadix2Dit
Mersenne31Dft
The DFT for Mersenne31
Poseidon2ExternalLayerMersenne31
The external layers of the Poseidon2 permutation.
Poseidon2InternalLayerMersenne31
The internal layers of the Poseidon2 permutation.

Constants§

MERSENNE31_POSEIDON2_HALF_FULL_ROUNDS
Number of full rounds per half for Mersenne31 Poseidon2 (RF / 2).
MERSENNE31_POSEIDON2_PARTIAL_ROUNDS_16
Number of partial rounds for Mersenne31 Poseidon2 (width 16).
MERSENNE31_POSEIDON2_PARTIAL_ROUNDS_24
Number of partial rounds for Mersenne31 Poseidon2 (width 24).
MERSENNE31_POSEIDON2_RC_16_EXTERNAL_FINAL
Round constants for width-16 Poseidon2 on Mersenne31.
MERSENNE31_POSEIDON2_RC_16_EXTERNAL_INITIAL
Round constants for width-16 Poseidon2 on Mersenne31.
MERSENNE31_POSEIDON2_RC_16_INTERNAL
Round constants for width-16 Poseidon2 on Mersenne31.
MERSENNE31_POSEIDON2_RC_24_EXTERNAL_FINAL
Round constants for width-24 Poseidon2 on Mersenne31.
MERSENNE31_POSEIDON2_RC_24_EXTERNAL_INITIAL
Round constants for width-24 Poseidon2 on Mersenne31.
MERSENNE31_POSEIDON2_RC_24_INTERNAL
Round constants for width-24 Poseidon2 on Mersenne31.
MERSENNE31_S_BOX_DEGREE
S-box degree for Mersenne31 Poseidon2.

Functions§

default_mersenne31_poseidon2_16
Create a default width-16 Poseidon2 permutation for Mersenne31.
default_mersenne31_poseidon2_24
Create a default width-24 Poseidon2 permutation for Mersenne31.

Type Aliases§

Poseidon2Mersenne31
An implementation of the Poseidon2 hash function specialised to run on the current architecture.