This repository contains a zk-mixer demo based on TornadoCash design. While Tornado uses Pedersen hash function to calculate the leaf nodes of its Merkle tree and MiMC hash function to calculate the path to the root, we use MiMC for both of them.
This demo runs a Merkle tree of 3 levels with capacity of 8 leafs and root history of 2.
To run this demo first run the folowwing command to install the required node modules.
npm install
to generate the proving and verifying key of the circuit run
npm run generator
Then run the mixer using this command
npm run mixer