查看原文
其他

LWN:Tornado Cash 以及附带伤害!

关注了就能看到更多这么棒的文章哦~

Tornado Cash and collateral damage

By Jake Edge
August 17, 2022
DeepL assisted translation
https://lwn.net/Articles/904960/

8 月 8 日,美国政府以洗钱为由制裁了 Tornado Cash 加密货币混合器项目(cryptocurrency mixer)。该制裁意味着任何美国公民或公司都不能以任何形式跟 Tornado 进行现金交互,该组织的所有资产都需要申报,以便后续扣押,等等措施。但 Tornado Cash 的核心是在以太坊区块链中运行的 "智能合约(smart contracts)" 的很大一块开源代码;该代码也被 "查封(seized)"。我们社区也产生了一些令人不安的影响。

Mixing

Tornado Cash 是(或曾经是)一种混合加密货币(mixing cryptocurrency)服务,以便为所有者提供隐私保护。虽然加密货币区块链上的交易是假名,各方只通过公钥来互相识别,但还是有办法追踪交易并将每个人同自己的持有量联系起来。早期,比特币的吸引力之一是它的匿名性,但这被证明是一种幻想。加密货币混合器提供了一种手段来恢复系统在某种程度上的匿名性。

混合器(或称 "翻滚器(tumblers)")的工作原理是收集一堆存款(deposits),采用随机时间间隔将其凝聚成更大的 chunk,然后在以后的时间里将这 chunk 的一部分作为提款(withdrawals)来发放出去。当然,此服务通常会保留一定比例的存款(通常为 1-3%)来作为利润。由于存款和取款在时间上不同步,用户可以让这部分加密货币跟自己所持有的其他余额不容易其他人看出来有关联。有隐私意识的用户可能会在提款时使用与存款时很不一样的金额来进一步混淆这些加密货币之间的联系。

有人想捐赠给可能不受某些国家欢迎的事业(例如,为乌克兰捐款),可能会使用混合器来避免捐款被追踪到他们身上。当然,也有一些人出于不那么好的原因想要隐私,比如各种犯罪分子。看起来很明显,混合器是用来洗钱的,但许多工具(也许是所有的),都可以用在好的地方和坏的地方。然而,通常情况下,工具不会被起诉(或制裁),被起诉的是犯罪的人。

由于现有的反洗钱协议,某些情况下无法使用匿名或假名。尤其是,当有人想把他们的加密货币变成美元(或任何其他真实货币)时,他们必须与金融组织配合,而这些组织都受 "了解你的客户"(KYC)这个准则的约束。金融组织会从其客户那里收集身份信息,建立出特定地址和一个人之间的联系。这是犯罪分子可能想在取款前混合他们的不义之财的主要原因之一,但其他人也是有完全合法的理由来使用 mixer 的。

我们通常不会向全世界公布我们的银行余额,也不会公布我们的信用卡购买记录。但是,如果可以把特定的地址/密钥和具体的个人联系起来,这实际上就形成了这样的效果,并且是在区块链上永久存储在那里。一个遵循 KYC 的组织中如果数据泄露了就可能会 "暴露" 它所有的客户名单、客户的持股和交易。想要避免这种信息泄露,并不是想要犯罪。

合法获得的 10 个单位的加密货币与一个单位的有问题的加密货币(比如说从某些非法来源获取的)混合在一起之后,在法律上它算是什么?我们把钱存入银行,这些银行无疑也吸收了一些来自可疑来源的存款,但 "bad" 钱通常不会玷污从银行提取的资金。也许我们的目标是迫使这些 mixer 也要遵循 KYC,但 Tornado Cash 交易的性质意味着确实没有 "保管人(custodian)" 做这个工作。

支撑着 Tornado Cash 的运转的智能合约的工作方式是,参与者和智能合约代码在某种程度上分担监管职责。合约是在区块链上运行的程序,以确保(假设没有错误)所有各方都执行各自的职责。原本实现了这一切的代码曾经在 Tornado Cash 的 GitHub 仓库中提供,但该仓库也在 8 月 8 日消失了。

此外,这些智能合约仍然漂浮在以太坊区块链上,除了担心与 Tornado Cash 有关的污点之外,没有什么能阻止任何人使用它们。事实上,有人似乎正在通过从被禁止的 Tornado Cash 地址向知名人士发送少量资金来欺骗当局;这些交易不能被拒绝,但接受这样的 "礼物" 在技术角度上来说是违反了制裁令的。

Reactions

鉴于代码被认为是受保护的言论自由(至少在美国是这样),因此代码从 GitHub 上被删除似乎明显违反了宪法。密码学家 Matthew Green 注意到了这一点,但也指出了从 Git 这样一个分布式、分散式的版本控制系统中删除代码这个动作本身就很可笑。人们怀疑在各地有数以千计的 Git 存储库副本,任何进一步 "消除" 此代码的工作,只会使其进一步扩散。

电子前沿基金会(EFF)也关注这一行动,它指出被制裁的实体名单上有一个开源项目(即 Tornado Cash)。值得注意的是,该名单上没有个人,只有一长串的加密货币地址,以及其他三项内容,类似这样:"TORNADO CASH (a.k.a. TORNADO CASH CLASSIC; a.k.a.
TORNADO CASH NOVA); Website tornado.cash; […] Organization Established Date 2019; […]"

然而,GitHub 不仅仅是关闭了 Tornado Cash 的 git 存储库,它还暂停了该项目的创始人和贡献者的账户。除此之外,荷兰当局在 8 月 12 日逮捕了其中一名创始人。其他各种组织也完全与 Tornado Cash 保持距离,包括其他一些加密货币公司冻结了与 Tornado Cash 有关的资产。同时,任何受美国法律管辖的人,如果有加密货币存入 Tornado Cash 合约,就不能(合法地)访问它。鉴于智能合约的性质,以及美国政府的顽强,任何处于这种地位的人可以干脆地放弃这些资产了,无论是否合法来的。

GitHub 很可能别无选择,不得不删除 Tornado Cash 库,尽管这样做明显是徒劳的。这些代码实际上只是附带损害(collateral damage)。但是,毫不意外该项目全部历史的仓库(尽管哈希值不同)已经在 GitHub 上的其他地方有存在了。毕竟,从一个跟原版修改一个 byte 来开始创建一个镜像仓库就变成了一个完全不同的 Git "区块链";同时避开对相同对象哈希值的检查也同样是非常简单的事情。

然而,暂停贡献者的账户则更难理解。如前所述,没有个人在制裁名单上,所以没有明显的理由(除了有 taint 污点)来暂停他们。此外,这些贡献者很可能在 GitHub 上还有其他项目;现在这些项目无法使用,这可能会对我们整个社区产生连锁反应。那些正在使用 GitHub 的项目的人可能会仔细考虑该公司可能会对他们的仓库做什么,并且是在没有任何真正的证据和指控的情况下。GitHub 当然不需要托管任何东西或任何人,但这些动作肯定会让开发者在使用其服务时有所顾虑。

美国的新闻稿对 Tornado Cash 的 "所作所为" 进行描绘时,讲述了一幅典型的暗淡画面,其实更精准的用词是 "facilitated"。新闻中提及了几个臭名昭著的加密货币盗窃案,包括某个国家(朝鲜)相关的案件,其收益就是通过 Tornado Cash 进行洗钱的。发布会上说,大约有价值 70 亿美元的加密货币是通过这种方式清洗的,尽管这种统计方式似乎是把合法使用同犯罪混在了一起,因为这是广泛用于所有 Tornado Cash 交易的总额数字。

毫无疑问,犯罪分子应该被抓住,被定罪,并因这些罪行和其他罪行而受到惩罚,但如果试图把这种行动描述为只对犯罪分子进行,就很容易淡化这种行动的附带损害。这都是攻击强加密和 Tor 等工具的类似剧本,因为那些工具也可以被恐怖分子、儿童性虐待罪犯等人使用。诚然,这些工具可以被用来促进此类活动,但也可以用于其他各种各样的事情。这些工具本身并没有错。

在 LWN,我们一般不怎么关注加密货币世界的阴谋,毕竟这些往往远远超出我们的关注范围。有相当数量的令人厌恶的炒作、蛇精病(snake oil)和骗局,该领域一直包含这部分。但这次事件与这些东西无关;这涉及到一个基本自由和权利的问题。就像备受指责的资产没收计划一样,政府在没有正当程序的情况下拿走了一些东西,并迫使那些被错误判定的人要自己证明他们是如何被误判了的,这往往使得他们要付出很大代价。

这种事件也可能是对代码的 "自由" 和 "权利" 的某种风向标式测试。Tornado Cash 代码本身就存在,它运行在一个不能(轻易)被关闭的基础设施上;同时,它可以被用来做好事或坏事。人类将采取何种措施来试图使坏事不再发生?也许 HAL 9000 正在像看戏一样观看。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存