思考|Tornado 协议封杀事件,检视抗审查定义与矛盾制裁是否有必要?去中心化抗审查能力重新定义抗审查

fffmCQ.jpg
思考|Tornado 协议封杀事件,检视抗审查定义与矛盾

本文尝试从近期 Tornado 被制裁事件案例,探讨区块链项目的去中心化与抗审查定义,将思考其中矛盾关系,尝试协助读者面对未来多变的世界与问题。

首先了解为何需要制裁?又是否必要呢?再来探讨人们高喊去中心化的精神却都纷纷开始制裁特定地址是否符合去中心化精神?说好的无须许可呢?如果有以上疑问可以尝试阅读。

Tornado

Tornado 是圈内有名的「匿名交易」协议,使用者可以将特定的资产存入,并利用其机制将资金转移至另一个新的钱包,达成区块链纪录追踪「中断」的隐私交易协议,Tornado V1 基本原理可以看这篇文章

主要原理是利用零知识证明,证明新钱包的拥有者属于同一人。搭配取出金额仅有固定的几个选项 (0.1ETH、1ETH、10ETH、100ETH),增加交易追踪困难度,例如当使用 Tornado 取出 10 ETH 的人愈多,就越无法查明这些新钱包地址是分别属于哪些旧钱包地址 (无法分辨取出 10 ETH 的新钱包地址差异)。

思考|Tornado 协议封杀事件,检视抗审查定义与矛盾制裁是否有必要?去中心化抗审查能力重新定义抗审查

制裁风波

开发者表示原意是打造一个隐私交易的场所,但是近期多次的协议骇客事件,最后骇客都将资金转入了 Tornado 进行洗钱的动作,包含区块链音乐平台Audius事件Horizon跨链桥事件Ronin 跨链桥事件,使链上追踪面临困难,骇客轻易规避刑责。

特别是有消息指出这些骇客来自北韩,因此踩到了美国政府的底线。

近期开发者 Roman Semenov 推出了 V2 版本,随后遭到美国 OFAC 封杀,并要求相关产业配合共同围堵其服务,包含:

  • 官网前端被封锁
  • Infura 与 Alchemy 封锁其 RPC 服务。
  • GitHub 封锁了 Tornado 与创办人的页面。
  • Circle 封锁了相关地址的 USDC 使用权。
  • 表明相关交易地址的违法性

目前这些措施确实已经导致其使用率降低、资金减少等情形。且因为最后一点措施,除了 Circle 之外许多协议也开始跟进封锁相关地址的使用权限,使用率降低使协议功能性也跟着降低。

制裁是否有必要?

在继续深入讨论之前,需要先厘清美国政府本次行动是否「正确」?或者是可被众人所接受,特别是在充满抗审查舆论氛围的区块链世界。

首先,Tornado 确实被许多骇客用来作为洗钱的工具,甚至这件事情 Tornado 开发团队最清楚不过,否则不会在今年四月 Ronin 被盗取资金存入 Tornado 后表示会协助美国政府制裁名单,封锁特定地址的前端访问权。但很明显美国政府认为只限定前端的访问权是不够的。

虽然有一派人主张言论自由,认为代码与言论自由是同等的关系,禁止特定开源代码的使用不符合言论自由而违宪。就像是有人使用刀子伤害他人,制刀工厂就需要关门同样离谱。

这个问题的答案超出本文范围,最后的答案或许会随着未来有更多判决,以判例的方式解答。但是身为区块链世界的参与者,有义务了解抗审查的内涵,对于其定义有自己的看法与认知,将有助于走在法规前面甚至引领立法者。而不是随着政府或是其他人制定的规则起舞,否则也不需要进来这个圈子受高度不确定性之苦了。

去中心化

本次事件特别之处在于,不只是针对人或组织,而是制裁了协议本身。而区块链的协议大多是去中心化的形式,对于去中心化精神是否相互牴触。

人们高喊著去中心化的大旗,但是去中心化到底该如何实践,有无任何指引协助开发者遵守或是让使用者判别呢?本文归纳大致上架构如下:

去中心化定义

区块链项目大多都希望可以遵从 web 3.0 的精神开发,其中最重要的元素是去中心化与自主拥有权,而去中心化有两个主要面向,分别是:

  • 无须信任 trustless
  • 无须许可 permissionless

其中要达到服务无须许可,有三必要个条件,分别是:

  • 匿名:使用者无需表明真实身分。
  • 开源:任何人都可以在未经第三方许可的情况下检视、使用或构建分叉项目。
  • 抗审查:不因任何压力而停止提供服务给任何人。

抗审查能力

其中,抗审查能力是去中心化不可或缺的,也是现在外界施压相关产品之压力点。

抗审查能力目前以软体角度、区块链技术为基底来检视,除了区块链技术达成去中心化计算,还有三个压力点,分别是操作前端、RPC、合约本身设计。

本文从本次 Tornado 被制裁事件回顾,检视一个项目对于抗审查,有那些地方是需要注意的,哪些部份是未来开发者与参与者可以改进的。

前端

因为本次制裁,Tornado 的官网已经遭到封锁。但熟悉技术的链上使用者都知道,可以直接与链上的智能合约互动。Etherscan 没有封锁 Tornado 页面,代表还是可以利用 Etherscan 简易与智能合约互动。在过去发生类似的情况时 (例如 Uniswap 禁止特定代币的前端访问权),大多数人也都是利用此方法越过前端限制。

但值得思考的是若将来甚至连区块链浏览器都将配合制裁的那天,用户访问合约的难度又将会更加的提高,是值得注意的合规议题后势发展。

因此,若是没有相关技术背景无法利用区链浏览器与合约交易的使用者,或是发生上述区块链浏览器遭到封锁的情况下,是时候该重视去中心化储存的重要性了。

若开发者有将前端储存至去中心化储存空间 (例如 IPFS 或是 Arweave ),将可以降低被完全封锁的可能,甚至可以说几乎无法完全封锁。对于一般的使用者影响也会降低 (就只是换个网址进入)。

Tornado 官方就提供不少替代方案,以下提供两个官方的 IPFS 网址:网址一网址二

RPC

Infura 与 Alchemy 是最多人与开发者所使用的免费公开 RPC API 服务供应商,但其在 Tornado 被制裁后双双宣布禁止关于调用 Tornado 相关的合约。更新:Pocket Network 也宣布停止服务相关合约调用!

思考|Tornado 协议封杀事件,检视抗审查定义与矛盾制裁是否有必要?去中心化抗审查能力重新定义抗审查

虽然还是有许多替代方案,但是对于一般人来说,更改可用的 RPC 网路需要对于此领域有进一步的研究,才能有能力更换,因为 Infura 甚至是 Metamask 预设的 RPC API 服务供应商。

此举确实会大幅降低使用率,稳定快速的 RPC API 不容易替代,且若是以太坊之外的其他公链,RPC API 替代选项将会更少。更讽刺的是 Pocket Network 主打的就是去中心化 RPC 服务,如今却可以随时断线,如何克服 RPC 中心化的问题是需要受到更多重视的议题。

本文提供其他以太坊网路的 RPC API 清单,做为上述三者以外的替代选项:https://ethereumnodes.com/

思考|Tornado 协议封杀事件,检视抗审查定义与矛盾制裁是否有必要?去中心化抗审查能力重新定义抗审查

GitHub

过去 GitHub 就有封锁特定帐号与项目页面的纪录,但因为 GitHub 本身就是 web2 公司,因此此举属意料内的事情。但是大多数 web3 项目的程式协作平台都以 GitHub 为重,应该需要开始思考更加去中心的选项。

现有许多其他程式协作平台,甚至部分提供类似于 IPFS 原理的去中心化储存功能,例如 Radicle,开发者应该采用一至两个备案。如同前述提及,去中心化的无须许可需要程式码开源,让参与者共同改进产品。

但是出自于大多开发者已经习惯使用 GitHub,因此不容易大规模迁移,若无法大规模迁移,就失去程式「协作」的能力与功能,因此此部分目前难以改变,抗审查能力较低。

USDC

Circle 封锁地址已经不是头一次,实际上每个月几乎都有部分的地址被封锁其使用权,可以从这个页面追踪其封锁的地址与数量。注意,USDT 也可以有权利封锁使用权。

思考|Tornado 协议封杀事件,检视抗审查定义与矛盾制裁是否有必要?去中心化抗审查能力重新定义抗审查

由此可知,使用中心化稳定币仍需要注意其风险与智能合约机制,USDT 与 USDC 其效力如同银行内的存款,可以利用合约内的封锁函数禁止特定人士使用。若要更进一步的掌控所有权需要使用其他稳定币,例如 DAI。

但是如同 GitHub 一样,在使用者心中的稳定币不外乎是 USDT 与 USDC 为首选,先进者优势的定位不容易改变,例如,当使用者看到 LP 代币的稳定币端是一个不常见的稳定币,是不是就会降低其投入流动性的意愿?

表明相关地址的违法性

多个与 Tornado 相关的以太坊地址,已被列入美国外国资产控制办公室 OFAC SDN 制裁名单中,甚至表明美国人与机构都禁止与其地址互动,否则就是违法。

基本上政府无法限制区块链技术上的可行性,也就是无法阻止这些地址的行动,但是可以施压相关的实体例如交易所或是开发单位位于美国的协议协助封杀,让这些地址无法将资金兑现,也无法使用链上协议进行其他活动。

Oasis、dYdX、AAVE 等著名协议纷纷表示配合协助制裁特定地址名单。从某种程度上确实造成影响力与实质改变。这类型的施压是最难防御的,因为其他协议会想要「守法」,Circle 本次禁止部分地址也是出自相同原因。难怪 The Block 研究员 Larry Cermak 表示项目去中心化程度取决于创办人是否愿意入狱。

无须许可?一点也不,这可以说是十足的许可制,这样不就是偏离抗审查的目标了吗?从上述的定义来看确实如此,因此,协议本身设计与开发者态度是抗审查中最难达成的。

抗审查能力总结

经由上述说明,可以看出抗审查从简单到困难达成,依序是前端 ( IPFS 搞定 )、RPC (还有许多节点替代选项可以使用)、GitHub ( 以抗审查来说不是非常必要 )、协议本身机制与开发者立场 ( 目前确实无解 )。

看来人们离去中心化的理想还很远,是也不是,本事件看到抗审查定义的问题。

重新定义抗审查

总结上述,可以发现其实大多数抗审查的压力点,都有许多替代方案可以使用,使得项目方抗审查能力提升,但是回过头来,为什么大多数协议却好像没有这样做呢,甚至配合制裁行动?从 Tornado 的第五项制裁措施看来:大多协议目标是想要合法,换句话说也就是认可美国政府制裁行为。

本文归纳出主要有两个矛盾点:

单一项目抗审查是假议题?

一个项目要做到抗审查其实很容易,但是那真的有用吗?从 Tornado 案例可以看到,Tornado 技术上还是可以使用,但最关键的是大多数协议封锁了相关使用者的地址使用权限,甚至一般的使用者也不想受法律制裁影响而开始撤出资金,这样 Tornado 就算做足了抗审查基本动作,最后还是大受影响。

抗审查在技术上理论上做得到,但当它违反社会共同的价值时,很难有生态级的协作。

甚至就算所有协议都有着完整的软体抗审查能力 (前端、RPC、合约本身机制),卫星、网路线等硬体基础设施仍都还是掌握在政府与企业手上,其实根本就没办法做到十足的去中心化,除非重新建设去中心化的硬体,但现在几乎不可能。

因此若不合规,单一项目就难以有抗审查能力,这样还有意义吗?

封锁特定地址违背无须许可精神?

大多协议在本次封锁中都是仅配合前端的封锁,没有涉及智能合约的层面,但也有像是 Circle 是利用 USDC 智能合约封锁使用权。特别是智能合约层级的探讨,以本次事件来说,相关地址的就像是美元被冻结,没有任何办法可以解锁,除非 USDC 合约再次开放权限。

这对于无须许可的精神来说,几乎没有任何妥协空间。去中心化主打无须许可的 web3 世界,却有许多协议却拥有此功能,到底哪里出错了?

回到共识

那这样抗审查还有意义吗?到底该如何实现?回过头来检视,其实抗审查的终极目标是为了去中心化,而去中心化的意思是经由大家的「共识」共同决定,特别是大事情。

犯罪其实就是大家共识上不被认可的,因为这些犯罪行为会减损其众人的利益,甚至破坏生态,今天利用洗钱的骇客被禁止使用特定协议或是被封杀,如果大家 (与大家选出的政府) 都认可该排除这种人,这些制裁与封杀好像才是正确的。

抗审查只是去中心的手段之一,去中心化不该受制于抗审查定义,而是应该反过来修改抗审查的定义,就本文论述,不应该是「不因任何压力而停止提供服务给任何人」,而应是把抗审查这个条件变成「审查规定由众人决定」。去中心化无须许可的条件就变成:

  • 匿名:使用者无需表明真实身分。
  • 开源:任何人都可以在未经第三方许可的情况下检视、使用或构建分叉项目。
  • 审查规定由众人决定:不因任何「单方面」压力而停止提供服务给任何人。

到最后,问题就变成政府的执行是否符合大多数人真正的意见,也就是回到一开始的问题:制裁是否必要?不过这又是另一个问题了,超出本文讨论范畴。

总结来说,回到共识与去中心化的架构下,单一项目的作为不代表所有人,大多数人 (协议) 选择该怎么做,最后的结果就是符合共识的。只要是大多数人的共识,封锁特定地址也是符合去中心化精神的,所以 AAVE 团队才表示若要以智能合约封锁地只需要 DAO 同意 (当然如何治理又是另一个学问)。

没有任何东西是真正抗审查的,只有共识是真的。

声明:该文观点仅代表作者本人,与炒币网无关。炒币网系信息发布平台,仅提供信息存储空间服务。对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,并不对文章观点负责。 提示:投资有风险,入市须谨慎。本资讯仅供参阅,不作为投资理财建议。

发表评论

登录后才能评论