docs/book/general/guides/post-censorship/index.md

129 lines
5.7 KiB
Markdown
Raw Normal View History

2023-02-19 02:32:18 +03:00
# Tornado Cash post-censorship
2023-01-28 15:11:19 +03:00
This is a guide to using Tornado Cash after the 8th August crisis, when the OFAC decided to sanction the organisation and the smart contracts. This led to a widespread wave of censorship from middleware service providers, resulting in users being vulnerable and unable to access their assets.
2024-01-19 08:07:53 +03:00
---
2023-02-01 00:20:12 +03:00
2023-02-19 02:32:18 +03:00
**LANGUAGE:  [ZH](zh.md)  |  [ES](es.md)  |  [RU](ru.md)  **
2023-02-01 00:20:12 +03:00
2024-01-19 08:07:53 +03:00
---
2023-01-28 15:11:19 +03:00
2023-02-01 00:20:12 +03:00
### Community build
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
_The source code for the community build can be found on [the offical community git](https://git.tornado.ws/tornadocash/classic-ui). For a tutorial on how to audit the changes [see Micah's guide](https://notes.ethereum.org/@GW1ZUbNKR5iRjjKYx6_dJQ/Bk8zsJ9xj)_.
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Current build version: **d0cee4a**
- Stable build version: **d0cee4a**
- [Changelog](https://git.tornado.ws/tornadocash/classic-ui/commits/branch/master)
2023-01-28 15:11:19 +03:00
2023-01-28 19:55:19 +03:00
**See [instructions on RPC configuration](#RPC) if transacting with sanctioned addresses**
2023-01-28 15:11:19 +03:00
The latest community builds are available at:
2024-01-19 08:07:53 +03:00
- Classic:
- [tornado.ws](https://tornado.ws)
- [ipfs.io/ipns/tornadocash.eth](https://ipfs.io/ipns/tornadocash.eth/)
- Nova:
- [nova.tornado.ws](https://nova.tornado.ws)
- [ipfs.io/ipns/nova.tornadocash.eth](https://ipfs.io/ipns/nova.tornadocash.eth/)
2023-01-28 15:11:19 +03:00
2023-02-01 00:20:12 +03:00
#### TOR network
2023-01-28 15:11:19 +03:00
**Browser history must be enabled when using TOR browser for event caching**.
How to use Tornado site via Tor: [guide](../tor.md).
2023-01-28 15:11:19 +03:00
2023-02-01 00:20:12 +03:00
#### IPFS details
2023-01-28 15:11:19 +03:00
To get the IPFS content hash and link from the domain details. Visit the ENS application domain page at either:
2024-01-19 08:07:53 +03:00
- Classic: [tornadocash.eth](https://app.ens.domains/name/tornadocash.eth/details)
- Nova: [nova.tornadocash.eth](https://app.ens.domains/name/nova.tornadocash.eth/details)
2023-01-28 15:11:19 +03:00
The IPFS link for Classic (tornadocash.eth) for example, will look like:
```
2024-01-19 08:07:53 +03:00
ipfs://bafybeiahmpy4e3p4ao2sqqxc2kb4htwl3oklsjncz2are6vnljecmdgmou
2023-01-28 15:11:19 +03:00
```
2024-01-19 08:07:53 +03:00
The content hash of this link is `bafybeiahmpy4e3p4ao2sqqxc2kb4htwl3oklsjncz2are6vnljecmdgmou`
2023-01-28 15:11:19 +03:00
2023-02-01 00:20:12 +03:00
#### Local IPFS deployment (recommended)
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Brave
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Navigate to the IPFS link in the browser
- When prompted, choose “Use a Brave local IPFS node”
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Chrome / Firefox
- Install IPFS Desktop
- Install IPFS Companion extension ([Chrome](https://chrome.google.com/webstore/detail/ipfs-companion/nibjojkomfdiaoajekhjakgkdhaomnch?hl=en) / [Firefox](https://addons.mozilla.org/en-US/firefox/addon/ipfs-companion/))
- Ensure IPFS Desktop is open and has an internet connection
- Navigate to the IPFS link in the browser
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
#### IPFS gateway usage
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Take the content hash and prefix it followed by a `.` to one of the following IPFS gateways:
- `ipfs.dweb.link`
- https://bafybeiahmpy4e3p4ao2sqqxc2kb4htwl3oklsjncz2are6vnljecmdgmou.ipfs.dweb.link
- `ipfs.cf-ipfs.com`
- https://bafybeiahmpy4e3p4ao2sqqxc2kb4htwl3oklsjncz2are6vnljecmdgmou.ipfs.cf-ipfs.com
- `ipfs.io`
- https://ipfs.io/ipfs/bafybeiahmpy4e3p4ao2sqqxc2kb4htwl3oklsjncz2are6vnljecmdgmou
2023-10-11 15:06:36 +03:00
#### Decentralized sources
2024-01-19 08:07:53 +03:00
All sources (code) of Tornado Cash are also decentralized after [proposal #30](https://tornado.ws/governance/30) and have ENS domains with IPFS contenthash.
2023-10-11 15:06:36 +03:00
Full guide available at ENS domain [sources.tornadocash.eth](https://app.ens.domains/sources.tornadocash.eth), actual IPFS hash: `bafybeia2s5em2xypmtdifuyj62xwgveujygs4vzoqhbqd2um45wbdxxb6u`.
Gateway (direct link): https://ipfs.io/ipfs/bafybeia2s5em2xypmtdifuyj62xwgveujygs4vzoqhbqd2um45wbdxxb6u
2023-02-01 00:20:12 +03:00
### RPC
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
---
2023-01-28 15:11:19 +03:00
2023-02-19 02:32:18 +03:00
**LANGUAGE:  [ZH](zh.md)  |  [ES](es.md)  |  [RU](ru.md)  **
2023-02-01 00:20:12 +03:00
2024-01-19 08:07:53 +03:00
---
2023-02-01 00:20:12 +03:00
2024-01-19 08:07:53 +03:00
- If you want to deposit you may have to change your wallet RPC, as most providers have censored the smart contracts. **The default provider of Metamask, Infura along with Ankr and Alchemy currently do not prohibit transactions to and from the protocol, governance and the TORN token**.
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Try searching for an alternative working endpoint on [Chainlist](https://chainlist.org/), which could take multiple attempts (take note of the ChainID for network configuration). An example of how to change your RPC provider for MetaMask is shown below.
2023-01-28 18:13:01 +03:00
2023-02-19 02:32:18 +03:00
![](../../../.gitbook/assets/zOwfk4k.gif)
2023-01-28 18:13:01 +03:00
2024-01-19 08:07:53 +03:00
- Sometimes visiting the application you could be greeted with the following message, to fix this click "OPEN SETTINGS".
2023-01-28 15:11:19 +03:00
2023-02-19 02:32:18 +03:00
![](../../../.gitbook/assets/xcNzhNG.png)
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- You'll then be displayed a dropdown selection, defaulted to a selection. Click on it and select the "Custom" option.
2023-01-28 18:13:01 +03:00
2023-02-19 02:32:18 +03:00
![](../../../.gitbook/assets/zrY5GEi.png)
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Here enter a non-censoring RPC provider depending on your network and this will resolve application issues.
2023-01-28 18:13:01 +03:00
2023-02-19 02:32:18 +03:00
![](../../../.gitbook/assets/dE13HsA.png)
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
- Then you are freely able to withdraw, deposit, stake or participate in decentralized governance like nothing ever happened.
2023-01-28 15:11:19 +03:00
2024-01-19 08:07:53 +03:00
## FAQ
2023-02-01 00:20:12 +03:00
> Why do I keep recieving the error `Failed to fetch relayers`?
2024-01-19 08:07:53 +03:00
- This error is either related to a poor connection or a result of no available relayers on your network. It usually can be solved by refreshing.
2023-02-01 00:20:12 +03:00
> Why do I keep recieving the error `Failed to fetch proving keys`?
2024-01-19 08:07:53 +03:00
- This error is either related to a poor connection, it usually can be solved by refreshing or changing VPN location for better latency.
2023-02-01 00:20:12 +03:00
2023-02-19 02:32:18 +03:00
> Why do I keep recieving the error `Failed to fetch all deposit events from contract` when trying to withdraw?
2023-02-01 00:20:12 +03:00
2024-01-19 08:07:53 +03:00
- This error is related to a poor connection or using a censored RPC endpoint. To resolve this either:
- change VPN location for better latency
- try a new browser or method of access
- configure the application RPC configuration to an alternative
2023-02-01 00:20:12 +03:00
2023-02-19 02:32:18 +03:00
> Why can't I make a deposit from my wallet?
2023-02-01 00:20:12 +03:00
2024-01-19 08:07:53 +03:00
- Most RPCs censor transactions to the protocol and governance since the OFAC sanctions, you need to configure your wallet RPC to a uncensored endpoint. .