# 龙卷风现金简介

Tornado Cash 是以太坊和币安智能链上用于匿名交易的去中心化协议，通过 zk-SNARK 技术确保隐私

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FnqSTRZB5u10LuFn5zZeB%2Fspaces_-MXflGk4w5pDjjlmPCuF-1972196547_uploads_git-blob-abd4d34155f9622c45ddda2c15d655a546b08610_image.png?alt=media&#x26;token=e14ebc01-4085-4b56-a287-3511c497fa56" alt=""><figcaption></figcaption></figure>

龙卷风现金[Tornado Cash](https://tornadoeth.cash) 是一种**完全去中心化的非托管协议**，允许在加密空间中进行私人交易。作为一种去中心化协议，Tornado.Cash 智能合约已在以太坊区块链中实施，使其具有不可变性。它们既不能被改变，也不能被篡改。因此，没有人 - 包括原始开发人员 - 可以修改或关闭它们。所有治理和挖矿智能合约均由社区以去中心化的方式部署。作为非托管协议，用户在操作 Tornado.Cash 的同时保管自己的加密货币。这意味着每次存款时，他们都会获得私钥，从而可以访问存入的资金，从而使用户可以完全控制自己的资产。

### 隐私是如何实现的？ <a href="#how-is-privacy-achieved" id="how-is-privacy-achieved"></a>

Tornado Cash 通过打破源地址和目标地址之间的链上链接来提高交易隐私。它使用一种智能合约，接受来自一个地址的 ETH 和其他代币存款，并允许从不同的地址提取资金。为了最大限度地提高隐私性，建议采取几个步骤，例如使用中继器进行天然气支付，从一个地址提取资金没有预先存在的余额。更多详细信息请参见*幕后花絮：*[*Tornado.Cash 是如何运作的？*](#how-does-tornado.cash-run)& 保持匿名的提示。

### Tornado.cash 在哪里运营？ <a href="#where-does-tornado.cash-operate" id="where-does-tornado.cash-operate"></a>

自 2019 年成立以来，Tornado Cash 一直**在以太坊区块链上运行**。该协议一直为以太坊区块链处理的六种代币（ETH、DAI、cDAI、USDC、USDT 和 WBTC）提供多样化的固定金额池。自 2021 年 6 月以来，除了以太坊区块链之外，还部署了 Tornado Cash 智能**合约在其他侧链和区块链上**。这些部署使该工具能够支持新代币或受益于 Layer-2 优势，例如更快、更便宜的交易。截至目前，Tornado Cash 正在运行：

* **以太坊区块链**：**ETH** （以太坊），
* **戴**（戴），
* **cDAI** （复合 Dai），
* **USDC** （美元硬币），
* **USDT** （Tether）和**WBTC** （包装比特币），
* **币安智能链**：**BNB** （币安币），
* **多边形网络**：**MATIC** （多边形），
* **Gnosis 链（前 xDAI 链）**：**xDAI** (xDai)，
* **Avalanche 主网**：**AVAX** （Avalanche），
* **乐观，作为ETH （以太坊）**&#x7684;第 2 层，
* **Arbitrum One** ，作为第 2 层**ETH** （以太坊）。

直到 2021 年 12 月，该协议还包括针对其中一些代币的匿名挖掘系统，允许其用户赚取治理代币 ( **TORN** )。用户最终可以通过存入 ETH、DAI、cDAI 和 WBTC 池来在区块链网络上赚取 TORN。 提供有关[*匿名挖矿*](/tornado-cash-classic/ni-ming-wa-kuang)*和*[*Tornado.Cash 代币*](/yi-ban-de/torn)*的更多信息。***借助 TORN 代币，Tornado Cash 用户可以积极参与协议的制定**。社区对于 Tornado Cash 的演变及其功能的改进具有很强的影响力。事实上，通过这种治理，协议参数和代币分配完全处于社区的控制之下。上述所有池都可以在 [tornadoeth.cash](https://tornadoeth.cash)上访问。他们**按照固定金额存款和取款的原则运作**。这意味着每个代币有 2 到 4 个不同的池，仅允许 2 到 4 个不同固定金额的交&#x6613;*（例如 ETH 有四个不同的池，每个金额对应一个池：0.1、1、10 和 100 ETH）*。![](https://tornadocash.gitbook.io/docs/generals/introduction-to-tornado-cash)

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FkD4Ua1OdhUph7b7iDOpJ%2Fspaces_-MXflGk4w5pDjjlmPCuF-1972196547_uploads_git-blob-10617b59222644250f007ed680629c8551479079_logos.png?alt=media&#x26;token=f15e8cd1-6545-492a-90be-9654e01e546c" alt=""><figcaption><p>区块链</p></figcaption></figure>

#### ​龙卷风现金新星 <a href="#tornado-cash-nova" id="tornado-cash-nova"></a>

随着2021 年 12 月[**Tornado Cash Nova** （测试版）](https://tornado-cash.medium.com/tornado-cash-introduces-arbitrary-amounts-shielded-transfers-8df92d93c37c)的发布，协议中添加了**具有独特新功能的升级池。**&#x7528;户不再受固定金额交易的限制。通过添加 Tornado Cash Nova，他们可以从使用**任意金额池和屏蔽传输中受益**。Tornado Cash Nova 在 Gnosis 链（前 xDai 链）上作为 Layer2 运行，以优化速度和成本。它允许**以完全定制的 ETH 金额进行存款和取款**。该池还支持屏蔽交易，用户可以在**保留在池中的同时转移其代币的保管权。Tornado Cash Nova（测试版）可以在** [nova.tornadoeth.cash](https://nova.tornadoeth.cash)上访问。您可以在我们文档的专门部分找到与 Tornado Cash Nova 功能相关的更多信息。

### Tornado.Cash 是如何运行的？ <a href="#how-does-tornado.cash-run" id="how-does-tornado.cash-run"></a>

[Tornado.Cash 功能背后的](https://github.com/tornadocashdev)代码- 智能触点、电路和工具链 - 完全**开源。**&#x54;ornado 作为一个 DAO（去中心化自治组织）。现金治理和挖矿智能合约由其社区部署。该协议还与 zk-SNARK 一起运行，它支持零知识证明，允许用户证明拥有信息而无需透露它。该技术的使用基于**Zcash 团队在以太坊社区的帮助下进行的开源研究**。为了设置 zk-SNARK 初始密钥，Tornado.Cash[可信设置社区](https://tornado-cash.medium.com/tornado-cash-trusted-setup-ceremony-b846e1e00be1)于 2020 年 5 月启动，[已有 1114 名贡献者](https://tornado-cash.medium.com/the-biggest-trusted-setup-ceremony-in-the-world-3c6ab9c8fffa)。如此大量的贡献者使得不可能通过伪造零知识证明来破坏协议。用户界面由社区托管在**IPFS （星际文件系统）上，最大限度地降低了数据删除的风险。**&#x4E8B;实上，只要至少有一个用户托管该界面，该界面就能正常工作。


# 龙卷风现金如何运作?

了解龙卷风现金的工作原理，探索其安全性与隐私保护功能，以及如何在区块链上进行交易

在进入解释和简化Tornado.Cash使用的教程之前,以下是该协议全球功能的总体概述。

<figure><img src="/files/DbwuGPqzeIkWcvIx3c5x" alt=""><figcaption><p>Tornado Cash</p></figcaption></figure>

**龙卷风全球概述现金功能**

为了实现隐私, [龙卷风现金](https://tornadoeth.cash/) **使用智能合约,该合约从一个地址接受令牌存款,并使其能够从其他地址提款**。这些智能合约充当混合所有已存资产的池。一旦通过这些池中的完整新地址提取资金,源与源之间的链式链接 & 目的地坏了。因此,撤回的加密资产被匿名化。当令牌位于龙卷风现金池中时,保管权仍由用户’掌握。因此,用户可以完全控制其令牌。**对于传统的龙卷风现金固定金额池**:

* 当用户将资金放入资金池(又称存款)时,将生成私人票据。此私人票据用作用户以后访问这些资金的私钥。要提取它们,同一用户可以使用其他地址(旧地址或新地址),并借助此私钥收回其资金。

**对于Tornado Cash Nova,新的ETH池具有任意金额和屏蔽转移**:

* 资金直接链接到给定的钱包地址。没有私人票据或钥匙。用户可以通过使用适当的地址连接到池来访问其资金。
* 监护权可以通过将令牌存入池中或通过在池中注册并从另一个地址接收屏蔽转移来获得。

该协议的优势直接与其用户数量及其池的大小相关。用户越多,越多越会向池中存入。但是,为了维护隐私和匿名性,用户必须牢记一些基本规则,例如:

* 使用中继器在提款时支付汽油;
* 在存款和提款之间留出时间;
* 通过等待几笔交易来将资金与人群混合,然后再收回资产。

*在以下位置提供了更多建议:* [*保持匿名的提示*](/yi-ban-de/bao-chi-ni-ming-de-ti-shi)*。*

**zk-SNARK和哈希过程的贡献**

Tornado.Cash使用零知识简洁的非交互式知识参数(也称为zk-SNARK)来验证并允许交易。要处理存款,Tornado.Cash会生成一个字节的随机区域,并通过 [佩德森·哈什(Pedersen Hash)](https://iden3-docs.readthedocs.io/en/latest/iden3_repos/research/publications/zkproof-standards-workshop-2/pedersen-hash/pedersen.html) (因为它与zk-SNARK更友好),然后将令牌和20 MiMC哈希发送到智能合约。然后,合同将其插入Merkle树中。要处理提款,将相同的字节面积分为两个单独的部分 **秘密** 一方面 **无效者**在另一边。无效器已哈希。此无效器是一个公共输入,该输入在链上发送,以使用智能合约和Merkle树数据进行检查。例如,它避免了双重支出。由于zk-SNARK,可以在不泄露任何信息的情况下证明初始承诺和无效者的20 MiMC哈希。即使无效器是公开的,隐私也得以维持,因为无法将哈希无效器链接到初始承诺。此外,即使有关交易的信息存在于Merkle根目录中,有关确切的Merkle路径以及随后的交易位置的信息, 从技术角度来看,存款仍然很简单,但是在天然气方面却很昂贵,因为它们需要计算20 MiMC哈希并更新Merkle树。另一方面,提取过程很复杂,但是更便宜,因为仅零散哈希和零知识证明需要气体。


# 保持匿名的提示

保持匿名的提示，助您安全使用 Tornado Cash。了解隐私保护和加密货币的最佳实践。保护您的资产与身份

保持匿名的提示“龙卷风现金”工具可让您保持匿名链。但是,如果在不保护上游和下游自身的情况下使用该工具,那就没有意义了,匿名性只会是局部的。有一些避免这种情况的做法。

#### 使用TOR和/或VPN <a href="#use-tor-and-or-a-vpn" id="use-tor-and-or-a-vpn"></a>

您的互联网服务提供商(ISP)使用IP地址识别您。为防止第三方知道您正在使用 Tornado.cash,应考虑 [使用TOR](/yi-ban-de/ru-he-tong-guo-tor-shi-yong-tornado-cash) 和/或用于传输的VPN。避免使用免费的VPN,它们倾向于保留甚至出售您的数据。市场上有几个VPN拥有“无日志政策”".

#### 将笔记保存在安全的地方 <a href="#save-your-note-in-a-safe-place" id="save-your-note-in-a-safe-place"></a>

您的便笺提供了原始交易的记录。拥有它的任何人都可以提取存入的资金,但也知道存款地址。请务必使此笔记远离窥视,并将其存储在安全的环境中。

#### 删除数据 <a href="#delete-data" id="delete-data"></a>

您的浏览器是您使用的扩展程序的真实信息来源。每次存款或提款后删除您的数据。如果使用相同的cookie进行两次传输,则您使用的扩展名将能够链接这两个事务。

#### 请耐心 <a href="#be-patient" id="be-patient"></a>

<figure><img src="/files/EQOXqFM4sYw8QedBobfy" alt=""><figcaption></figcaption></figure>

您的匿名性还取决于存款后的交易数量(参见。上面的统计选项卡)。如果您在存入资金后立即提取资金,则可以使用相关概率将存款链接到转帐。等待时间越长,您的匿名设置就越大。

#### 使用多个地址 <a href="#use-multiple-addresses" id="use-multiple-addresses"></a>

也可以链接从一个地址的7 x 10eth存款和向单个地址的7 x 10eth提款。请记住乘以您的提款地址。


# 如何通过 TOR 使用 Tornado Cash

通过 TOR 浏览器，保护您的隐私并安全地使用 Tornado Cash 进行加密货币交易，轻松混合您的资金，确保匿名性和安全性。

[Tornado Cash](https://tornadoeth.cash/)工具确保了链上机密性。但是，在您的交易执行之前和之后，您的隐私可能无法得到保证。这就是为什么我们建议您在使用 Tornado Cash 时使用 TOR。这里有一个快速简单的教程，可以确保您的匿名性。

#### 步&#x9AA4;**#1 - 安装**TOR <a href="#step-1-install-tor" id="step-1-install-tor"></a>

首先，访问： [torproject.org/download/​](https://www.torproject.org/download/) 选择适当的操作系统并单击“下载”。然后运行它。

#### 步&#x9AA4;**#2 - 配置**TOR <a href="#step-2-configure-tor" id="step-2-configure-tor"></a>

首先，在 URL 导航栏上搜索。`about:config`

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2F02TpCn9NcLmrBrkW7d0u%2Faboutconfig2.png?alt=media&#x26;token=87b3e88e-6ca1-4835-8f2a-7f82f664cea9" alt=""><figcaption></figcaption></figure>

搜索`wasm`并打开`javascript.options.wasm`true。

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FfAwiETxEqbDJeyWamqME%2Fwasm.png?alt=media&#x26;token=75ef1e67-f229-4704-8056-73683a4bebe5" alt=""><figcaption></figcaption></figure>

搜索`indexedDB`并`dom.indexedDB.logging.details`打开`dom.indexedDB.logging.enabled`true

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2F6okPjnyr2LQol1xy7uYx%2Findexeddb.png?alt=media&#x26;token=b709f39b-147b-444c-89dc-5adf6672ab86" alt=""><figcaption></figcaption></figure>

#### 步&#x9AA4;**#3 -**&#x5B89;装 Metamask <a href="#step-3-install-metamask" id="step-3-install-metamask"></a>

去那里： https: //metamask.io[​](https://web.archive.org/web/20220617060935/https://metamask.io/download/)​

首先，点击`Install Metamask for Firefox`。

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2F9XW6t3XxikpYeIQtTjSW%2Fmetamaskhome.png?alt=media&#x26;token=8690a21e-6b36-4f4c-a3d7-53bfd0e05469" alt=""><figcaption></figcaption></figure>

元掩模点击`Add`。

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FXvHr96hUnuz3qRHKnm70%2Faddmetamask.png?alt=media&#x26;token=1e7b9edb-3dbd-4bca-8017-69bf20e5e007" alt=""><figcaption></figcaption></figure>

单击 允许 addons.mozilla.org 安装附加组件`Continue to Installation`。

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2Fqr3H4NCCsWJlyaTuLM1A%2Fdownloadinstall.png?alt=media&#x26;token=08d55058-9333-4537-8f59-405e47a98562" alt=""><figcaption></figcaption></figure>

确认您允许此扩展在私有 Windows 中运行，然后单击`Okay`。然后，您可以将 Metamask 添加到工具栏，方法是右键单击它并将 Metamask 图标拖动到工具栏。

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FlXqzMCMUJOZW8KgumogJ%2Fmetamaskicon(1).gif?alt=media&#x26;token=3b605bd9-6922-4334-8b02-7fdc01580127" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2754767501-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FW3U990Qef6L7w7eSM7Iw%2Fuploads%2FyDboDiIdPt4xtjeDhkMb%2Fallowprivateclickokay.png?alt=media&#x26;token=ab4503f1-e0a7-49be-963d-2481f24d04b5" alt=""><figcaption></figcaption></figure>

#### 步&#x9AA4;**＃4 - 享受您的隐私**😎\*\*\*\* <a href="#step-4-enjoy-your-privacy" id="step-4-enjoy-your-privacy"></a>

您现在可以将[Tornado Cash Classic](https://tornadoeth.cash/)或[Tornado Cash Nova](https://nova.tornadoeth.cash/)与 TOR 结合使用。


# TORN

TORN 使用户能够安全地进行以太坊交易，同时通过 Tornado Cash 协议保护他们的隐私。

## 令牌 <a href="#token" id="token"></a>

TORN是与ERC20兼容的令牌,具有控制 [龙卷风现金](https://tornadoeth.cash/)。TORN持有人可以提出建议并投票通过治理来更改协议。**TORN不是筹款工具或投资机会。以下是TORN的初始分配方式:**

* **5%(500,000吨):** 向早期用户的Airdrop [龙卷风现金](https://tornadoeth.cash/) ETH池
* **10%(1,000,000吨):** 匿名采矿 [龙卷风现金](https://tornadoeth.cash/) ETH池,在1年内线性分布
* **55%(5,500,000吨):** DAO金库将在5年内通过3个月的悬崖线性解锁
* **30%(3,000,000吨):** 创始开发人员和早期支持者将在3年内通过1年的悬崖线性解锁

<figure><img src="/files/jXPCcS6cGzNoTWowQ71p" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/dYFEKrvAO6HAJ3MElvt5" alt=""><figcaption></figcaption></figure>

## 空投 <a href="#f04d" id="f04d"></a>

相信的用户 [龙卷风现金](https://tornadoeth.cash/) 从一开始,在管理协议方面应该有发言权。因此,该协议的早期采用者确实收到了TORN的空投 [所有地址](https://github.com/tornadocash/airdrop/blob/master/airdrop.csv) 存款 龙卷风现金 块之前的ETH池 `11400000`。TORN以不可转让的TORN凭证(vTORN)的形式空投,可以在2020年12月18日至2021年12月18日的1年内以1:1的价格赎回给TORN。未赎回的TORN将在1年后纳入治理合同,并成为DAO财政部的一部分。重新设计的TORN将立即可用。空投金额取决于用户’存款规模和年龄—较大的存款,而较旧的存款将获得更多的TORN。存款大小的乘数是对数的:

<figure><img src="/files/Z4rN1xhYTyxbpK94VYnN" alt=""><figcaption></figcaption></figure>

因此,100 ETH存款获得的令牌是1 ETH存款的两倍。该乘法器允许龙卷风现金的大大小用户在治理中都有发言权。时间乘法器的确切曲线如下所示:

<figure><img src="/files/CmaF0LO5hqWPoD2eJqO3" alt=""><figcaption></figcaption></figure>

确切的空投公式如下:

<figure><img src="/files/eniwsolLoBnmh3vy2T8M" alt=""><figcaption></figcaption></figure>


# 治理

了解 Tornado Cash 的治理结构，参与决策，推动社区发展，共同构建去中心化金融的未来

#### 如何提出建议 ? <a href="#how-to-suggest-a-proposal" id="how-to-suggest-a-proposal"></a>

为了参与Tornado.Cash治理,用户首先需要在治理合同中锁定令牌。如果用户投票或创建提案,则无法在提案执行期结束之前(从提案创建起8.25天)解锁令牌。锁定的令牌也可以委派到另一个地址。要创建建议,用户至少需要 `1,000 TORN`。所有提案必须是智能合约,并带有经过验证的代码,这些代码是从 [治理合同](https://etherscan.io/address/0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce) (使用 `delegatecall`)。这样,可以轻松审核和测试任何治理变更。提案的投票时间为5天。如果提案获得简单的多数票,并且至少有票数,它将成功 `25,000 TORN` 总票数(如果投票率太低,提案将自动失败)。提案成功后,将持续2天。时间锁定后,任何用户都可以执行建议(启动更改)。如果提案在3天后仍未执行,则视为 *已过期* 所有这些初始参数都相对较小,因为早期不会流通很多TORN令牌。但是随着循环供应的增加,治理可能会调整这些阈值。建议可能具有以下性质:

* 在代理中添加新的龙卷风现金池
* 更改AP奖励率参数
* 取消暂停/暂停TORN令牌
* 更改一些核心采矿合同,例如 `TornadoTrees` 合同
* 以上所有方面的组合

<figure><img src="/files/Pe3PMpFVw4PyTr8Oeqga" alt=""><figcaption></figcaption></figure>

还有更多的工作可以做。要确切地了解可以通过协议中的治理进行更改的内容,请通过修饰符查找功能 `onlyGovernance` 在智能合同中。治理功能由红色箭头表示 [此架构图](https://viewer.diagrams.net/?highlight=0000ff\&edit=_blank\&layers=1\&nav=1\&title=tornado-cash-contract-overview.drawio#Uhttps%3A%2F%2Fraw.githubusercontent.com%2FRezan-vm%2Ftornado-cash-edu%2Fmain%2Ftornado-cash-contract-overview.drawio)。注意:本文的某些部分摘自 [这个中等职位。](https://tornado-cash.medium.com/tornado-cash-governance-proposal-a55c5c7d0703) 积分归龙卷风现金团队所有。

<figure><img src="/files/vHt4Wy78Quj29bZjHxQU" alt=""><figcaption></figcaption></figure>

#### 如何投票 ? <a href="#how-to-vote" id="how-to-vote"></a>

您首先需要将TORN令牌存入(或锁定)治理合同中: <https://tornadoeth.cash/governance> 点击 `Manage` -> `Lock Tab`通过单击来批准将TORN令牌转移的治理合同 `Approve` 按钮。确认批准后,选择要存入的金额,然后单击 `Lock`。在钱包中确认交易并等待确认。

<figure><img src="/files/75SqdLO3E6pO6DJLslAs" alt=""><figcaption></figcaption></figure>

表决前,下一个关键步骤是审查提案。合法提案应专门发布 [撕裂社区 ](https://twitter.com/devtornadocash)在“提案”类别下?. 论坛帖子将提供有关该提案的其他背景和论据。阅读主题并对此问题下定决心。\
\
提交提案后,应出现在: <https://tornadoeth.cash/governance> 提案以智能合同的形式实施,对系统进行更改。因此,重要的是要验证智能合约的地址并查看其代码。\
\
在此处找到提案合同的地址:

<figure><img src="/files/ZKtEZAdC4r64Z0calFRK" alt=""><figcaption></figcaption></figure>

在Etherscan上查找合同地址,并确保源代码已验证且可读。

<figure><img src="/files/sOk18iYPwWq7qktc00Tc" alt=""><figcaption></figcaption></figure>

阅读源代码并确保它与论坛帖子中描述的内容匹配。如果您对阅读实体代码不熟悉或不满意, 找一个您信任的人为您审查合同。如果您同意(或不同意)提案代码,那就该投票了!提案的投票窗口为5天。这意味着我们有5天的时间达到25k TORN的法定人数。重要提示:投票后, 从提案提交之日起(5天投票期开始),您的令牌将被锁定8.25天。8.25之后,您可以从治理合同中撤回令牌。请注意,您可以同时对2个提案进行投票,而不会产生额外的锁定期(只有最近提交的提案才对8.25锁定很重要)。投票,只需单击绿色复选标记或红十字,具体取决于您是接受还是拒绝该建议。与Metamask确认交易,您的投票就开始了!

#### 如何委派投票 ? <a href="#how-to-delegate-the-vote" id="how-to-delegate-the-vote"></a>

如果您是TORN令牌持有人,则可以将投票权委托给其他人,而无需向他发送令牌。重要提示: 如果您委派令牌,并且您的代表投票或发起提案,则从代表投票的提案开始之日起,您的令牌将被锁定8.25天。请注意,您始终可以随时取消授权。\
\
要获得授权,请转到: <https://tornadoeth.cash/governance> 您首先需要在治理合同中锁定令牌。\
点击 **`Manage`** -> **`Lock`** 选项卡通过单击来批准治理合同以转移您的TORN令牌 **`Approve`** 按钮。批准确认后,选择要委派的金额,然后单击 **`Lock`**。在钱包中确认交易并等待确认。

<figure><img src="/files/iTlNdNoMNU7P9nkW4rik" alt=""><figcaption></figcaption></figure>

最后一步,是进行实际授权。再去一次 <https://tornadoeth.cash/governance>

点击 **`Manage`** -> **`Delegate`** 选项卡

填写您要委派的地址,然后单击 **`Delegate`**。批准钱包中的交易并等待确认。

<figure><img src="/files/RdpDy0ALvPdGeddIu6fv" alt=""><figcaption></figcaption></figure>

您锁定的余额的全部将被委派。您可以随时取消授权。降级只需使用 `Undelegate` 按钮在 `Manage` -> `Undelegate` 选项卡。


# Staking

通过质押 Tornado Cash 赚取被动收入。查看项目信息、策略和奖励

自成立以来，TORN 代币就被[Tornado Cash](https://tornadoeth.cash/)用户用于治理。其主要用途是允许在链内（通过锁定的 TORN 进行治理提案）和链下（在快照上）提出提案和投票。自执行[Tornado Cash 第 10 个治理提案](https://tornadoeth.cash/governance/10)以来，TORN 代币又获得了另一个有用的用途。事实上，**随着去中心化中继器寄存器的引入，** **所有在治理合约中锁定 TORN 的持有者都获得了权益奖励。**[​TORN](/yi-ban-de/torn)持有者仍然可以像以前一样将其代币锁定在治理合约中以用于治理目的。显着的区别是，他们现在能够从中继器那里获得协议收取的一部分费用。显然，奖励的比例将等于他们锁定的 TORN 的比例。

## **这些收取的费用从哪里来？**

这些费用的收取是通过实施去中心化的中继器注册表实现的。为了在协议 UI 上列出，中继器需要质押一定数量的 TORN（目前由治理设置为`300 TORN`），并保持足够的 TORN 锁定（`40 TORN`目前约为 2022 年 4 月）以便能够向质押合约偿还交易费。此论坛帖子[和](https://twitter.com/devtornadocash)中继[器注册表文档页面更详细地解释了此中继器注册表](/yi-ban-de/ru-he-cheng-wei-yi-ming-zhong-ji-zhe)的功能。简而言之，对于通过中继器方法进行的每次提款，选定的中继器必须从质押余额中向协议支付费用（该费用仍应保持在阈值以上`300 TORN`）。目前，该费用已由治理固定`0.3%`，可以随时通过链上提案和投票进行更改。

## 如何质押 TORN 代币？ <a href="#how-to-stake-torn-token" id="how-to-stake-torn-token"></a>

首先，[将您的钱包连接到 Tornado Cash](/tornado-cash-classic/ru-he-lian-jie-ni-de-qian-bao)。如上所述，锁定 TORN 代币的流程保持不变。

* 它发生在这里➡<https://tornadoeth.cash/governance> ⬅，通过点&#x51FB;**`Manage`**，然后进&#x5165;**`Lock`**&#x9009;项卡
* 需要批准治理合约，才能将您的代币转移到智能合约。为此，您需要单&#x51FB;**`Approve`**&#x6309;钮
* 一旦确认批准，您可以选择要锁定的代币数量，然后单&#x51FB;**`Lock`**
* 之后你所要做的就是确认钱包中的交易并等待确认

<figure><img src="/files/gY2HRTtJyP23lk4aInm9" alt=""><figcaption></figcaption></figure>

## **如何领取您的权益奖励？** <a href="#how-to-stake-torn-token-1" id="how-to-stake-torn-token-1"></a>

现在，您的 TORN 代币已在治理合约中保持锁定状态，您可以领取质押奖励。如何领取？\
\
一切仍在此处进行 ➡ <https://tornadoeth.cash/governance> ⬅ 登录页面后，您将能够在顶部看到您的质押奖励，等待您领取 💰

<figure><img src="/files/7oMESbF6KpKwe4SVEdq7" alt=""><figcaption></figcaption></figure>

单&#x51FB;**`Manage`**->**`Claim`**&#x9009;项卡->**`Claim`** *按钮。*

<figure><img src="/files/ly7kA4rkblbtmyOHKZr2" alt=""><figcaption></figcaption></figure>

*就这样，我们就大功告成了，轻松柠檬榨汁*😉


# 如何在 Uniswap v2 上添加或删除流动性

了解如何在 Uniswap v2 上轻松添加或删除流动性，提高您的交易效率，保护您的资产安全。

在本教程中，我们将了解如何在 Uniswap v2 TORN/ETH 对中添加和删除流动性。

1. 增加流动性
2. 消除流动性

### **1.增加流动性**

1. <https://app.uniswap.org/#/add/v2/ETH?chain=mainnet>

   ​
2. 添加 TORN 和 ETH 对

<figure><img src="/files/CePnPSdb2qthWxm6Mu8n" alt=""><figcaption></figcaption></figure>

3\. 单击“管理”

<figure><img src="/files/AT3FNbbxTnp5Z3sdAsK8" alt=""><figcaption></figcaption></figure>

4.点击添加

<figure><img src="/files/TWOHjFg8IQhvC0DWlbqH" alt=""><figcaption></figcaption></figure>

5\. 选择要添加的数量，然后单击“供应”

<figure><img src="/files/IkTwzK8ULZU3LKVKI2Zx" alt=""><figcaption></figcaption></figure>

6\. 点击确认

<figure><img src="/files/roMNcpKz12h8GogBkV3s" alt=""><figcaption></figcaption></figure>

### **2.消除流动性**

1. <https://app.uniswap.org/#/add/v2/ETH?chain=mainnet>

   ​
2. 添加 TORN 和 ETH 对

<figure><img src="/files/MTH1qXq6o0UZTPeKtBJa" alt=""><figcaption></figcaption></figure>

3\. 点击管理

<figure><img src="/files/ew2wM0wZjcAcTmQ2YPUp" alt=""><figcaption></figcaption></figure>

4\. 点击删除

5\. 选择您希望提取的百分比

<figure><img src="/files/zDwy8uiWyfN5guZhJAPT" alt=""><figcaption></figcaption></figure>

6\. 点击确认

<figure><img src="/files/BfEDlWuA1MWcykgOQcOi" alt=""><figcaption></figcaption></figure>

就这样！🎉​


# 如何成为一名中继者？

了解如何成为 Tornado Cash 的中继者，掌握安全和高效地参与流动性提供的技巧和步骤。

[\
随着Tornado Cash 第 10 个治理提案](https://tornadoeth.cash/governance/10)的执行，任何人都可以成为 Tornado Cash 用户的中继者。

被纳入 Tornado Cash UI 的唯一条件是锁定至少`300 TORN`\*。要保持上架状态，需要锁定足够的 TORN（`40 TORN`目前约为 2022 年 4 月）才能将交易费返还给质押合约。

\**此最低股权可以随时通过治理投票进行更改。*

中继器是 Tornado Cash 生态系统必不可少的一部分。中继器的使用可以保证隐私，因为它们解决了臭名昭著的费用支付难题：如何在保持匿名的同时支付从池中提取代币的费用？

因此，中继器充当第三方并管理整个提款过程。他们直接从转账金额中扣除交易费。他们还对其服务收取额外费用。

自实施[Relayer Registry 提案](https://tornadoeth.cash/governance/10)以来，该协议通过合约直接从中继者的质押余额中收取`StakingReward`每次提款的费用。此费用百分比可能因不同池而异，并且也可能通过链上治理而发生变化。

目前，它固定在`0.3%`。一些池仍然没有费用，要么是因为实例太小而无法分配费用（0.1 ETH、100 DAI/USDT、1000 DAI/USDT），要么是因为 Uni v3 上没有足够的流动性（所有 cDAI 实例）。

### 如何成为一名中继者？ <a href="#how-to-become-a-relayer" id="how-to-become-a-relayer"></a>

任何人都可以通过[中继器注册表用户界面 (UI) ，通过](https://relayers-network.tornadoeth.cash/)**6 个简单的步骤**成为该协议的中继器。下面您将找到加入我们的中继器俱乐部并在 Tornado Cash 去中心化中继器注册表中列出所需的一切。

#### 1. 警告：了解并接受潜在风险 <a href="#id-1.-warning-understand-and-accept-potential-risks" id="id-1.-warning-understand-and-accept-potential-risks"></a>

在您承诺作为中继者与 Tornado Cash 用户分享您的部分旅程之前，您需要了解并接受作为该协议中继者的所有潜在风险。

**用户界面如何选择中继者**

指定中继者的公式如下：

* 所有注册中继者的列表均可从中继者注册智能合约中检索。
* 对于每个中继者，根据其质押的 TORN 和费用计算得分。质押越多，得分越高；费用越高，得分越低。对于以太坊主网，计算得分的公式为 ；对于侧链，计算得分的公式`stake * [1 - 25*(fee-0.33)^2]`为`stake * [1 - 11.89*(fee-0.01)^2]`。
* 然后随机选择一个中继者，根据其计算的分数加权。

#### 2. 设置中继器 <a href="#id-2.-set-up-relayer" id="id-2.-set-up-relayer"></a>

第一个具体步骤是在您的计算机上运行适用于以太坊主网的 Tornado Cash Relayer 软件。所有步骤均在协议的 github 中概述。要成功完成此任务，您必须仔细遵循这些[说明](https://github.com/tornadocashdev/tornado-relayer#deploy-with-docker-compose)。

GitHub - tornadodocash/tornado-relayer,Tornado cash 的中继器.GitHub

完成后，您需要在输入框中插入您的 URL。

<figure><img src="/files/tYfmIim5iV95hGxca173" alt=""><figcaption></figcaption></figure>

强烈建议您使用自己的 RPC 节点。有关如何运行完整节点的说明可[在此处](https://github.com/feshchenkod/rpc-nodes)找到。

#### 3. 设置 ENS 子域名 <a href="#id-3.-set-up-ens-subdomain" id="id-3.-set-up-ens-subdomain"></a>

接下来的步骤包括：

* 为您的中继器创建一个 ENS 域。
* 设置其主网子域。
* 按照以下特定格式向主网子域添加一条包含中继器 URL 的 TXT 记录：

**以太坊中继器（强制）**

TXT 记录

主网-tornado.xxx.eth

goerli-tornado.xxx.eth

**侧链中继器（可选）**

您还可以选择添加子域及其相应的 TXT 记录，以支持除以太坊之外的其他链。侧链中继器使用不同版本的中继器软件。完整的要求和说明可在[此处](https://github.com/tornadocash/tornado-relayer/blob/light/README.md)找到。

TXT 记录

bsc-tornado.xxx.eth

gnosis-tornado.xxx.eth

多边形-tornado.xxx.eth

optimism-tornado.xxx.eth

仲裁-tornado.xxx.eth

雪崩-tornado.xxx.eth

**Nova 中继器（可选）**

Tornado Cash Nova 使用其自己的软件版本。如果您希望成为 Tornado Cash Nova 的中继者，您可以[在此处](https://github.com/tornadocash/tornado-pool-relayer#deploy-with-docker-compose)找到要遵循的说明。

TXT 记录

gnosis-nova.xxx.eth

<figure><img src="/files/Vs99b9peN8BhJTFVRGC4" alt=""><figcaption></figcaption></figure>

#### **4. 设置 Worker** <a href="#id-4.-set-up-workers" id="id-4.-set-up-workers"></a>

工作器是允许您的中继器向用户发送 ZK 证明的地址。默认情况下，第一个工作器是 ENS 域所有者的地址。

为了确保额外的安全级别，我们建议您设置多名工作人员。

只有主网需要您注册工人。所有其他网络都不需要使用注册的工人。

<figure><img src="/files/mG8e3jiZwiUDNbUjbQza" alt=""><figcaption></figcaption></figure>

#### 5. 权益 <a href="#id-5.-stake" id="id-5.-stake"></a>

随着去中心化中继器注册表的实施，质押条件已成为在 Tornado Cash UI 上市的必要条件。请记住，**现在必须质押 TORN 才能将其添加到推荐的中继器列表中。**

Tornado Cash 治理目前设定的最低质押金额&#x4E3A;**`300 TORN`**。Tornado Cash 治理可随时更改此阈值。

当中继器在 Tornado Cash 池中使用时，合约会自动从该质押余额中收取少量 TORN `StakingReward`。这一点至关重要，因为中继器需要锁定足够的 TORN（`40 TORN`目前约为 2022 年 4 月）才能将交易费返还给质押合约。

随后，收取的费用将分配给持有锁定 TORN 代币的 DAO 成员。TORN 通常被锁定以参与链上治理（提交提案和投票）。您可以在此[论坛帖子](https://twitter.com/devtornadocash)和[Staking TORN 文档页面](/yi-ban-de/staking)中找到更多信息。

您质押的 TORN 金额不可索取，且不可退还。

<figure><img src="/files/w9GrBuSbEMS6R9a7lQVj" alt=""><figcaption></figcaption></figure>

#### 6. 总结：最终验证和注册 <a href="#id-6.-summary-final-verification-and-registration" id="id-6.-summary-final-verification-and-registration"></a>

最后但同样重要的一点是，我们建议您在注册之前**仔细检查**摘要中显示的所有信息。

<figure><img src="/files/jRDMZ2RpyuDAvGYMF6WF" alt=""><figcaption></figcaption></figure>

*欢迎加入中继团队！有了你们，隐私才能得到更好的尊重*


# 中继服务

探索 Tornado Cash 中的中继服务，了解其工作原理及如何实现隐私保护。获取最新信息与最佳实践，助您安全交易

Relayer 是增强以太坊交易隐私性的门户。借助尖端技术，它允许用户混合和匿名化他们的 ETH，使交易更加安全和私密。使用 Relayer 控制您的财务隐私；因为您的财务生活应该由您自己掌控。请访问 [relayer.tornadoeth.cash](https://relayer.tornadoeth.cash) 并体验世界上的隐私时代

[<br>](https://docs.tornadoeth.cash/generals/how-to-become-a-relayer)


# 如何配置 MetaMask

了解如何在 Tornado Cash 上配置 MetaMask 钱包。简单易懂的步骤帮助您快速完成设置并开始使用加密货币。

### 如何添加 RPC <a href="#rpc" id="rpc"></a>

* 如果您想存款，您可能需要更改您的钱包 RPC，因为大多数提供商已阻止该协议。**Metamask、Infura 以及 Ankr 和 Alchemy 的默认提供者不禁止使用协议、治理和 TORN 进行交易**。
* 尝试在 [Chainlist](https://chainlist.org) 上或通过 [TornadoRPC](https://rpc.tornadoeth.cash) 寻找替代工作端点，这可能需要几次尝试（注意网络配置的 ChainID。下面提供了如何更改 MetaMask 的 RPC 提供程序的示例。

![Metamask](https://web.archive.org/web/20230512150846im_/https://docs.tornado.ws/.gitbook/assets/zOwfk4k.gif)

有时，访问该应用程序时，您可能会收到以下消息来解决此问题，请单击“打开设置”.

![TornadoCash RPC](https://web.archive.org/web/20230512150846im_/https://docs.tornado.ws/.gitbook/assets/xcNzhNG.png)

然后，您将看到一个下拉选择，默认为一个选择。 单击它并选择“自定义”选项。

![](https://web.archive.org/web/20230512150846im_/https://docs.tornado.ws/.gitbook/assets/zrY5GEi.png)

根据您的网络在此处输入非审查 RPC 提供程序，这将解决应用程序问题。

![](https://web.archive.org/web/20230512150846im_/https://docs.tornado.ws/.gitbook/assets/dE13HsA.png)

然后，您可以自由地取款、存款、质押或参与去中心化治理，就像从未发生过一样。

### FAQ <a href="#faq" id="faq"></a>

> 为什么我总是收到 `Failed to fetch relayers` 的错误消息？

* 此错误要么与连接不良有关，要么与您的网络上没有可用的中继器有关。 通常可以通过刷新来解决。

> 为什么我总是收到 `Failed to fetch proving keys` 的错误消息？

* 此错误与连接不良有关，通常可以通过刷新或更改 VPN 位置以获得更好的延迟来解决。

> 为什么我在尝试提款时一直收到错误`Failed to fetch all deposit events from contract`？

* 此错误与连接不良或使用经过审查的 RPC 端点有关。 要解决此问题：
  * 更改 VPN 位置以获得更好的延迟
  * 尝试新的浏览器或访问方式
  * 将应用程序 RPC 配置配置为替代方案

> 为什么不能从我的钱包中存款？

* 自 OFAC 制裁以来，大多数 RPC 都会审查协议和治理的交易，您需要将钱包 RPC 配置为未经审查的端点。


# Tornado Cash RPC

TornadoCash RPC：快速、注重隐私、支持多网络

**TornadoCash RPC:** [rpc.tornadoeth.cash](https://rpc.tornadoeth.cash)

随着加密货币世界的快速发展，注重隐私的项目的重要性正在稳步增加。TornadoCash 是该领域引人注目的项目之一，旨在为用户提供隐私和安全。在本文中，我们将深入研究 TornadoCash 的 RPC（远程过程调用）服务，探索跨各种网络提供的服务。

<figure><img src="/files/XDtjEooDNSNiDcqqpdWE" alt=""><figcaption><p>Tornado Cash RPC</p></figcaption></figure>

### 什么是 TornadoCash RPC？ <a href="#what-is-tornadocash-rpc" id="what-is-tornadocash-rpc"></a>

TornadoCash RPC 是一种服务，使用户能够在以太坊和其他区块链网络上使用 TornadoCash 协议。RPC 代表远程过程调用，是一种通信协议，允许应用程序调用位于不同服务器上的函数。TornadoCash RPC 利用此功能为用户提供隐私和速度。

### 隐私和安全优先事项 <a href="#privacy-and-security-priorities" id="privacy-and-security-priorities"></a>

TornadoCash 在用户隐私和资产安全方面设定了高标准。用户可以通过 TornadoCash RPC 进行交易，同时保护个人信息并安全地管理资产。此功能允许用户在区块链网络上匿名操作。

### 多**网络支持** <a href="#multi-network-support" id="multi-network-support"></a>

TornadoCash RPC 因其在各种区块链网络上运行的能力而备受关注。以下是可以使用 TornadoCash RPC 的网络：

* 以太坊（ETH）： <https://rpc.tornadoeth.cash/mainnet>
* 以太坊（Sepolia）：<https://rpc.tornadoeth.cash/sepolia>
* 以太坊（[MEV](/yi-ban-de/tornado-cash-rpc/mev-zu-duan-qi)）：<https://rpc.tornadoeth.cash/mev>
* 币安智能链（BSC）：<https://rpc.tornadoeth.cash/binance>
* Polygon (MATIC)：<https://rpc.tornadoeth.cash/polygon>
* 裁判 (ARB)： <https://rpc.tornadoeth.cash/arbitrum>
* 雪崩（AVAX）：<https://rpc.tornadoeth.cash/avax>
* 灵知 (GNO)： <https://rpc.tornadoeth.cash/gnosis>
* 乐观主义(OP)： <https://rpc.tornadoeth.cash/optimism>

这种多网络支持使用户能够在他们喜欢的区块链网络上受益于 TornadoCash 的优势。

### **如何使用？** <a href="#how-to-use" id="how-to-use"></a>

TornadoCash RPC 的使用非常简单。指定相关网络的 RPC 端点后，即可访问 TornadoCash 协议。用户可以参考 TornadoCash 的官方文档，获取有关如何使用 RPC 的详细信息。


# Mev 阻断器

了解如何使用 MEV 阻断器 优化您的 Tornado Cash 体验，确保安全性和隐私性，同时提高交易效率

最大可提取价值 (MEV) 已成为与区块链技术交互的用户（尤其是从事去中心化金融 (DeFi) 活动的用户）关注的重点。MEV 是指矿工或验证者从区块链交易重新排序中可提取的最大价值。虽然它提供了获利机会，但也引发了人们对区块链生态系统内公平性和安全性的担忧。

<figure><img src="/files/dg2n4DdH56nPLmDCTzlH" alt=""><figcaption></figcaption></figure>

为了解决这些问题，MEV-Blocker 应运而生，它是一款突破性的解决方案，旨在保护用户的交易不被利用来获取 MEV。MEV-Blocker 利用先进的技术来保护交易，确保用户保留其活动产生的大部分 MEV。本文档是对 MEV-Blocker 的介绍，详细介绍了它的功能、配置以及用户如何利用它来保护他们的交易，同时最大限度地提高他们在区块链领域的回报。

Mev-Blocker 允许用户获得其交易产生的 MEV 的 90%。默认情况下，Protect 用户的交易将发送到 TornadoRPC Mev-Blocker 节点，该节点将返回其交易产生的 MEV 的 90%。默认情况下，Protect 用户将连接到稳定配置，该配置由 Mev-Blocker 不断调整以优化执行，同时保护用户免受有害 MEV 的影响。本文档指导用户了解 Mev-Blocker 的细节和配置。

MEV-Share 使用户能够回收其交易产生的高达 90% 的 MEV。默认情况下，来自 Protect 用户的交易将被定向到 TornadoRPC Mev-Blocker 节点，这有助于实现此回收。用户会自动连接到稳定配置，TornadoRPC Mev-Blocker 不断优化此设置，以平衡高效执行和对有害 MEV 的保护。本文档提供了有关 Mev-Blocker 机制和各种配置的指南。

高级用户可以通过高级面板或手动配置他们的 Protect RPC 请求来更好地控制他们的交易和偏好。

#### 常见配置 <a href="#common-configurations" id="common-configurations"></a>

**稳定的配置**

稳定配置是 Protect RPC 的默认配置。无需指定查询参数即可使用它。

复制

```
https://rpc.tornadoeth.cash/mev
```

目前，此配置共享以下信息：

* 所有`hash`交易的
* `default_logs`曲线、平衡器和 uniswapV2/V3 风格交易的部分日志（池 ID 和进行交换的事实）
* 交易仅转发给 TornadoRPC Mev 区块生成器

随着我们收集更多数据并微调配置以最大化效益，这种情况可能会随着时间的推移而改变。

**最大隐私**

要使用完全隐私的 Protect，*只需*`hash`在 Protect RPC URL 中设置提示：

复制

```
https://rpc.tornadoeth.cash/mev?trace=hash
```

此配置可确保发送到 MEV-Share 节点的所有可识别交易数据对搜索者隐藏。但是，需要注意的是，这可能会使搜索者更难发现 MEV 机会，从而很可能导致您的 MEV 回扣减少。

**最大反冲**

要使用 Protect 获得最大回扣，请在 Protect RPC URL 中设置*所有提示：*

复制

```
https://rpc.tornadoeth.cash/mev?trace=calldata&trace=contract_address&trace=function_selector&trace=logs&trace=hash
```

此配置为搜索者提供了有关您的交易的全面详细信息，使他们有更好的机会发现更多的 MEV 机会并向您返还更多的 MEV 回扣。

#### 示例 <a href="#examples" id="examples"></a>

以下是一些您可以根据您的目标选择的配置示例。

| 目标                     | TornadoRPC MEV 保护 RPC URL                                                                                             |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------- |
| 稳定的                    | `https://rpc.tornadoeth.cash/mev`                                                                                     |
| 最大隐私                   | `https://rpc.tornadoeth.cash/mev?trace=hash`                                                                          |
| 最大反冲                   | `https://rpc.tornadoeth.cash/mev?trace=calldata&trace=contract_address&trace=function_selector&trace=logs&trace=hash` |
| 添加建造者（与其他建造者共享以加快纳入速度） | `https://rpc.tornadoeth.cash/mev?builder=tornadoRPC&builder=XYZ`                                                      |

#### 配置参考 <a href="#configuration-reference" id="configuration-reference"></a>

Protect RPC 使用 URL 中的查询参数来传达您的偏好。这些参数可以包括有关您的交易的提示、您的交易指向的构建者以及如果您的交易被捆绑，则潜在退款的分配。

**追踪**

要自定义跟踪设置，请使用提示参数来控制交易数据对搜索者的可见性。如果未提供任何跟踪，则将使用默认的稳定跟踪配置。如果您指定一个或多个跟踪，则未包含的任何提示都*将*被禁用。

| 痕迹                  | 描述                                                               |
| ------------------- | ---------------------------------------------------------------- |
| `calldata`          | 共享交易发送给智能合约的数据（如果适用）。如果共享调用数据，函数选择器和合约地址也将被共享。                   |
| `logs`              | 共享执行交易时发出的日志。                                                    |
| `default_logs`      | 分享与 defi 交换相关的特定日志子集。曲线、平衡器和 uniswapV2/V3 风格交易的部分信息（池 ID 和交换的事实） |
| `function_selector` | 共享交易在智能合约上调用的函数的 4 字节标识符。如果共享函数选择器，合约地址也将被共享。                    |
| `contract_address`  | 共享交易接收者的地址；通常是智能合约。                                              |
| `hash`              | 共享交易哈希（或如果发送捆绑包则共享捆绑包哈希）。要使用完全隐私模式，请仅共享此提示和此提示。如果共享其他提示，则始终共享哈希。 |
| `tx_hash`           | 在捆绑包中共享各个 tx 哈希。                                                 |

以下是一个例子：

复制

```
https://rpc.tornadoeth.cash/mev?trace=calldata&trace=logs&trace=hash
```

此配置与搜索者共享您的交易的调用数据、日志和哈希值。它不共享合约地址或函数选择器。

**追踪**

要自定义跟踪设置，请使用提示参数来控制交易数据对搜索者的可见性。如果未提供任何跟踪，则将使用默认的稳定跟踪配置。如果您指定一个或多个跟踪，则未包含的任何提示都*将*被禁用。

| 痕迹                  | 描述                                                               |
| ------------------- | ---------------------------------------------------------------- |
| `calldata`          | 共享交易发送给智能合约的数据（如果适用）。如果共享调用数据，函数选择器和合约地址也将被共享。                   |
| `logs`              | 共享执行交易时发出的日志。                                                    |
| `default_logs`      | 分享与 defi 交换相关的特定日志子集。曲线、平衡器和 uniswapV2/V3 风格交易的部分信息（池 ID 和交换的事实） |
| `function_selector` | 共享交易在智能合约上调用的函数的 4 字节标识符。如果共享函数选择器，合约地址也将被共享。                    |
| `contract_address`  | 共享交易接收者的地址；通常是智能合约。                                              |
| `hash`              | 共享交易哈希（或如果发送捆绑包则共享捆绑包哈希）。要使用完全隐私模式，请仅共享此提示和此提示。如果共享其他提示，则始终共享哈希。 |
| `tx_hash`           | 在捆绑包中共享各个 tx 哈希。                                                 |

以下是一个例子：

复制

```
https://rpc.tornadoeth.cash/mev?trace=calldata&trace=logs&trace=hash
```

此配置与搜索者共享您的交易的调用数据、日志和哈希值。它不共享合约地址或函数选择器。

**建筑商**

要指定接收交易的构建者，请使用该`builder`参数。此参数可以重复多次以包含多个构建者。目前支持以下列出的构建者。

请注意，即使没有明确指定，所有交易都与 Mev-Blocker 区块构建器共享。

| 姓名              | RPC                              |
| --------------- | -------------------------------- |
| 龙卷风RPC          | rpc.tornadoeth 变种cash            |
| 特征值             | builder.eigenphi.io              |
| builder0x69     | builder0x69.io                   |
| 泰坦              | rpc.titanbuilder.xyz             |
| beaverbuild.org | rpc.beaverbuild.org              |
| 构建人工智能          | <https://buildai.net>            |
| f1b.io          | <https://rpc.f1b.io>             |
| 同步              | rsync-builder.xyz                |
| 波霸建造者           | boba-builder.com/searcher/bundle |
| Gambit 实验室      | <https://builder.gmbit.co/rpc>   |
| 有效载荷            | rpc.payload.de                   |
| 洛基              | rpc.lokibuilder.xyz              |
| 企鹅建造            | rpc.penguinbuild.org             |
| 喷射生成器           | rpc.mevshare.jetbldr.xyz         |
| 构建器             | flashbots.rpc.tbuilder.xyz       |

重要的是要明白，虽然添加更多构建器可以提高您的交易包含率，但这也需要您信任这些构建器。以下是如何使用参数的示例`builder`：

复制

```
https://rpc.tornadoeth.cash/mev?builder=tornadoRPC&builder=XYZ
```

此配置将您的交易发送到 ABC 块构建器和 XYZ 块构建器以及 TornadoRPC Mev 块构建器。

**设定优先费用**

通过 Protect RPC 配置交易时，务必确保将优先费（也称为小费）设置为大于零的值。这是确保您的交易不会被忽视的强制性步骤。

为了增加您的交易被区块创建者选中的可能性，从而可能增加您的 MEV 收益，您可以调整交易的优先费。优先费是向矿工或区块创建者支付的额外费用，以激励他们将您的交易纳入区块。

要在使用 Protect RPC 时设置优先费用，您可以将参数添加`priorityFee`到 URL 中，以 Gwei 为单位指定金额：

复制

```
https://rpc.tornadoeth.cash/mev?priorityFee=2
```

复制

```
Priority Fee: >0 ETH
```

这设置了 2 Gwei 的优先费用，向建筑商发出信号，表明您愿意为包含您的交易支付一些额外的费用。

不符合此要求的交易将被区块构建者排除，并且不会包含在区块链中，除非它们被 MEV-Searcher 通过 MEV-Share 作为捆绑包的一部分挑选出来。

**笔记**

* 默认的优先费用通常由当前网络状况和基本费用决定。
* 将优先费用设置得太低可能会导致您的交易被忽略。
* 相反，将其设置得太高可能会导致不必要的成本而没有显著的收益。
* 根据当前网络拥塞情况以及您对速度与成本效率的需求来平衡优先费用非常重要。

**在交易请求中设置优先费用的示例**

发送交易请求时，可以调整字段`maxPriorityFeePerGas`来设置优先费用。例如：

复制

```
{
  "jsonrpc": "2.0",
  "method": "eth_sendTransaction",
  "params": [{
    "from": "0xYourAddress",
    "to": "0xRecipientAddress",
    "value": "0xValue",
    "data": "0xData",
    "maxPriorityFeePerGas": "0x3B9ACA00" // This sets the priority fee to 1 Gwei
  }],
  "id": 1
}
```

注意：`maxPriorityFeePerGas`示例中的值设置为 1 Gwei，仅供参考。实际费用值应根据当前网络状况和您的交易紧急程度进行调整。


# Tornado Cash 智能合约

探索Tornado Cash智能合约，了解如何通过去中心化技术保护您的交易隐私，提升区块链安全性

[​Tornado.Cash 功能背后的](https://github.com/tornadocashdev)代码（智能合约、电路和工具链）完全**开源。**&#x672C;页面重新整理了有关[Tornado Cash](https://twitter.com/devtornadocash)智能合约的所有信息。

### 智能合约地址 <a href="#smart-contracts-adresses" id="smart-contracts-adresses"></a>

#### [Tornado Cash Classic](https://tornadoeth.cash/) - 彩池合约 <a href="#tornado-cash-classic-pools-contracts" id="tornado-cash-classic-pools-contracts"></a>

* 以太坊主网
* 决定
* 乐观
* 平衡记分卡
* xDAI
* 马蒂克
* 阿瓦克斯
* 格尔利


# 本地托管的最小化 UI

了解 Tornado Cash 的本地托管最小化用户界面，提供简洁的隐私保护体验。使用我们优化的工具，轻松实现匿名交易

Tornado Cash 协议可以通过核心开发团队提供的最小化用户界面版本在您的计算机上本地启动。

{% embed url="<https://github.com/tornadocashdev/ui-minified>" %}
Tornado Cash UI Minified
{% endembed %}

#### 步骤＃1：在你的计算机上克隆 Github 存储库 <a href="#step-1-clone-the-github-repository-on-your-computer" id="step-1-clone-the-github-repository-on-your-computer"></a>

通过打开命令行界面，您可以运行以下命令，首先克隆存储库，然后进入新复制的文件夹：

复制

```
1 git clone https://github.com/tornadocashdev/ui-minified.git
2 cd ui-minified
```

#### 步骤2：使用您最喜欢的HTTP服务器提供文件夹服务 <a href="#step-2-serve-the-folder-with-your-favorite-http-server" id="step-2-serve-the-folder-with-your-favorite-http-server"></a>

复制

```
1 python -m SimpleHTTPServer 8080
```

您显然可以使用任何其他 http Web 服务器，例如 [npmjs.com/package/http-server](https://www.npmjs.com/package/http-server)。

#### 步骤＃3：在您最喜欢的 Web 浏览器上的 Localhost 上运行 UI <a href="#step-3-run-the-ui-on-localhost-on-your-favorite-web-browser" id="step-3-run-the-ui-on-localhost-on-your-favorite-web-browser"></a>

最后，你只需要在 Web 浏览器上运行 [http://localhost:8080，让奇迹发生🪄](https://docs-zh.tornadoeth.cash/yi-ban-de/http:/localhost:8080，让奇迹发生🪄)

### 运行 TOR 服务 <a href="#running-a-tor-service" id="running-a-tor-service"></a>

如果您希望在 .onion 域上提供 tornado cash UI，则可以使用 docker-compose 轻松实现。

* 您需要将以下内容粘贴到`docker-compose.ym`

复制

```
1 version: '2'
​
2 services:
3  tornado_ui:
4    image: tornadocashdev/ui
5    restart: always
6    container_name: tornado_ui
7  watchtower:
8    image: v2tec/watchtower
9    restart: always
10    volumes:
11      - /var/run/docker.sock:/var/run/docker.sock
12    command: --interval 60 tornado_ui
13  tor:
14    image: strm/tor
15    restart: always
16    depends_on: [ tornado_ui ]
17    environment:
18      LISTEN_PORT: 80
19      REDIRECT: tornado_ui:80
20      # Generate a new key with
21      # docker run --rm --entrypoint shallot strm/tor-hiddenservice-nginx ^torn
22      PRIVATE_KEY: |
23        -----BEGIN RSA PRIVATE KEY-----
24        ...
25        -----END RSA PRIVATE KEY-----
```


# 如何连接你的钱包

了解如何轻松安全地连接您的钱包，以便访问 Tornado Cash 的功能，保护您的隐私并确保安全交易

*要将您的钱包连接到 Tornado Cash，您有两个选择：您可以在选择存款金额后直接*单击Tornado Cash 主页上&#x7684;**“连接” 。**

<figure><img src="/files/WP78ETv89trWnGJuUOKI" alt=""><figcaption></figcaption></figure>

您也可以点击页面右上角&#x7684;**“设置” ，然后点击“连接您的钱包”。**

<figure><img src="/files/RcrRUTrMYZNM6rZR7JOc" alt=""><figcaption></figcaption></figure>

## **Metamask 钱包** <a href="#metamask-wallet" id="metamask-wallet"></a>

如果你有 Metamask 钱包，你必须确保你的浏览器上**已经安装了扩展程序。***如果你不知道如何安装，你可以* *在下一步之前查看本*[*教程。*](https://tornadoeth.cash/)

1. 安装扩展程序后，单&#x51FB;**“连接”**。
2. 将会打开一个弹出页面，询问您是否希望将您的钱包连接到 Tornado Cash。
3. 单&#x51FB;**“下一步”，**&#x7136;后单&#x51FB;**“连接”**。
4. 您现在已连接到 Tornado Cash。

<figure><img src="/files/4SyPbgoFxF0XJchm4sxZ" alt=""><figcaption></figcaption></figure>

### 钱包连接 <a href="#walletconnect" id="walletconnect"></a>

对于其他钱包，**您应该单击 WalletConnect**。您必须使用手机，因为许多钱包还没有桌面应用程序。**它会生成一个需要扫描的二维码。**

<figure><img src="/files/KhVUG48g1dAG9QeQRUdt" alt=""><figcaption></figcaption></figure>

#### **Trustwallet** <a href="#trustwallet" id="trustwallet"></a>

要连接钱包，您需要手机。如果您有 TrustWallet 钱包，您应该在智能手机上打开该应用程序，然后按照以下步骤操作：

1. 点&#x51FB;**“设置”**。
2. 点击**WalletConnect**。
3. 扫描 Tornado Cash 页面上的二维码。
4. 单&#x51FB;**“连接”**。
5. 您现在已连接到 Tornado Cash。

<figure><img src="/files/yVJOuPlQLgZ9jLbmKDRG" alt=""><figcaption></figcaption></figure>

**ImToken**

要连接钱包，您需要手机。如果您有 ImToken 钱包，您应该打开应用程序，然后按照以下步骤操作：

1. **点击**图标（右上角）。
2. **扫描**Tornado Cash 页面上的二维码。
3. **单击**“连接”。
4. 您现在已连接到 Tornado Cash。

​

<figure><img src="/files/kk2EBYL9qsHHJYYjCvXI" alt=""><figcaption></figcaption></figure>

#### **银色钱包** <a href="#argent-wallet" id="argent-wallet"></a>

要连接钱包，您需要手机。如果您有 Argent 钱包，则应打开应用程序，然后按照以下步骤操作：

1. **点击**发送（右下角）。
2. **单击**扫描图标（右上角）。
3. 扫描 Tornado Cash 页面上的二维码。
4. 您现在已连接到 Tornado Cash。

<figure><img src="/files/jMuMB5YNYKDXxjxgKzOS" alt=""><figcaption></figcaption></figure>

#### **其他钱包** <a href="#other-wallets" id="other-wallets"></a>

对于其他钱包，步骤可能非常相似：**需要扫描 WalletConnect 的二维码才能将您的钱包链接到 Tornado Cash。**&#x8BF7;务必始终检查扫描图标（通常位于登录页面或钱包应用程序的设置部分）。


# 存款和取款

在 Tornado Cash，您可以轻松存款和取款，确保隐私与安全，体验无缝的加密交易

本教程将逐步讲解如何存入和提取资金。如果您想了解 Tornado.cash 的内部系统如何运作，请参阅本[教程](/tornado-cash-classic/ru-he-lian-jie-ni-de-qian-bao)

<figure><img src="/files/EDFJx9VtkWkOJJDofbDo" alt=""><figcaption></figcaption></figure>

## **订金** <a href="#deposit" id="deposit"></a>

### 选择链条 <a href="#choose-a-chain" id="choose-a-chain"></a>

[Tornado cash](https://tornadoeth.cash/) 在多个区块链上可用，因此你必须在 4 条链中进行选择：

<figure><img src="/files/mekUGY71E0hTCF5PWJgL" alt=""><figcaption></figcaption></figure>

### 选择一个代币 <a href="#select-a-token" id="select-a-token"></a>

选择您要存入的代币及其金额：

<figure><img src="/files/Kz6ZU5TYrs1HUqN0okrb" alt=""><figcaption></figcaption></figure>

### 连接你的钱包 <a href="#connect-your-wallet" id="connect-your-wallet"></a>

单击`Connect`并选择钱包提供商，例如 Metamask 或 WalletConnect。

### 保存你的笔记 <a href="#save-your-note" id="save-your-note"></a>

点击`Deposit`并将您的笔记存储在安全的地方，然后点击`I backed up the note`。您还可以通过设置笔记帐户将加密笔记保存在链上，方法是点击`Settings`（右上角）。

<figure><img src="/files/xyvPm2bZ4jSIJeRukzG5" alt=""><figcaption></figcaption></figure>

## 要有耐心 <a href="#be-patient" id="be-patient"></a>

正如[这里](https://tornadoeth.cash/)所解释的，等待的时间越长，你的匿名性就越强。恭喜！你做到了。现在你的代币在 Tornado.Cash 池中。

## 提取 <a href="#withdraw" id="withdraw"></a>

### 选择链条 <a href="#choose-a-chain-1" id="choose-a-chain-1"></a>

[Tornado cash](https://tornadoeth.cash/)在多个区块链上可用，因此你必须在 4 条链中进行选择：

<figure><img src="/files/by9hFowJdkMeRsQlorcW" alt=""><figcaption></figcaption></figure>

### 粘贴您的笔记 <a href="#paste-your-note" id="paste-your-note"></a>

使用您的存款单，将其粘贴到相应的框中。单击`Withdraw`并等待zk-Snark证明生成。

### 确认提款 <a href="#confirm-the-withdrawal" id="confirm-the-withdrawal"></a>

<figure><img src="/files/prBQ6OzQNIlS94LJxorw" alt=""><figcaption></figcaption></figure>

完毕 ！


# 匿名挖矿

匿名挖矿是 Tornado Cash 的核心功能之一，提供安全的资金隐私保障，确保用户交易的匿名性和安全性。

<figure><img src="/files/081eBCpCHLICmvd65eZs" alt=""><figcaption></figcaption></figure>

匿名挖矿是一种激励机制，通过根据参与者在池中对冲资产的时间长短来奖励参与者匿名点（AP），从而提高任何货币加入或货币混合协议的隐私级别。

*Tornado Cash 匿名挖矿计划于 2020 年 12 月 18 日开始，并于 2021 年 12 月 18 日结束。*

个人将资金存入任何一个受支持的匿名池（ETH、WBTC、DAI 或 cDAI），并在其存款保留在池中的期间内，每块获得固定数量的 AP 奖励。一旦领取，这些积分就可以兑换为 TORN。

<figure><img src="/files/dBGdBWfdPDBj5aaING95" alt=""><figcaption></figcaption></figure>

## 匿名点（AP） <a href="#anonymity-points-ap" id="anonymity-points-ap"></a>

*读者应该知道，在撰写本文时，一些较低面额的存款不会产生正回报，因为提取、兑换和交换匿名点需要花费 gas 成本*

社区成员之一创建了一份挖矿电子表格 13，通过估算领取奖励所需的费用，帮助计算每个矿池和每个面额的年收益率 (APY)。强烈建议在预期获得收益之前查看**此资源并规划自己的行动方案。**&#x5728;电子表格的底部，您可以通过选择相关选项卡来查看每个矿池。

## 如何获得 AP <a href="#how-to-earn-ap" id="how-to-earn-ap"></a>

1\. 通过下拉菜单选择要存入的金额和资产，然后单击“连接”和“存款”。

<figure><img src="/files/rTfI6nfjBgzmrQwbUZWY" alt=""><figcaption></figcaption></figure>

2\. 记录您的存款记录并安全备份，**不要与任何人分享，否则可能会丢失您的存款和奖励。**

<figure><img src="/files/SQnIKlqHEsScBfHTK1pJ" alt=""><figcaption></figcaption></figure>

3.生成证明并提交交易。

4\. 您的存款现在应该可以在页面底部查看，您可以在这里跟踪它赚取了多少 AP；请记住，您的存款保持活跃的时间越长，您赚取的 AP 就越多。

<figure><img src="/files/vEgSMgTlmvbN8KlCH3Ld" alt=""><figcaption></figcaption></figure>

*活跃的（未提取的）票据被称为未使用票据。*

## 如何申请 AP <a href="#how-to-claim-ap" id="how-to-claim-ap"></a>

1\. 首先，您必须创建一个挖矿账户并将这些凭证存储在链上以便于恢复（需要交易），**例如存入票据，您永远不应与任何人共享挖矿恢复密钥**，并确保将其备份在安全的地方。硬件钱包不支持此功能，因此建议按所示方式存储信息。

<figure><img src="/files/z3w2G5uiS3sRmXBckG2Q" alt=""><figcaption></figcaption></figure>

2\. 通过提供未使用的票据进行有效存款并提取到首选地址并决定是否使用中继器（*为了保持存款的匿名性，始终建议使用中继器*），这将使票据处于已使用状态。

<figure><img src="/files/spD6ISqwrOZCSD5dMhaQ" alt=""><figcaption></figcaption></figure>

**请记住，即使在提款后仍要保密您的存款票据，因为它们仍然保留兑换 AP 的能力。**

<figure><img src="/files/CIDUPp0Q8Iy6WiMXyf2s" alt=""><figcaption></figcaption></figure>

3.访问应用程序的挖矿路线并输入您花费的票据，您可能会遇到以下情况之一。

* **领取已花费票据的能力**：单击“领取奖励”按钮并提交交易（使用中继器或不使用中继器），一旦确认，您的 AP 余额应更新以反映该操作。

<figure><img src="/files/aN6fhIK1PDClgOnLll6J" alt=""><figcaption></figcaption></figure>

* **无法认领已用完的票据：** *“警告：该票据尚未准备好进行匿名挖掘。您可以等待几天再试一次”* - 这意味着 Merkle 树不同步，需要更新交易。

<figure><img src="/files/cnzo7fWXxqaA9qMm9OGi" alt=""><figcaption></figcaption></figure>

更新树可能是一个昂贵的过程，**建议存款较少的用户等待较大的矿工更新树，这可能需要几天到一个星期的时间**。如果您想查看与当前待处理批次相关的事件。请单&#x51FB;*“显示挖矿注释信息”*&#x8D85;链接，在这里您还可以通过更新树按钮支付交易费用以同步与您的提款相关的树。

<figure><img src="/files/7F289VVsCdHUvPpcM2Yx" alt=""><figcaption></figcaption></figure>

## 如何兑换AP <a href="#how-to-exchange-ap" id="how-to-exchange-ap"></a>

1\. 导航到挖矿页面上的“Swap”选项卡，可以通过页面顶部第二个导航栏访问。

<figure><img src="/files/XJlnXTrq35idW2tpImQ7" alt=""><figcaption></figcaption></figure>

2\. 输入需要兑换的 AP 数量，或选择“最大”选项以兑换您的活跃余额。在此输入下方，将显示有关当前 AP/TORN 汇率和奖励输出的信息。提供接收奖励的首选地址，通过生成证明并通过中继器提交交易或不通过中继器提交交易来完成。

<figure><img src="/files/ffKNedeVDyvbA1hOqc9b" alt=""><figcaption></figcaption></figure>

3\. 如果所有步骤均正确执行，TORN 将被转移到本节第 2 步提供的首选地址。

#### 结束语 <a href="#closing-remarks" id="closing-remarks"></a>

恭喜您，您已成功参与匿名挖矿！在决定挖掘任何匿名集时，始终建议进行规划，用户还应注意 AP [/TORN 汇率](https://duneanalytics.com/luckyallocator/Daily-AP-TORN-Rate-v2)取决于供求关系，因此，**认领的人越多，汇率就越高，认领的人越少，汇率就越低**。有关匿名挖矿的更多信息，请寻找以下资源：

* ​Tornado.Cash[治理提案](https://tornado-cash.medium.com/tornado-cash-governance-proposal-a55c5c7d0703)文章
* ​Tornado.Cash[匿名挖矿优化](https://tornado-cash.medium.com/gas-price-claimed-anonymity-mining-a-victim-but-now-everyone-can-claim-ap-5441aaa32a1a)文章


# 合规工具

了解如何使用 Tornado Cash 进行合规性审查和风险管理，确保您的加密交易符合监管要求。

根据设计，区块链上的所有内容都是公开的，这可能会剥夺用户的隐私权。任何人都可以访问每个人的整个交易历史记录。为了解决这个核心问题，Tornado.Cash 协议允许加密货币持有者重新获得隐私并获得匿名性。事实上，它使用户能够打破源地址和目标地址之间的链上链接。

然而，维护隐私和维护财务自由绝不能以不遵守规定为代价。隐私权在于控制我们提供的信息以及向谁提供信息的能力。

在此范围内，**Tornado.Cash 合规工具使用户能够证明其资金来源。**&#x501F;助每次存款后生成的注释，此工具将使用用于存入和提取资产的以太坊地址**发出经过加密验证的交易历史证明。**

您可以访问与此工具相关的 Medium 帖子，以了解有关其开发和发布的更多信息：[**Tornado.Cash 合规性 Medium 帖子**](https://tornado-cash.medium.com/tornado-cash-compliance-9abbf254a370)。

因此，如果您需要证明从 Tornado.Cash 池中提取的资产的来源，我们邀请您使用以下[合规工具](https://tornadoeth.cash/compliance)👍

<figure><img src="/files/ju3oXMS8CjIbMyfOSWCS" alt=""><figcaption></figcaption></figure>

### 如何使用合规工具？ <a href="#how-to-use-the-compliance-tool" id="how-to-use-the-compliance-tool"></a>

每次通过[Tornado.Cash 应用程序](https://tornadoeth.cash/)存款时，协议都会生成一份新注释。此注释对于以后在任何提款地址提取存入的资产都是必需的。如果需要，此注释允许用户生成合规报告来证明其资产的来源。

*有关如何在 Tornado.Cash 上存入和提取资产的更多信息，请参阅：* [*存款和取款*](/tornado-cash-classic/cun-kuan-he-qu-kuan)*。*

要获得合规报告，用户只需将存款后生成的说明复制到专用箱中。

#### 提款前 <a href="#before-withdrawal" id="before-withdrawal"></a>

如果票据尚未被使用（即资产仍未被提取），合规工具将仅向您提供有关存款的信息：

* 存款的交易哈希；
* 源地址；
* 承诺哈希。

承诺是每次存款时生成的散列随机字节区域，发送到 Tornado.Cash 智能合约以表征交易。

<figure><img src="/files/YimMhVaFCfXTzyJtIiYc" alt=""><figcaption></figcaption></figure>

[*您可以通过阅读 Tornado.Cash如何运作？*](/yi-ban-de/long-juan-feng-xian-jin-ru-he-yun-zuo)*找到有关 Tornado.Cash 如何实现提供隐私的更多信息。*

#### 退出后 <a href="#after-withdrawal" id="after-withdrawal"></a>

如果票据已被使用（即使用该票据将资产提取到指定地址），则合规工具将通过添加以下内容来完成上述信息：

* 提款交易哈希；
* 目的地址；
* 无效哈希。

无效哈希是一个公共输入，它被发送到链上，以便与智能合约和 Merkle 树数据进行检查，以允许提款。

<figure><img src="/files/dKveGt5dJ8CZwfTmxNpG" alt=""><figcaption></figcaption></figure>

因此，该工具允许用户重新链接源地址和目标地址，以证明 Tornado.Cash 上使用的资产的交易历史。

该信息还可以 PDF 格式下载，以便更轻松地发送给任何所需的第三方：

<figure><img src="/files/Q9hjmg3Sp7erNLEB5HWW" alt=""><figcaption></figcaption></figure>


# 电路

了解如何使用我们的去中心化隐私解决方案，保护您的交易隐私，确保您的资金安全。

Tornado.cash 前端背后是许多[Circom](https://docs.circom.io/)电路，它们为 Tornado.cash 用户提供基本的隐私保障。这些电路实现了[零知识协议](https://en.wikipedia.org/wiki/Zero-knowledge_proof)，Tornado.cash 的智能合约可以与之交互，以证明用户存款的声明，例如该存款有效、尚未被提取，以及在匿名挖矿的情况下，一张纸币的存款交易和提取交易之间存在的区块数量。

## ZK 电路的工作原理 <a href="#how-zk-circuits-work" id="how-zk-circuits-work"></a>

**SNARKs 和 GROTH16**

在尝试了解 Tornado.cash 的底层工作原理之前，您首先需要了解零知识电路、它们的构造方式以及如何在客户端生成证明，然后在链上进行验证。虽然有几种不同类型的[ZK](https://en.wikipedia.org/wiki/Zero-knowledge_proof#Zero_knowledge_types)系统，但 Tornado.cash 依赖于一种称为“简洁非交互式知识论证”（SNARK）的变体，具体来说是一种称为 GROTH16 的变体。

## **Circom 和 snarkjs**

因为我们并非都是 Vitalik，所以最好有一些简单的工具来抽象这些复杂多项式承诺的生成和执行。这就是[Circom](https://docs.circom.io/)和[snarkjs 的](https://github.com/iden3/snarkjs)作用所在。

Circom 最容易被看作是一种电路语言的编译器，它的作用非常类似于电子工程师用来描述电路的[硬件描述语言。只不过我们描述的不是电路，而是](https://en.wikipedia.org/wiki/Hardware_description_language)**算术电路**，它包含组件以及它们连接在一起的方式。

当你编译 Circom 电路时，最终的输出是一个[R1CS 约束系统](https://docs.circom.io/background/background/)和一个[Wasm](https://en.wikipedia.org/wiki/WebAssembly)可执行文件，后者将用于生成[见证](https://docs.circom.io/background/background/)。

## **R1CS**

要理解 R1CS（Rank-1 约束系统），当然需要更多的数学知识[。Vitalik 的一篇文章](https://medium.com/@VitalikButerin/quadratic-arithmetic-programs-from-zero-to-hero-f6d558cea649#5539)介绍了重要的密码系统数学。

> R1CS 是三个向量组 (a, b, c)(a,b,c) 的序列，并且 R1CS 的解是向量 ，其中 必须满足方程 . a \* s . b - s 。 c = 0s.a∗sb−sc=0，其中...表示点积——简单地说，如果我们将aa和ss“合并”在一起，在相同的位置上将两个值相乘，然后对这些乘积求和，然后对bbandss和然后cc和ss执行相同操作，则第三个结果等于前两个结果的乘积。下一步是将这个 R1CS 转换成 QAP 形式，它实现了完全相同的逻辑，只是使用多项式而不是点积......现在我们可以通过对多项式进行点积检查，同时检查所有约束，而不是单独检查 R1CS 中的约束。如果我们试图伪造我们从中得出此 QAP 解决方案的 R1CS 解决方案中的任何变量——比如，将最后一个设置为 31 而不是 30，那么我们就会得到一个未通过其中一项检查的 att多项式。

简而言之，R1CS 是一组多项式约束，任何电路生成的证明都必须满足这些约束。这些约束[由 Circom](https://docs.circom.io/circom-language/constraint-generation/)根据电路设计中各种“信号”和操作之间的关系生成。

## **证人**

现在，根据您使用 Tornado.cash 的目的，您可能不需要任何见证人。但是，不用担心，如果一切正常，您与 Tornado.cash 交互的所有见证人都将被大力压缩，并按照您的意愿处理他们的尸体。

在 SNARK 电路中，见证是根据电路设计从电路输入生成的一组值，以满足电路施加的所有约束。您可以将 Circom 生成的见证生成器视为电路特定的解压缩函数，该函数将您的输入通过电路运行，并快照沿途产生的所有各种中间值。

通过从您的输入生成的扩展形式，您知道必须将哪些值分配给 R1CS 指定的约束才能构建有效的证明。

## **证明**

当你想到“证明”时，你可能会想象它是某事为真的无可辩驳的保证。然而，在 SNARK 的背景下，“证明”实际上代表了某事*几乎肯定*为真的*论据*。如果我们试图将解决方案传输到电路施加的每个多项式约束，我们最终会得到比我们简单地证明电路中中间状态值之间存在某些关系大几个数量级的证明。

对于任何给定的电路，具有足够计算能力的人都有可能以畸形的方式生成满足电路约束的证明，但这在难度上大致相当于[分解大素数](https://en.wikipedia.org/wiki/RSA_Factoring_Challenge)。

因此，在为 SNARK 电路生成证明时，您需要根据给定输入（见证生成）计算电路的中间状态，然后计算输入、中间状态和电路输出之间的关系。

一旦您有证据证明您已满足必要的约束条件，您就可以发布该证明以及您的输入和输出的某些子集（也称为公共信号）。了解 R1CS、您的公共信号、您的证明和电路的证明密钥后，任何人都可以验证您的证明是否满足 R1CS，并且您的公共信号是否与您的证明相符。

#### 电路 <a href="#circuits" id="circuits"></a>

在充分了解了 ZK 证明电路之后，让我们深入研究一下 Tornado.cash 如何使用一些相对简单的电路，让您在公共区块链网络上私下且无需许可地隐藏存款和取款交易之间的关系，然后在以后证明您的存款和取款之间*的*关系（例如，您在取款之前等待了多长时间）。

[Tornado.cash](https://tornadoeth.cash/)最好被理解为有两个独立的主要组件。

## **核心存款电路**

核心存款电路是大多数用户交互的，证明用户已经创建了代表存入某些相应资产面额的承诺，他们尚未提取该资产，并且他们知道在生成初始承诺时提供的秘密。

[核心存款电路](/tornado-cash-classic/dian-lu/he-xin-cun-kuan-dian-lu)

## **匿名挖矿**

匿名挖矿电路构成了匿名挖矿计划的基础，该计划激励用户将存款在合约中保留更长时间，以确保 Tornado.cash 存款池维持大量活跃存款（从而增加其他用户的 k 匿名性[）](https://en.wikipedia.org/wiki/K-anonymity)。


# 核心存款电路

了解 Tornado Cash 的核心存款电路，提升隐私保护与加密货币交易的安全性，确保您的资产安全与匿名性

核心存款电路是大多数用户交互的，证明用户已经创建了代表存入某些相应资产面额的承诺，他们尚未提取该资产，并且他们知道在生成初始承诺时提供的秘密。

### 存款 <a href="#making-a-deposit" id="making-a-deposit"></a>

向 Tornado.cash 存款是一个非常简单的操作，实际上不涉及任何 ZK 证明。至少现在还不需要。要存款，您需要调用[Tornado 合约](https://github.com/tornadocashdev/tornado-core/blob/master/contracts/Tornado.sol)`deposit`实例的方法，提供 Pedersen 承诺以及您要存入的资产面额。此承诺被插入到专门的 Merkle 树中，其中 Merkle 树的结构与与 BN128 椭圆曲线顺序中的素数相关联的椭圆曲线对齐，并且使用 MiMC 哈希计算树的标签。

#### 承诺计划 <a href="#commitment-scheme" id="commitment-scheme"></a>

在密码学中，当你做出“承诺”时，你所做的就是获取一个秘密值（通常很大且随机），并通过一些加密函数（例如哈希函数）运行它，然后披露结果。稍后，当您需要履行承诺时，您要证明您知道原始秘密值。

#### 佩德森哈希 <a href="#pedersen-hash" id="pedersen-hash"></a>

Pedersen 哈希是一种非常专业的哈希函数，特别适合用于利用零知识证明电路的应用程序。其他哈希函数（如 SHA-256）被设计为具有一些特性，例如即使输入稍有不同，也会产生非常不同的输出（雪崩效应），而 Pedersen 哈希则优先考虑在零知识电路中极其高效地计算哈希的能力。

使用 Pedersen 对消息进行哈希处理会将消息的位压缩到一条椭圆曲线上的一个点，该曲线称为 Baby Jubjub。Baby Jubjub 的阶数与 BN128 椭圆曲线相同，该曲线由以太坊网络上的预编译操作支持，这些操作是在 EIP-196 中添加的。这意味着使用 Baby Jubjub 曲线的操作（例如 Pedersen 哈希处理）非常节省 gas。

当您计算消息的 Pedersen 哈希值时，沿其椭圆曲线的结果点非常容易验证，但无法反转回原始消息。

#### 龙卷风承诺 <a href="#tornado-commitment" id="tornado-commitment"></a>

要生成 Tornado.cash 存款承诺，您首先需要生成两个较大的随机整数，每个整数长度为 31 个字节。第一个值是一个无效符，您稍后将披露该值以提取存款，第二个值是一个秘密，用于保护您的存款和取款之间的机密关系。

您的存款票据的原像就是这两个值的串联 ( `nullifier`+ `secret`)，从而产生一条长度为 62 字节的消息。此消息经过 Pedersen 哈希处理，从而产生一个输出，该输出表示编码为 32 字节大端整数的 Baby Jubjub 椭圆曲线的元素。

如果你想以代码形式查看这一点，你可以参考[tornado-cli 存款功能](https://github.com/tornadocashdev/tornado-cli/blob/master/cli.js#L53-L112)。

#### MiMC Merkle 树 <a href="#mimc-merkle-tree" id="mimc-merkle-tree"></a>

Tornado[合约](https://github.com/tornadocashdev/tornado-core/blob/master/contracts/Tornado.sol)是一种特殊的 Merkle 树，它使用 MiMC 哈希标记其节点。

对于不熟悉 Merkle 树的人来说，它们是二叉树，其中每个非叶节点都标有其子节点标签的哈希值，而叶节点则标有其数据的哈希值。通常，Merkle 树使用单向加密哈希函数（如 SHA-2），但在这种情况下，我们使用 MiMC，它具有一些有用的属性。

MiMC 的一个有用特性是它非常适合在素数域上进行操作，这对我们很重要，因为零知识证明从根本上来说基于素数域，而 Pedersen 哈希是素数域内的点，该域由 Baby Jubjub 椭圆曲线定义 - 而该曲线又在以太坊原生支持的 BN128 曲线的阶内。由于零知识证明在操作上成本高昂，并且以太坊交易中的每个操作都有相应的 gas 成本，因此我们设计的特定类型的操作需要尽可能节省 gas。

MiMC 的其他特别有用的特性是它不可并行化，难以计算但易于验证。这些特性通过使计算在 Merkle 树中具有冲突路径的伪造“承诺”变得不可行，从而增加了合约的安全性。

#### 零节点 <a href="#zero-nodes" id="zero-nodes"></a>

在 Tornado Merkle 树初始化期间，会预先分配一条跨越树高的唯一路径，从标签为 的“零叶”节点开始`keccak256("tornado") % FIELD_SIZE`。然后，每个后续朝向根的非叶节点都会被标记，就好像树的整个底部都由同一个叶节点填充一样。

这些“零节点”的目的是确保 Merkle 树内的所有路径都是无效的，直到它们以有效承诺终止。

#### 插入承诺 <a href="#inserting-a-commitment" id="inserting-a-commitment"></a>

当你将承诺插入到 Tornado 合约的 merkle 树中时，你将用一个新叶子替换“零叶子”，该新叶子的标签是你的 Pedersen 承诺的 MiMC 哈希，然后遍历树，并根据新叶子在下面引入的标签更新，用新标签更新每个后续父节点。

承诺在树中从左到右插入，每两个承诺插入填充一棵“子树”。每次插入都会增加树的“索引”，以确定下一个承诺是插入到其 merkle 路径条目的左侧还是右侧。

一旦您的存款更新了树，最顶层节点的标签将成为树的新“根”，并添加到包含最后 100 个根的标签的滚动历史记录中，以供以后用于处理提款交易。

Tornado.cash 存款合约部署了 20 个“级别”，每个级别将潜在叶子的数量增加 2 的幂。这意味着合约的默克尔树最多支持 2^20 个叶子，允许在需要更换合约之前向合约中存入最多 1,048,576 笔存款。

层级数量看似较少的原因是，每笔存款都必须对树进行与层级数量相同的更新。层级越多的树，每笔存款需要的 gas 就越多，提取票据时需要的证明大小也就越大。

### 提款 <a href="#making-a-withdrawal" id="making-a-withdrawal"></a>

存款后，您现在拥有一组真实声明，您可以据此生成证明。一般而言，零知识证明锚定在证明者和验证者都知道的某些值上，这些值与只有证明者知道的一组值之间存在关系。电路验证者可以确认证明者使用了已知的值，并且他们计算的证明满足电路施加的约束。

#### 提款证明的输入 <a href="#inputs-to-a-withdrawal-proof" id="inputs-to-a-withdrawal-proof"></a>

对于 Tornado.cash 存款，证明者（提交提款交易的人）和验证者（存款合约的提款方法）都知道最近的 merkle 根。证明者还提供一组其他公共输入，用于生成证明。

**提款证明的公共输入总量如下：**

1. 最近的 Merkle 根
2. 来自其存款承诺的无效化组件的 Pedersen 哈希
3. 提款接收者的地址
4. 他们选择的中继者的地址（或他们自己的地址）
5. 他们向中继者支付的费用（或零）
6. 他们向中继者支付的退款（或零）

**提款证明的额外私人输入包括：**

1. 存款承诺中的无效部分
2. 存款承诺的秘密部分
3. Merkle 树的根节点和叶节点之间的路径中存在的节点标签集合
4. &#x20;一个值数组`0/1`，指示每个指定路径元素是位于其父节点的左侧还是右侧

#### 已证实的主张 <a href="#proven-claims" id="proven-claims"></a>

当我们构建承诺并将其插入 Merkle 树时，我们很容易忽略我们创造的巧妙的新知识。您可能倾向于认为，要进行提款，我们只需证明我们知道 Pedersen 承诺的组成部分，而 Merkle 树只是存储这些承诺哈希的一种有效方式。

这种构造的特殊之处在于，它不仅使我们能够证明我们知道已存承诺的组成部分，而且使我们能够简单地证明我们知道**树中承诺的路径**，以及**如何**从承诺原像开始到达那里。

如果我们只是证明我们知道已存哈希的原像，那么我们就有可能泄露哪个承诺是我们的。相反，我们不会泄露承诺原像，而是简单地证明我们知道树中承诺的原像。在电路协议的提款端，哪个承诺是我们的完全无法区分。

#### 计算见证 <a href="#computing-the-witness" id="computing-the-witness"></a>

**无效哈希校验**

为了计算提款证明的见证，我们的电路首先获取私人存款承诺输入 ( `nullifier`+ `secret`)，并将它们通过电路组件运行，该组件同时计算完整承诺消息的 Pedersen 哈希和无效符的 Pedersen 哈希。然后，电路将生成的无效符哈希与您作​​为公共输入提供的哈希进行比较，并断言它们相等。

**这证明您公开提供的无效哈希实际上是您原始承诺的组成部分。**

**Merkle 树检查**

接下来，电路将其计算的承诺哈希、您公开指定的 merkle 根以及您私下指定的路径元素和左/右选择器作为检查您的 merkle 树路径声明的组件的输入。

Merkle Tree Checker 从路径底部开始，将您的承诺哈希和您提议路径的第一个元素输入到 Muxer 中。Muxer 接受第三个输入，即您提供的左/右方向的一个元素。Muxer 组件使用这些方向来通知 MiMC 哈希组件其输入的顺序。如果提供的方向为 0，则提供的路径元素在左侧，而您的承诺哈希在右侧。如果方向为 1，则顺序相反。

MiMC 哈希器输出生成的哈希值，Merkle Tree 检查器继续进行下一级。它会重复上一个过程，只不过这一次它使用的是最后一级的哈希值，而不是您的承诺哈希值。它会继续遍历建议路径的每一级，直到得到最终的哈希值输出。

Merkle 树检查器将其计算出的哈希值与您提供的公共 Merkle 根输入进行比较，并断言它们相等。

**这证明你的承诺存在于指定的 merkle 根下的某条路径内。**

**额外提款参数检查**

在完成之前，电路会获取剩余的四个公共输入，并将它们平方为一个公共输出。虽然这不是绝对必要的，但它会在您的证明中创建一组约束，以确保在处理您的提款交易之前，您的交易参数不会被篡改。如果任何这些参数发生变化，您的证明将不再有效。

#### 计算证明 <a href="#computing-the-proof" id="computing-the-proof"></a>

现在我们有了证明的见证人，我们将这些见证的状态值输入到与提款电路相对应的 R1CS 中，并运行证明器。证明器产生两个证明工件。第一个是证明本身（根据我们使用的 SNARK 协议），第二个是与该证明相对应的一组公共输入和输出。

#### 完成提款交易 <a href="#completing-a-withdrawal-transaction" id="completing-a-withdrawal-transaction"></a>

现在已生成提款证明，您可以将该证明及其公共输入提供给`withdraw`存款合约的方法。此方法验证：

1. 指定的中继费不超过提取资产的面额价值
2. 提供的无效哈希之前未被使用过
3. 提供的 merkle 根是已知的，使用 100 个根的历史记录
4. 提供的证明有效

作为存款合约的依赖项部署的工件之一是 Solidity 合约，该合约使用取款电路的证明密钥作为输入生成。此验证器合约是一个经过优化的证明验证器，具有单个公共视图函数，它接受证明和六个公共输入的数组作为`uint256`值。

此函数返回`TRUE`根据公众输入证明是否有效。

如果满足上述先决条件，则将提供的无效符哈希插入到已使用无效符的集合中，然后根据指定的费用参数在接收者和中继者之间分配押金的价值。


# 登录 Tornado Cash Nova

立即登录 Tornado Cash Nova，体验安全便捷的隐私保护服务。保护您的数字资产，享受无忧交易体验

Tornado Cash Nova 于 2021 年 12 月推出，可以自由选择交易的自定义金额，以及无需离开匿名池即可转移代币的功能。由于具有这些独特的功能，这个新池需要自己的一套指令。

Tornado Cash Nova 可通过其自己的去中心化应用程序 [nova.tornadoeth.cash](https://nova.tornadoeth.cash) 访问

<figure><img src="/files/7SfVpuaTKwtwlEFqoCwc" alt=""><figcaption></figcaption></figure>

首先，欢迎来到 Tornado Cash Nova 矿池，让我们来了解一下这个全新工具的功能🌪

## 登录 <a href="#log-in-nova" id="log-in-nova"></a>

<figure><img src="/files/9bQBpUUwbcLEbh2IwRqG" alt=""><figcaption></figcaption></figure>

您可以通过以下方式登录您的 Tornado Cash Nova 帐户：

* **将 MetaMask 钱包**与链接到您的 Nova 帐户的地址连接起来，
* 使用在创建帐户时生成的**屏蔽密钥。**

每个帐户都连接到一个唯一的**屏蔽地址**（以及一个唯一的**屏蔽密钥**），可以用来登录和管理 Nova 池中的余额。

## Tornado Cash Nova 账户 <a href="#tornado-cash-nova-account" id="tornado-cash-nova-account"></a>

登录 Nova 矿池后您可以：

* **检查你的屏蔽余额，该余额代表**[Nova](https://nova.tornadoeth.cash/)池中当前拥有的代币数量，
* 使用更多代币为**您的余额充值，**
* **将代币的保管权转移**到池中注册的另一个屏蔽地址，
* 通过您选择的目标地址**提取任意数量的代币。**

只有有权访问您的 Metamask 钱包或屏蔽密钥的人才能访问有关您帐户的这些信息（即您的屏蔽余额）。⚠ 请留意您与谁共享哪些信息。

### MetaMask 钱包 <a href="#metamask-wallet" id="metamask-wallet"></a>

每个 Tornado Cash Nova 账户都链接到一个屏蔽地址。如上所述，用户有两种方式访问​​其账户及其余额。其中一种方法是**通过连接到相应屏蔽地址的 MetaMask 钱包**。

<figure><img src="/files/UbbBoho6zuGjBO0OF5SX" alt=""><figcaption></figcaption></figure>

当用户登录给定地址，然后存入代币以资助该地址的池余额时，会自动创建一个屏蔽地址。

*有关筹资行动的更多信息，请参阅* [*Nova 上的“筹资与提款”*](/tornado-cash-nova/zai-nova-shang-cun-ru-he-ti-qu-zi-jin) \_\_

但是，也可以通过单独的操作从头开始创建屏蔽地址，方法是登录一个没有先前链接到 Tornado Cash Nova 的新地址，然后单击`Set up account`。

通过您的 Metamask 帐户确认此操作后，您的屏蔽地址将被加密并创建，并生成一个屏蔽密钥。

一旦设置好账户，您将能够从池中注册的任何其他地址接收代币的屏蔽转账。您还可以根据需要存入、转账和提取代币。

### 屏蔽密钥 <a href="#shielded-key" id="shielded-key"></a>

如上所示，另一种登录方式是通过设置新的屏蔽地址来创建账户时生成的 **屏蔽密钥。**

一旦您使用您的地址登录并且您的帐户设置完毕，您可以随时通过访问您的帐户数据（通过单击您的地址，在您的屏蔽余额旁边）下载此屏蔽密钥。

<figure><img src="/files/GCDWrxhx9urX3C00CEVY" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/tlDoUc90GHARV5W1Ccj8" alt=""><figcaption></figcaption></figure>

为了获得完全的隐私，仍然需要采用传统 Tornado Cash 池所推荐的相同良好做法。*您可以在协议文档中找到维护隐私的指南：* [*保持匿名的技巧*](/yi-ban-de/bao-chi-ni-ming-de-ti-shi) *和* [更多匿名提示](/tornado-cash-nova/geng-duo-ni-ming-ti-shi)*。*


# 在 Nova 上存入和提取资金

在 Nova 平台上，轻松安全地存入和提取资金，确保您的资产始终安全，体验快速便捷的交易流程

Tornado Cash 的工作原理是打破源地址和目标地址之间的链上链接。为此，协议需要将代币从一个地址存入池中，然后通过另一个地址提取。这一原则对于 Tornado Cash Nova 来说仍然是一样的。与传统的固定金额池一样，这两个操作是该工具效率的核心：

* 融资流程
* 提款流程。

### 融资流程 <a href="#funding-process" id="funding-process"></a>

与传统 Tornado Cash 池相比，最大的创新之处在于**存款金额不再是预先定义的。**&#x7528;户可以在钱包余额的范围内选择自定义金额。

因此，如果您想将 0.4 ETH 放入池中，您可以一次性完成，而不必像传统的 0.1 ETH 池那样进行四次单独的交易。

<figure><img src="/files/U86qpMmEK2Fo2iVBoFwc" alt=""><figcaption></figcaption></figure>

## 它是如何工作的？ <a href="#how-does-it-work" id="how-does-it-work"></a>

**首次存款💰**

* 第一步是通过 Metamask 账户登录 Tornado Cash Nova。
* 您的帐户尚未设置（按钮`Set up account`位于右上角）。要设置您的帐户，您可以：
  * **点击`Set up account`**：您登录的地址将注册到 Nova，无需存入任何代币。此操作将使您能够从任何其他地址接收池内的转账或存款。
  * **选择您登录的地址作为接收地址**：通过将代币存入池中，您的帐户（及其隐藏地址和隐藏密钥）将自动创建。存入的资金将充值到您的隐藏余额中。
  * **选择另一个注册地址：**&#x4EE3;币将被添加到所选接收地址的隐藏余额中。此接收地址必须是以前注册到池中的隐藏地址。

登录时，`Recipient address`默认填写的是您的登录地址。您可以根据工具的使用方式进行更改。

如果您设置了新帐户，您将能够稍后登录池，检查您的 Tornado 屏蔽余额或使用您的屏蔽地址或屏蔽密钥接收屏蔽转账。

*有关如何使用这些元素登录或在哪里找到屏蔽密钥的所有信息都可以在* [Tornado Cash Nova 中的登录中找&#x5230;*。*](https://nova.tornadoeth.cash/)

### **以下存款💸**

以下存款遵循与第一笔存款相同的规则，只是账户已经设置好。

通过使用您的屏蔽地址/密钥登录池，您可以根据需要将您选择的金额存入您选择的屏蔽地址。

由于这是测试版，存款目前限制为 1 ETH/交易。但是，如果社区希望提高此限制，可以随时通过治理提案更改 1 ETH 上限金额。

### 提款流程 <a href="#withdrawing-process" id="withdrawing-process"></a>

<figure><img src="/files/CXNxBWri7cYyzqM9jGbI" alt=""><figcaption></figcaption></figure>

要从 Nova 池中提取资金，您可以：

* 从四个预定金额（0.1、0.3、0.5 和 1 ETH）中进行选择，
* 通过按钮选择完全定制的数量`Set custom`。

### 自定义提款选项 <a href="#custom-option-for-withdrawal" id="custom-option-for-withdrawal"></a>

**只有在充分了解以下事实并且对自己的行为充满信心的情况下，才应该选择自定义选项。**

为了保护您的隐私，强烈建议您从四个建议金额中选择一个，因为它可以让您的提款融入人群中。

事实上，根据所选的金额，如果出现以下情况，可能会推断出您的初始资金交易与提款之间存在联系：

* 初始入金金额和提现金额完全相同，
* 存入金额和提取金额可以通过一笔总额轻松关联起来。

*例如，0.42 ETH 的存款可能与 0.42 ETH 的提款相关联，或者与 0.21 ETH 的两倍相关联，这可能会损害匿名性。但是，如果提款 0.391 ETH，则可以更好地保护隐私，因为 0.42 和 0.391 金额之间没有明显的联系。*

### 通过 Gnosis Chain (L2) 进行交易 <a href="#transctions-through-gnosis-chain-l2" id="transctions-through-gnosis-chain-l2"></a>

为了降低交易成本，Gnosis Chain（以前的 xDAI Chain）被用作第 2 层。为此，在主网的 ETH 和 Gnosis Chain 的 WETH 之间使用了桥梁。

因此，为了防止导致桥梁超载的垃圾邮件攻击，提款金额必须大于 0.05 ETH。


# Nova 上的屏蔽传输

探索Nova平台上的屏蔽传输功能，确保您的加密交易安全隐私，防止数据泄露，提升资金保护

Tornado Cash Nova 的一个特点是引入了屏蔽转账。它允许在池内对存入的代币进行屏蔽交易。

到目前为止，要转移已存资金的托管权，需要先提取代币。使用 Nova，您可以将选定数量的屏蔽余额（不一定是全部）转移到另一个地址，而无需从池中提取它们。

<figure><img src="/files/vXzQx4fFphAGgTHdtoJm" alt=""><figcaption></figcaption></figure>

这些屏蔽转账可以转到您选择的任何地址，只要该地址是屏蔽的（即已在 Tornado Cash Nova 池中注册）。

提醒一下，屏蔽地址是通过`Set up account`操作或与钱包地址的初始存款一起注册的。

我们建议您仔细检查您转移代币的屏蔽地址，因为此操作是不可逆的。


# 更多匿名提示

深入了解Tornado Cash，探索其去中心化隐私保护功能，确保您的加密交易匿名安全

对于本节，我们建议您首先参阅“保持匿名的技巧”教程。本教程中提到的所有要点仍然适用于 Tornado Cash Nova。快速提醒一下，这些技巧包括：

* 使用 VPN，
* 不共享屏蔽密钥或屏蔽地址的访问权限
* 如果下载，请将此屏蔽密钥保存在安全的地方，
* 使用后删除数据，
* 避免在所有交易中使用相同的 API 令牌，
* 在存款和取款之间保持耐心，
* 使用多个地址进行提款。

然而，由于其新功能，Tornado Cash Nova 需要采取进一步的预防措施以保持匿名性。

## 中继器的使用 <a href="#use-of-relayers" id="use-of-relayers"></a>

交易需要支付 Gas 费。对于匿名转账和提款，有两种支付方式可以提供 ETH 作为 Gas 费。您可以**连接钱包或使用 Relayer**。

如果使用的 ETH 可以链接到您的身份，则通过您的钱包支付这笔 gas 费可能会损害交易的匿名性。因此，**建议使用中继器来保护隐私**

<figure><img src="/files/1XzJZ8MXlQWAumRwvTDM" alt=""><figcaption></figcaption></figure>

## 提款金额选择 <a href="#choice-of-withdrawal-amounts" id="choice-of-withdrawal-amounts"></a>

自定义金额功能提供了更大的灵活性和使用自由度。但是，如果使用不当，可能会危及您的隐私。

## 选择预定义的提款金额 <a href="#choosing-predefined-amounts-for-withdrawals" id="choosing-predefined-amounts-for-withdrawals"></a>

<figure><img src="/files/QMM2GHjniBmjDZPBob5O" alt=""><figcaption></figcaption></figure>

强烈建议选择四个预定义金额之一，因为它可以让您的提款融入人群并保持匿名。

您仍然可以自由`Set custom`提取您选择的自定义金额。但是，根据所选金额，如果出现以下情况，您的初始资金交易和提款之间可能会存在关联：

* 初始入金金额和提现金额完全相同，
* 存入金额和提取金额可以很容易地通过一个总数联系起来。

例如，0.42 ETH 的存款可能与 0.42 ETH 的提款相关联，或者与 0.21 ETH 的两倍相关联，这可能会损害匿名性。但是，如果提款 0.391 ETH，则可以更好地保护隐私，因为 0.42 和 0.391 金额之间没有明显的联系。

只有在充分了解这些事实并且对自己的行为充满信心的情况下，才应该选择自定义选项。


