作者:Donovan Choy
来源:Bankless
2022年8月8日,美国财政部制裁了Tornado Cash。
所有人都知道监管机构讨厌加密货币,但这一制裁令DeFi措手不及。这代表着美国监管机构在正式打击加密货币方面一次前所未有的努力。
在某种程度上,对Tornado Cash的制裁是因祸得福。这一监管冲击让DeFi想起了它的基本原则,对整个去中心化金融领域中每一处中心化卡口展开了审查。
去中心化实际上很重要。
你走的任何中心化捷径都能被用来对付你。
审查的话题很难理解。试图理解围绕以太坊中心化的担忧需要一些技术知识,而加密术语的海洋难以涉足。
本文试图揭开以太坊过去几个月里所有审查问题的神秘面纱,并将它们提炼成任何加密公民(甚至是厌恶者)都能容易理解的术语。
我列出了以太坊协议上的每一个主要的中心化向量,并简要介绍了企业家和开发者正在研究的各种市场和技术解决方案。
以太坊供应链的简要概述
以太坊最初的设计理论只涉及两个参与者:运行自己的节点的用户,通过点对点网络将交易发送给区块验证者,区块验证者将构建一个区块并包含该交易。
区块链验证者(我们在PoW中称他们为矿工,在PoS中称他们为质押者)本应是验证区块的中立参与者。
实际上,这个过程要复杂得多。通过向运行套利机器人的搜索者出售区块,验证者面临着不正当的激励歧视。这导致普通用户的交易成本提高,区块链上出现拥堵——这种现象被称为最大可提取价值(MEV)。过去两年,以太坊上的MEV达到6.75亿美元(Cosmos上估计为670万美元)。
在合并后的以太坊中,以下是一般的交易顺序:
- 用户通过dapp的前端与钱包创建交易。这些交易被发送到内存池(mempool)。
- 搜索者运行套利机器人并扫描内存池,然后将交易捆绑在一起
- 捆绑好的交易被传递给区块构建者,后者再附上费用出价
- 如果构建者和验证者都连接到一个中继器,那么中继器将在提交拍卖之前隐藏捆绑的区块
- 验证者(又名区块提议者)选择费用出价并提议区块
- 证明人在区块最终上链之前对其进行验证
(请注意,在本文中,验证者和提议者这两个词是互换使用的。)
在这个交易顺序中,每一步都存在中心化向量。
让我们从前端开始,依次来看。
1. 前端界面
你想买一些ETH,可以转到uniswap.com,其设计精美、时尚粉白配色的用户界面可以帮助你轻松地进行交易。你连接MetaMask,选择你的流动性池,然后点击“发送”来执行交易。我们认为这个简单的过程是理所当然的,但是已经有许多中心化威胁出现在这些中介上。
审查威胁
如今,许多dapp的前端接口都是中心化的。Web3的短暂历史表明,当监管机构来敲门时,DeFi会应门。这种情况就发生在当Balancer在其前端隐藏了一个2000万美元的流动性池时,或者当Uniswap Labs迅速在其前端下架几十个合成衍生代币以规避SEC的审查时。MetaMask和Infura也采取了同样的措施来封锁符合Tornado Cash制裁规定的钱包地址。
越过前端只是冰山一角。我们使用的dapp依赖于RPC节点(服务器)来传达用户意图。节点是一个连接点(可以把它看作一个API),它在区块链上访问信息、通信并执行交易。
在理想的情况下,每个人都可以运行自己的节点。但正如Signal创始人Moxie Marlinspike曾经在批评Web3时提出的那样,大多数人都不运行自己的节点,这造成了对Infura和Alchemy等中心化节点服务提供商的依赖。他们让DeFi的生活轻松了很多,但正如你所知,这是有代价的。由于Uniswap和Metamask等大量dapp反过来依赖Infura运行节点,因此在这一端出现了一个重要的中心化向量。
像Infura这样的中心化公司,如果被监管机构盯上,将对以太坊造成重大干扰。事实上,当Infura在3月份禁止伊朗IP地址以遵守美国的政治制裁时,这种情况就发生了。中心化节点提供商存在问题还有一些技术原因。以太坊在2020年11月经历了一次网络中断,当时Infura的主网API因其Geth客户端没有更新而瘫痪,许多dapp无法使用。
最后,节点需要被托管在某个地方。实际上,许多以太坊节点被托管在AWS、Hetzner和谷歌云等中心化云服务提供商上(Solana和比特币也是如此)。这里的中心化向量很明显:云提供商可以任意停止服务器运行。今年8月,当Hetzner澄清在其服务器上运行以太坊节点违反其服务条款时,该社区就收到了这一提醒。
来源:ethernodes.org
已经有这么多中心化向量了,我们甚至还没讲到内存池。
怎么办呢?
解决方案1
前端中心化是一个相对较小的问题。这要感谢蓬勃发展的DeFi中间件生态系统,它允许我们以各种方式通过替代场所绕过受审查的前端。例子包括Zapper和Zerion等投资组合跟踪器,集成了“交换”功能的加密钱包,1inch和Paraswap等DeFi聚合器。它们让你无需直接访问它们就能访问dapp。Uniswap等大多数dapp也致力于开源其前端的代码,允许任何个人甚至专门的DAO重新创建前端。
为了绕过被审查的前端,像IPFS这样的去中心化存储提供商也被用来托管带有静态内容的前端域名。对于有动态内容(社交媒体)的前端,像The Graph这样的去中心化索引协议被用于通过统一的查询语言查询各个区块链和dapp的数据。而对于被审查的域名,像ENS这样的去中心化域名服务通过在以太坊智能合约上构建域名,提供了一种更抗审查的方式来托管域名。这与当今存储在中心化DNS服务器上的大多数网站不同,容易受到域名扣押或IP地址封锁的影响。
总之,这些去中心化的基础设施协议构成了DeFi前端去中心化Web3经济的基本构件。
解决方案2
对于节点中心化问题,关键的技术解决方案是轻客户端。以太坊Altair硬分叉为它们铺平了道路。这些超轻量级客户端允许我们在自己的计算机、移动设备或web浏览器上创建我们自己的主权、原生版本的以太坊,我们可以向任何接受轻量级客户端查询的完整节点广播交易并发出请求。通过这样做,dapp可以促进交易,而不是调用Infura或Alchemy等中心化RPC端点。
轻客户端不会试图检索整个信标链或验证者集。这将需要大量的计算——因此它被称为“轻型”!它们只是通过了解对等节点来同步区块头。关键在于,这个过程是通过随机分配的验证者组(同步委员会)以去信任的方式来执行的。信标链PoS轻客户端的构建也比PoW轻客户端简单得多。通过只有几个回答这些查询的非审查完整节点,节点中心化问题得到了缓解。更多关于轻客户端的信息,请参阅这里。
解决方案3
当我们想要依赖外部节点提供者时,有一些去中心化的Infura替代方案,如Pocket Network或Ankr,它们可以最大限度地减少对Infura的需求。
回想一下,这里的问题是人们缺乏激励来运行自己的节点。这些RPC节点提供商引入了经济激励。以Pocket Network为例,节点提供商质押POKT来运行区块链节点,并在不同的区块链之间中继数据,为请求链上数据的dapp提供服务。在这个无许可的市场中,他们服务的中继越多,他们获得的POKT奖励就越多。在需求方,用户/dapp也质押POKT,允许它在网络上请求中继。注意,这些项目本身存在中心化点,但是有移除它们的路线图。