Tornado Cash Classic
A fully decentralized protocol for private transactions on Ethereum.
Tornado Cash Nova
Second-generation privacy protocol supporting arbitrary amounts and shielded transfers.
How Tornado Cash works
A user generates a random key (note) and deposits Ether or an ERC20, along with submitting a hash of the note to the Tornado Cash smart contract.
After depositing, users should wait some amount of time before withdrawing to improve their privacy.
A user submits a proof of having the valid key to one of the notes deposited and the contract transfers Ether or the ERC20 to a specified recipient.
How Tornado Cash achieves privacy
Tornado Cash improves transaction privacy by breaking the on-chain link between source and destination addresses. It uses a smart contract that accepts ETH deposits that can be withdrawn by a different address. To preserve privacy a relayer can be used to withdraw to an address with no ETH balance. Whenever ETH is withdrawn by the new address, there is no way to link the withdrawal to the deposit, ensuring complete privacy.
Status of Tornado Cash decentralization
Tornado Cash protocol is fully decentralized and owned by the community: Tornado Cash initial developers have no control over it and are not running any servers
Tornado Cash smart contracts, circuits, and toolchain are fully open sourced.
Tornado Cash smart contracts are unstoppable: there are no admins and no upgradability. Nobody including Tornado Cash initial developers can change it or shut it down.
User interface is hosted by the community on IPFS. It is accessible as long as at least 1 user in the world is hosting it.
Tornado Cash governance and mining smart contracts are deployed by the community in a decentralized way, there is no single deployer.
Protocol parameters and token distribution are controlled by the community via governance.
Trusted setup ceremony for zkSNARKs has 1114 contributions, as long as at least 1 contribution is honest, the zkSNARK keys are secure.
Tornado Cash protocol is developed based on awesome open source research by Zcash team with the help of amazing Ethereum community.
Tornado Cash is completely decentralized, controlled and governed by its community. By acquiring TORN tokens, you can participate by voting on governance proposals and weighing in on the evolution of the protocol.Read More
By using Tornado Cash, you also mine TORN, the governance token of Tornado Cash. The more you use it, the more say you have in the evolution of the protocol.Read More
Maintaining financial privacy is essential to preserving our freedoms. Tornado Cash has built-in tools for proving your transaction history and selectively disclosing Tornado deposits.Read More
Trusted Setup Ceremony
Trusted setup ceremony for zkSNARKs has 1114 contributions, as long as at least 1 contribution is honest, the zkSNARK keys are secure.Read More
Tornado Cash Governance protocol was deployed by community in a decentralized way. It's only possible using CREATE2 opcode and EIP-2470 deployer.Read More
Frequently asked questions
Yes, but one of the reasons Tornado Cash is able to evade shutdowns is its utilization of smart contracts, which are self-executing agreements with the terms encoded directly into the code. These contracts are tamper-proof and immutable once deployed on the blockchain. Additionally, the open-source nature of the contract allows for transparency, enabling anyone to verify the functionality of the code. Furthermore, the open-source interface of Tornado Cash allows for the proliferation of mirror and proxy websites, providing an alternative means of accessing the service, even if the primary website is shut down. This exemplifies the crypto community's efforts to preserve privacy amidst mounting pressure from governments and corporations. It is akin to a game of whack-a-mole, as each time one version is shut down, another emerges. The decentralized and open-source nature makes it challenging to keep track and shut down all iterations.
No, Tornado Cash is a decentralized protocol based on zero knowledge proofs. Its smart contracts are immutable, have no admins, and the proofs are based on strong cryptography. Only the user possessing the Note is able to link deposit and withdrawal.
The Tornado Cash protocol solves only on-chain piece of the privacy. Users also must follow these best practices to achieve privacy.