In this article I will cover:
What is Tornado Cash?
Tornado Cash is a privacy tool (I chose the word tool to be broad and not confusing. You may see others define it as protocol, program, etc.) equipped with non-custodial (meaning the depositor retains full control over their deposited funds) technology based on strong cryptography (zkSNARKs which stands for Zero-Knowledge Succinct Non-Interactive Argument of Knowledge and means that it allows one party - the one who deposits cryptocurrency at first place in this case - to prove it possesses certain information without revealing that information. This proof is made possible using a secret key created before the transaction takes place.).
As stated in one of their Medium posts "Tornado improves transaction privacy by breaking the on-chain link between the recipient and destination addresses. It uses a smart contract that accepts ETH deposits that can be withdrawn with a different address. Whenever a new address withdraws ETH, there is no way to link the withdrawal to the deposit, which makes the procedure completely private."
Looking from another angle, Tornado Cash is a trustless Decentralized Autonomous Organization (DAO). (Check out their relevant Medium post.) There is a lot to unpack here: first, it is trustless which means instead of having to trust someone to do something for you, you replace the person and trust the code. Second, it is a DAO which means it is an organization (or call it an entity, a structure or a thing) in which no central governing body (like the board of directors in publicly listed companies) exists; instead the members of the DAO will decide about how to run the organization. The decision making takes place using TORN token pursuant to the governance rules that was defined by the developing team. (Here)
How does it work?
Here is an example of how it works:
Person A goes to the Tornado Cash user interface --> Person A deposits funds using a web3 compliant wallet and gets a "note" (consider "note" as "the money transfer control number" you would get when you would go to get money from a Western Union agent or like a code name that give you access to something) --> Person A waits till some other deposits are made and enter the pool --> Person A withdraw funds by providing the "note" with new address that is generated by Cash Tornado using a new wallet or Relayer.
You may rightly wonder if the "note" could be used for connecting the deposit and withdrawal. You are right indeed, and that is what Tornado Cash started to provide as their compliance tool. Such a report could be used by whoever has the "note" which is normally the person who did the transaction. (It seems that OFAC was not satisfied with this!)
Why did OFAC designate Tornado Cash?
OFAC designated Tornado Cash under section 1 (a)(i)(D) of Executive Order 13694 for "having materially assisted, sponsored, or provided financial, material, or technological support for, or goods or services to or in support of, a cyber-enabled activity originating from, or directed by persons located, in whole or in substantial part, outside the United States that is reasonably likely to result in, or has materially contributed to, a significant threat to the national security, foreign policy, or economic health or financial stability of the United States and that has the purpose or effect of causing a significant misappropriation of funds or economic resources, trade secrets, personal identifiers, or financial information for commercial or competitive advantage or private financial gain."
A report published by Elliptic showed that approximately a fifth of transactions that went through Tornado Cash were related to an illicit activity including dealing with some sanctioned entities. (That means almost 80% of the transactions were not related to illicit activities!) OFAC in its accompanying press release mentioned that, among other things, Tornado cash was used to hide the trace of over $455 million (at the time) stolen by the Lazarus Group, a Democratic People’s Republic of Korea (DPRK) state-sponsored hacking group that was sanctioned by the U.S. in 2019.
So basically even though OFAC did not say that Tornado Cash is a "bad actor," it sanctioned Tornado Cash because it helped the bad actors breaking the traceability of their transactions.
What does the designation of Tornado Cash mean?
It means that all property and interests in property (means an interest of any nature whatsoever, direct or indirect) that (i) are in the United States at the time of designation; (ii) later come within the United States; or (iii) come within the possession or control of any United States person, of Tornado Cash are blocked and may not be transferred, paid, exported, withdrawn, or otherwise dealt in. Also, the making of any contribution or provision of funds, goods, or services by, to, or for the benefit of Tornado Cash; and the receipt of any contribution or provision of funds, goods, or services from Tornado Cash.
In short, not only all the properties of Tornado Cash should be blocked (frozen) by U.S. persons (e.g. Circle) no U.S. can deal with it for most part. That means a U.S. person cannot deposit funds in Tornado Cash without violating OFAC regulations.
Did OFAC have the authority to designate a couple of smart contracts, a program, lines of code, or a DAO?
I think it did. Executive Order 13694 granted the authority to the secretary of the Treasury to impose blocking sanctions on certain "persons" as defined in the order. The secretary of the Treasury in turn gave this power to the OFAC which took this action. Person under this Executive Order is defined as an individual or an entity. The entity is defined as "a partnership, association, trust, joint venture, corporation, group, subgroup, or other organization." The last part of the entity’s definition reads "other organization." Tornado Cash as stated by itself and one of the developers who created it is a DAO. Even if DAOs are made of a couple of smart contracts they are still an organization because they can fall under broad scope of “other organization.” Black's law dictionary defines organization as "[a] group of people, structured in a specific way to achieve a series of shared goals," which in my opinion includes Tornado Cash as a DAO. Why? Because the people is not a main feature of an organization. There are organizations that are aggregation of other entities (which are not people). I believe being decentralized and autonomous are irrelevant features for our discussion here (whether OFAC could designate Tornado Cash or not).
Also, let's not forget that OFAC will enjoy a very high deference if someone wants to challenge it on this ground.
Finally, the codes or the smart contracts that were tokenized are basically digital assets that belonged to Tornado Cash as a DAO. (Did they? What do you think?) Tornado Cash making its program open source does not change that. Therefore, OFAC which has the power to designate the DAO would require freezing of the assets of the DAO. (I would love to hear what you think about this part!)
What is new about it?
This is the first time that OFAC designates a decentralized organization. OFAC had previously designated a mixer, Blender.io, but that one was a centralized mixer meaning that there was a team with control over the mixer behind it which would accept deposits and give funds with a new address. In this case, the entire mixing was done by smart contracts which are lines of codes.
What’s now? What should be blocked?
First of all, the blocking obligations are only for the U.S. persons. Second, the notion of blocking funds came from conventional banking. In that world, if a fund was to be blocked (frozen) the financial institution would have to move funds to another interest-bearing account and report it to OFAC within 10 days from the time it blocked the transaction. In the Crypto world, the VASPs are expected to do similar things with the exception that they don't have to put the blocked funds in a separate interest-bearing account. They have to avoid making the blocked funds available to their customer or any third party. Check out OFAC FAQ 646 for more info. (Note: seizing and blocking are different. In blocking the ownership rests with the sanctions target while when seizure takes place the ownership is being taken away. Seizure is way more complex and requires courts' involvement.)
Remember that the 30 plus addresses that were listed by OFAC are only to help individuals and entities to comply. If there are other addresses now or later that are for Tornado Cash, they are also subject to the same sanctions.
Are those who previously used Tornado Cash in breach of sanctions?
No. Sanctions are not imposed retrospectively. If a U.S. person dealt with Tornado Cash, that does not mean they (the U.S. person) are sanctioned today or they breached the U.S. sanctions.
What if an incoming transaction has indication of previous dealings with Tornado Cash?
Here I would like to make a distinction and that is whether the transaction is coming directly from Tornado Cash or whether the Tornado Cash transaction is a couple of "hops" away.
In the former case (coming directly from Tornado Cash), I would like to argue that the incoming assets should not be blocked because Tornado Cash has no interest in it. Transactions on blockchain are irreversible and instant (after confirmation). Once initiated and confirmed there is no interest of the sender attached to it anymore. This argument may not be accepted by OFAC considering that OFAC interprets interest very broadly. In cases of incoming transactions from sanctioned banks to and from non-sanctioned parties, OFAC expects a block by the U.S. financial institutions and then would encourage a license to unblock the funds (which in my experience works pretty fast in such cases). I suggest reaching out to the OFAC hotline if you have a transaction that is coming from Tornado Cash. In the meantime, do not make it available to your customer. For outgoing transactions to Tornado Cash, I believe that they should be blocked. Because if you do not block then you make funds available to a sanctioned "entity" (or thing).
In the latter case (few hops away), the totality of circumstances should be considered (and this is only for incoming transactions because for outgoing transactions if the transaction is going to end up to Tornado Cash, you cannot detect it unless you have a crystal ball and could predict the future). Treat this as a red flag but do not block up front solely for this reason. Perhaps it is better to double check other information in your possession to see if the customer is involved in a potential violation. You may even ask the customer.
Can a U.S. person vote in any upcoming event for Tornado Cash?
No they cannot. Voting could be interpreted as a sort of contribution for the benefit of the blocked organization and therefore prohibited. Take a look at FAQ 568 (which is in a different program yet helpful) where OFAC states board members of a sanctioned entity may not continue their board membership without a specific license from OFAC.
Can someone else use the same set of codes and create another mixer?
This one is interesting. I think from a regulatory point of view it is possible but the odds of that person getting designated itself is very high.
Why did many services including GitHub and Discord stop their services to Tornado Cash while some like Twitter, Medium, and LinkedIn did not?
Once a person (or a thing) is designated as a SDN then provision of services to that person will be prohibited. Basically, all these companies are providing services. So they have to stop such services and that happens by cutting the user's access and removing their content. However, there are exemptions and licenses in place that are relevant. Exempt transactions are not under sanctions at first place, while licensed transactions are transactions that would be prohibited had OFAC did not issue a license.
One of the most important exemptions are for personal communication (which means any postal, telegraphic, telephonic, or other personal communication that does not involve the transfer of anything of value). Even though the Cyber-related Sanctions Regulations (31 C.F.R. 578) in its abbreviated form do not include exemptions, they are applicable because of the underlying authority which is IEEPA. So basically the social media services that could somehow fit under personal communication (or other exemptions or license - e.g. informational materials if applicable) may continue working with Tornado Cash. If; however, they are providing a service that is broader than the scope of exemptions or licenses they need to cut the services. Also, remember that no one is forced to keep a user. In many cases, companies cut a sanctioned person regardless of exemptions or licenses because of the risks associated with keeping such users.
What was the story about some celebrities receiving dust from someone using Tornado Cash?
Many covered the story already, so I will not repeat that again (check here if you want to see what happened).
The interesting thing is that the wallet owners that are U.S. persons are potentially in breach of U.S. sanctions regulations. (I know it is absurd but that is how it is.) Sanctions violations are strict liability violations. That means if a violation happens, it does not matter if the violator knew about it. In this case, the wallet owners received funds from a sanctioned entity (or thing) so they violated the regulations. Having said that, OFAC has discretion on which cases they go after. There is no value in wasting resources on investigating a case in which the "violator" had no knowledge or reason to know or even control about the breach.
Food for thought
I can continue writing about this designation twice as long but I think that is enough for now to keep your interest engaged.
There are few topics that I still have in mind, for example:
What does this action mean for all other developers?
Was it a fair action by OFAC?
What are the unintended effects of this designation and whether those outweigh the benefits of this designation?
Why didn’t OFAC issue licenses to mitigate the unintended consequences at the time of designation?
What are the implications for those that are providing infrastructure in the crypto space?
Would OFAC still be able to designate a DAO whose governance is human-free? In other words, if the tokens use for voting were owned and controlled by lines of code?
Whether OFAC will be challenged by the impacted stakeholders and if so, whether this designation will survive such a challenge?
A lot of it is new and we will know more as we move forward. Let me know what you think by leaving a comment here or sending me a message on LinkedIn or email me at Info@sanctionsexpert.com.