Poseidon2.hs
1 2 -- | Poseidon2 hash function for the bn128 curve's scalar field and t=3. 3 4 module Poseidon2 5 ( Fr 6 , sponge1 , sponge2 7 , calcMerkleRoot , calcMerkleTree 8 , MerkleTree(..) , depthOf , merkleRootOf , treeBottomLayer 9 , MerkleProof(..) , extractMerkleProof , extractMerkleProof_ , reconstructMerkleRoot 10 , compressPair, keyedCompressPair 11 , permutation 12 ) 13 where 14 15 -------------------------------------------------------------------------------- 16 17 import ZK.Algebra.Curves.BN128.Fr.Mont (Fr) 18 19 import Poseidon2.Sponge 20 import Poseidon2.Merkle 21 import Poseidon2.Permutation 22 23 --------------------------------------------------------------------------------