When Roman Semenov, Alexey Pertsev, and Roman Storm decided to launch a cryptocurrency mixer on Ethereum in 2019, they probably didn’t think they’d have legal issues with it. After all, a cryptocurrency mixer (Tornado Cash, in this case) is just another piece of software, and writing code isn’t established to be illegal. What others do with that code, well, that’s a very different story. And there lies the controversy.
Just as a reminder, what a cryptocurrency mixer or tumbler does is obscure the public transaction trail by mixing the involved coins with others, making it difficult to trace the origin or destination of the funds. In the specific case of
The system achieves privacy by severing the on-chain connection between deposit and withdrawal addresses. Utilizing a smart contract and zero-knowledge proofs (based on pretty advanced math), it enables withdrawals to different addresses from those used for deposits. Additionally, relayers can be employed to withdraw to addresses with no prior ETH balance, ensuring greater anonymity.
Tornado Cash is a privacy tool that can be used by anyone, everywhere. Maybe to protect yourself against surveillance, to keep a business transaction secret, or to safely fund a project or group in a hostile territory. Of course, as the tool it is, it can also be used by malicious parties to launder money, evade taxes, or fund illicit operations. To be fair, USD bills could be used for that too, and no one is blaming the Fed for printing them. Which isn’t the case for the Tornado Cash developers.
Things started to look bleak for this mixer and its founders on 8 August 2022, when the US Office of Foreign Assets Control (OFAC)
Barely two days later, Alexey Pertsev was arrested in Amsterdam for suspected involvement in money laundering through Tornado Cash. He’s been especially signaled as a sort of accomplice of the Lazarus Group, the North Korean hacking group considered responsible for the $625-million robbery on the Ronin Network in 2022. These hackers laundered the stolen funds via Tornado Cash.
One year later, in August 2023, Storm and Semenov were also accused of the same thing in the US, and the former one was arrested in Washington. At least,
This is likely the first time ever that an open-source software is blacklisted by the OFAC, which sets a very bad precedent. Several crypto and privacy
For average crypto users and privacy enthusiasts, in practice, all this means that Tornado Cash became illegal to use for all US citizens, residents, and companies, including foreign entities that somehow participate in their market. In case you didn’t know, that includes quite a number from the crypto industry. Therefore, wide censorship against Tornado Cash transactions quickly spread —something that just shouldn’t happen in the decentralized world.
Numerous crypto companies, from exchanges to stablecoin issuers, started to ban or outright freeze any coin that came from this mixer. For instance, the Boston-based Circle, issuer of USD Coin (USD),
Even decentralized platforms followed suit, given that, beyond the ledgers, they’re led by companies that control their websites and front-end interfaces. That includes dYdX, Aave, Uniswap, Balancer, Oasis, Ren, and more.
Being the open-source and decentralized software that it is, Tornado Cash is still very usable by anyone who wants to. It may not be as easy as before, but it’s still there, with a site maintained by its own community. Its smart contract is available on Ethereum, and users can access the platform via the InterPlanetary File System (IPFS) decentralized network. The link is available from the official Twitter (X) account of Tornado Cash (
As for wallets to handle Tornado Cash transactions, the real issue is the RPC (Remote Procedure Call) endpoints. They’re often centralized service providers of node infrastructure for wallets, so it's usually enough to change the provider to one more amenable with this and other mixers. The team behind the IPFS website recommended a list of them and provided instructions for MetaMask users.
One part of censorship is done at the front-end level. That’s only the part users see first (buttons, forms, text, images, etc.), and not the whole system. In
“DeFi users can interact with the platform smart contracts through a CLI [Command-Line Interface] or by forking the platform project to create their own front-end interface (...) Another method is to adopt a nontainted address to interact with censoring DeFi platforms. To do so, users need to transfer their assets from their tainted addresses to non-tainted ones. For instance, we observe that a TC user transfers the withdrawn ETH to a non-tainted address via an intermediary address, to swap ETH to renBTC on Uniswap, i.e., TC 49.8 ETH → addr0 25.3 ETH → addr1 16.5 ETH → addr2 11.97 ETH → Uniswap 0.94 renBTC → addr2. In this way, the non-tainted address addr2 is not blocked by Uniswap.”
Does this way of circumventing censorship look a bit complicated? Well, yes. It could be easier if the whole Ethereum network wasn’t that full of middlemen.
Front-end censorship isn’t the only challenge, though.
For instance, Ethereum’s system for
Censorship can happen at any one of these layers. For example, builders can refuse to include certain "bad" transactions (like those involving Tornado Cash) in their blocks. Even if a builder includes a sanctioned transaction, relayers might obstruct the block from being sent to the proposers. Finally, if the block somehow reaches the proposers, they could refuse to propose it to the blockchain.
Now, even if 90% of builders refuse to include Tornado Cash transactions in their blocks but are still willing to build on top of blocks containing those transactions (from the remaining 10%), then Tornado Cash transactions can still make it through. However, if block producers not only refuse to include those transactions but also reject building on top of any block that contains them, then Tornado Cash transactions would be fully censored.
This means that no new blocks with those transactions would be added to the blockchain, effectively blocking them entirely. Currently,
Why is this level of censorship even possible in a decentralized network? One may ask. The short answer is that, on Ethereum and similar ecosystems, transaction generation isn’t the same as transaction approval. There are several steps (and parties) in the middle, which isn’t exactly ideal for a decentralized network.
All those middlemen (builders, relayers, proposers) are usually formed by companies that could be forced to or decide to comply with the OFAC sanctions for their own convenience, and thus ban Tornado Cash and other transactions. To potentially worsen centralization even more, the US SEC__approved__ eight spot Ether ETF applications in May 2024, which means more ETH in the hands of strictly regulated parties, more ETH being staked in the US jurisdiction, and larger likelihood of censorship for Tornado Cash transactions.
Truth be told, Ethereum isn’t the most
There are no miners, ‘validators’, or other centralized services between users and their transactions in Obyte. Every time a user conducts a transaction referencing past ones, it becomes part of the DAG, immutable and beyond alteration. The DAG partially provides some order for transactions, and the work is completed by
Privacy-centered services like Tornado Cash could work more seamlessly in such a network without middlemen. This way,
Featured Vector Image by Tornado Cash