Tornado Cash v2.0

A fully decentralized protocol for private transactions on Ethereum and BSC.

Tornado Cash Nova

Second generation privacy protocol with support of arbitrary amounts and shielded transfers.

How Tornado Cash works

Deposit

A user generates a random key (note) and deposits ETH or BNB, along with submitting a hash of the note to the Tornado Cash smart contract.

Wait

After depositing, users should wait some amount of time, at least 2 hours, before withdrawing to improve their privacy.

Withdraw

A user submits a proof of having the valid key to one of the notes deposited and the smart contract transfers ETH or BNB 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 and BNB deposits that can be withdrawn by a different address. To preserve privacy a relayer is used to withdraw to an address with no balance. Whenever ETH or BNB is withdrawn by the new address, there is no way to link the withdrawal to the deposit, ensuring complete privacy when used correctly.

2,539,653

Total ETH deposited


28,214

Unique users

105,925

Total deposits

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 and audited.

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.

Tornado Cash user interface is hosted in Panama on clearnet and TOR and unable to be seized, taken down or censored.

Tornado Cash 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.

Our Products

Governance

Tornado Cash is completely decentralized, controlled and governed by its community. By acquiring STORM tokens, you can participate by voting on governance proposals and weighing in on the evolution of the protocol.

Anonymity Mining

By using Tornado Cash, you also mine STORM, the governance token of Tornado Cash. The more you use it, the more say you have in the evolution of the protocol. Anonymity Mining is still in development.

Compliance

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.

Trusted Setup Ceremony

Trusted setup ceremony for zkSNARKs is projected to have many contributions, as long as at least 1 contribution is honest, the zkSNARK keys are secure.

Initiation

Tornado Cash Governance protocol was deployed by the community in a decentralized way. It's only possible using CREATE2 opcode and EIP-2470 deployer.

Frequently asked questions

If used properly, 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 a deposit and withdrawal.

The Tornado Cash project does not collect any user data. The UI is hosted on a server in the crypto friendly jurisdiction of Panama where there are currently no laws or regulations relating to coin mixing and crypto currency in general.  The UI is also hosted in a decentralized way on TOR and can be accessed using following link tornadocash. Users can also run it locally or use the CLI tool.

The Tornado Cash protocol solves only the on-chain piece of the privacy equation. Users must also follow these best practices to achieve privacy and defeat attempts at chain analysis by linking a deposit to a withdrawal. 

Yes, the Tornado Cash protocol was audited by multiple professional audit companies. Here are the links of the reports:

The Tornado Cash anonymity mining protocol also was audited multiple times:

The Tornado Cash Nova protocol audited too:

  • Relayers are used to withdraw to an account with no ETH or BNB balance. The relayer sends a withdrawal transaction and takes a part of the deposit as compensation (the protocol itself does not collect any fees). The relayer cannot change any withdrawal data including the recipient address. The Tornado Cash v2.0 initial developers do not control or play any role in relaying transactions, the relay network is independent and run autonomously through open source code.

Yes, the the code is published here: https://github.com/Tornadocash2

Yes, you can use the compliance tool to generate a report which proves your source of funds.