Created on 18th September 2022
•
Since all transactions on the blockchain are transparent, anonymity is removed in voting processes. If everyone can monitor each other's voting status, privacy cannot be ensured. So we create an optimal infrastructure with a token mixer system, we can use the common ballot box system used in real life exactly. Neither receiver nor outsider won’t be able to track where vote come from with this.
Thanks to Zero Vote, we want to prove that Tornado Cash is not only used for malicious transactions, but can also be used in many systems that need privacy.
Trying that conceptual system has some dead-ends on it. Working with zk-SNARKs besides stealth adresses was a big challenge for us. At the first, we wanted to work with stealth addresses, but we couldn't provide full anonymous structure with them. Then, understanding the ZK stack and implementing the voting system is much more difficult than a normal smart contract. Deciding which data to keep in the contract causes ambiguous situations. We also tried to re-run Tornado Cash, but codes were seperated everywhere. And there was also version differences too.
Technologies used