Awesome
Tornado Cash but with Poseidon Hash
WARNING: This project is unaudited, please don't use in the production.
We copy and modify the Tornado Cash and implement the optimization suggestions in the a Tornado audit report.
Specifically we
- Use Poseidon Hash for tree hashing, nullifier hashing, and commitment construction
- Use the following suggested construction to allow nullifier reuse
commitment = PoseidonHash(nullifier, 0)
nullifierHash = PoseidonHash(nullifier, 1, leafIndex)
Build
First, you must have the Circom 2 compiler installed. See installation instructions for details.
The build step compiles the circuit, does untrusted setup, generates verifier contract, and compiles all the contracts. It could take a while at the setup step.
npm install
npm run build
npm run test
Benchmark
npm run info