论以太坊的未来
Ledger 首席技术官 Charles Guillemet 思考了以太坊的未来以及该协议支持 Web3 主流采用的潜力。
须知事项: |
– 以太坊是全球市值第二的区块链,最近经历了一次重要的软件升级——合并,共识机制从工作量证明 (PoW) 转变为权益证明 (PoS)。 – 虽已成功过渡,但在面对 Web3 下一阶段的开发时,以太坊的可扩张性和准备情况仍然存在问题。 – 本文深入探讨了以太坊的扩张挑战,评估了其满足主流采用需求的能力。 本文认为,虽然目前还不存在完美的扩张解决方案,但第 2 层解决方案(包括 Optimistic Rollup 和 Validity Rollup)最有可能在提高可扩张性的同时较好地权衡区块链的三难困境。 – 更准确地说,使用 ZKP 技术的 Optimistic Rollup 和 Validity Rollup 可大规模支持无需信任、无需许可的复杂交易,将成为塑造以太坊未来的关键。 |
以太坊扩张:寻求解决方案
和许多区块链一样,以太坊目前也面临交易处理能力受限的问题。 尽管支持以太币转账和数千个去中心化应用程序 (Dapp),但由于使用量增加,以太坊的交易速度变慢,成本上升。
为了降低高额费用,这一局面催生了一些不安全的设计决策,例如非同质化代币 (NFT) 市场的链下中心化服务。 以太坊改进提案 EIP-1559 的采纳改进了费用估算和激励机制,但并未明显提高可扩张性。 区块链的可扩张性、去中心化和安全性三难困境这一热门问题是可扩张性挑战的绝佳体现。
区块链三难困境认为,去中心化、安全性和可扩张性这三个属性不可能同时达到最优。 如果牺牲去中心化,构建安全、可扩张的系统会容易很多,Web2 也已证明确实如此。 而如果牺牲共识机制,优先保障可扩张性,得到的只是一个毫无意义、不安全的去中心化区块链。 解决区块链三难困难极其复杂,这一挑战在过去十年来一直持续存在。
提高吞吐量:多种方法
多年来,已经提出了许多解决方案来解决以太坊区块链的三难困境。 其中一个热门建议是每秒构建更大的区块或更多区块。 这看似是个好办法,但更加依赖区块链节点和验证者/矿工来达成共识,导致中心化程度更高。 这还会减慢重组速度,增加安全风险。
另一种方法是创建侧链,减少主链的负载,例如 Polygon 网络。 该系统牺牲了安全性,因为它依赖的共识比以太坊更弱(市值更低)。 这对特定用例可能适用,但通常会导致中心化,且不能完全解决以太坊的可扩张性问题。 而且,运行类似 Visa 的系统需要处理数万个请求,这种方法还远远达不到要求。
第 2 层和分片 (Sharding):以太坊可扩张性挑战的解决方案?
分片和第 2 层是以太坊在维持区块链三难困境的同时进行扩张的公认最佳选择。
一方面,区块链分片长期被视为区块链可扩张性的关键。 这是 2019 年 Eth2.0 的主要功能,提供 BLS 签名方案、PoS 共识机制并实施 eWASM。 另一方面,通过持续研究 Rollup 机制,第 2 层解决方案迅速取得了进展。 我们来探讨这两种激烈竞争的方法的现状及其未来潜力。
区块链分片如何运作?
分片一词源于数据库科学。我们将数据库水平切分成易于管理的小组件(即分片)。 每个分片都是一个独立数据库,其中包含一个数据子集。 利用分片来扩张数据库的原理是:将数据和查询分布在多个服务器上,无需提供一台强大的服务器即可支持数据库处理更多数据。
在区块链上利用分片的想法也在开发人员中迅速传开。 区块链分片将网络切分成更小的子网络(即分片),分片支持并行处理交易。 在分片区块链中,每个分片都是一条单独的链,各自独立运行。 这意味着每个节点、矿工/验证者都可以专注于特定分片,达成局部共识。 首先,分片支持并行处理交易。 其次,每个分片需要管理的交易更少。 听起来很完美,但问题是什么呢?
分片挑战:共识、跨分片通信与安全
区块链分片难以定义整体共识。 什么是网络的全局共识? 是各个局部共识的集合吗? 该在何处如何锁定这些局部共识,并创建人人均可信任的全局共识? 这些问题不容易回答。
实施分片的另一个重大挑战是跨分片通信。 数据库不存在这个问题,因为数据被拆分到不同分片上,您可以独立读取或写入数据,没有什么实际问题。 而区块链分片执行代码的情况则要复杂得多。 每个分片必须能够运行自己的代码,查询不同分片的状态,在另一个分片上执行代码。 这并非易事。
这一分片难题还与安全问题有关。 专家已经研究了这一难题,认为各种分片方案均易遭受许多新型攻击。 首先,它只是对共识机制提出质疑。 如果有 10 个分片,每个分片上均有矿工分布,那么接管一个分片的成本是接管整个区块链的成本 1/10。 51% 攻击理论上变成了 5.1% 攻击。 一种解决方案是将共识机制从工作量证明更改为权益证明。 这是以太坊过渡到权益证明的主要动机。
在安全性方面,合并的影响一直备受争议。 在去中心化方面,合并后的以太坊共识会促进中心化,因为代币所有权决定网络控制权。
关于以太坊的新共识,有几个因素推动了中心化:
- 运行以太坊节点并不容易,需要许多资源和正常运行时间。 它只是防止您的钱包在笔记本电脑甚至手机上实现和运行节点。
- 至少拥有 32 ETH 的资金门槛以及在某个未知日期之前无法取消权益质押的事实催生了联合权益质押和流动权益质押,其中 Lido 和交易所占领了大部分市场。 如今,4 个平台控制了以太坊区块链上 55% 以上的币(Lido 29.2%、Coinbase 13.1%、Kraken 7.6%、币安 6.2%)。
总而言之,区块链分片是一个有趣的想法,可以提高可扩张性,但需要复杂的架构,特别是在定义整体共识和实施高效的跨分片协议时。 为此我们做了大量工作,但要实现这些目标并解决区块链三难困境的影响,依然任重道远。
卷叠拯救区块链
卷叠是将多笔交易压缩为一笔交易给以太坊执行,使得许多链下执行的交易具有和以太坊一样的结算安全性。 这一想法主要有两种实施方式:
- Optimistic Rollup,允许用户在发生争议时出具欺诈证明
- ZK-Rollup,允许第 2 层网络出具有效性证明。
Optimistic Rollup 和最终性问题:
Optimistic Rollup 是设计得最像以太坊虚拟机 (EVM) 的卷叠。 它们持乐观态度,因为它们假设用户没有提交欺诈性交易,允许直接写入区块链。
有一个使用欺诈证明的机制:第 2 层验证者可以通过将欺诈证明初始化,检查几天内(Optimism 为 7 天)进行的链下交易。 有效的欺诈证明可以识别交易过程中具有欺诈性的步骤,从而撤销交易并惩罚批准该交易的验证者。 这提高了交易吞吐量,同时维护以太坊主链的安全性。
但是,Optimistic Rollup 也带来了新的挑战:最终性。 在区块链上,一般认为已确认的交易是永久确认且不可逆转,但这取决于共识机制。 例如,如果重组可能性很低,PoW 链便将交易视为最终交易,而比特币交易则须经 6 次确认才视为最终交易。 利用 Optimistic Rollup,交易可以在几天后撤销,导致最终性挑战和不同的权衡取舍。
另一种卷叠:ZK-Rollup
ZK-Rollup,因使用零知识证明 (ZKP) 技术(例如 SNARK 或 STARK)而得名,是另一种卷叠方式。 零知识属性其实没什么用处,所以将它们称为 Validity Rollup 可能更准确。
卷叠执行一批交易并生成一个有效性证明(经以太坊区块链上的智能合约核实)来确认交易的最终结果。 加密证明是使用零知识加密原语生成的。
概括而言,零知识证明让一方(证明者)可以在不透露实际信息的情况下向另一方(核实者)证明拥有特定信息。 核实者无需了解内容即可确信证明者的声明真实无误。
ZK-Rollup 最初是为保密性而设计,使用零知识证明完全是出于其他目的:压缩和可信计算。 两种领先的零知识技术是 zk-STARK(零知识可扩张透明知识论证)和 zk-SNARK(零知识简洁非交互知识论证)。
第 2 层的数据可用性问题:
我们已经知道,ZKP 技术可确保第 2 层状态的有效性,但证明本身并不提供状态的访问权限。 为了提高吞吐量,将执行转移到链下,但数据仍必须可随时访问,以便进行重建。 为此,交易数据在以太坊上作为调用数据提交,确保未来重建时可以使用数据。 这些数据也可以存储在星际文件系统 (IPFS) 或 Arweave 等可信的去中心化存储中,允许任何人重建第 2 层并利用去中心化存储的内部奖励。
如果能将这些数据存储在链上当然更好,但若仅将数据用于重建第 2 层的状态/真实性,而不执行数据,则区块链容量的使用效率太低,且成本高昂。
为了解决这一问题,以太坊开发人员提出了两个 EIP:EIP-4488 和 EIP-4844(切勿混淆)。 第一个提案降低了调用数据的 gas 费用,第二个提案为第 2 层数据存储创建了一种新的交易类型。 此类数据是不可更改的只读数据,EVM 无法访问,因此也无法执行。
这两个 EIP 正是 ZKRollup 路线图与执行分片路线图的共同之处,都为不同目的提出了相同的想法。 EIP-4488 旨在存储基本的第 2 层数据,而 EIP-4844(即 Proto-Danksharding)则是实施 Danksharding 和执行分片的前期步骤。
Danksharding:
Danksharding 需要将大型数据集切分成较小的组件,以便分离和处理(通常是并行)。 这种方法常用于大数据和人工智能领域,因为其训练数据集会非常庞大。
Proto-danksharding (EIP-4844) 不实施分片,但提供了可以分片、成本更低的调用数据存储。 这种成本更低的调用数据存储将大大提高以太坊第 2 层的可扩张性,可能使分片成为多余。
Proto-danksharding:
借助 Proto-danksharding,以太坊区块链将拥有不可扩张的计算和可扩张数据。 而 ZkRollup 本质上就是将这种可扩张数据和不可扩张但可信的计算转换为可扩张计算。
ZKRollup 与区块链三难困境:
ZKRollup 具有强大的可扩张性优势,且不改变底层区块链的属性。 主要要求是在链上核实零知识证明,而数据可用性可以在链下实现。 从长远来看,未来可能第 1 层会变得简单、安全,且有望实现去中心化,第 2 层则提供可扩张性。
问题在哪里?
第 2 层确实可以大大扩张。 但要在链上(第 1 层)结算,需要为第 2 层的整体状态提供有效性证明,这会导致中心化问题。 目前,第 2 层的设计只有一个证明者,意味着证明者可以审查你的交易。 他们无法真正冻结你的第 1 层资产,因为构建了原生桥。 目前正在开展研究解决这一挑战,让其他方能够出具证明,但还存在一些证明争议仲裁的难题。 无论如何这都是未来需要解决的重要问题。
Starknet 已将此确定为路线图上的重要主题;Arbitrum 划分了定序器收件箱和延迟收件箱之间的责任,确保在审查制度下可以找回资金。
结束语
如前所述,可扩张性可能会牺牲安全性和去中心化,而要提高可扩张性,同时又不损害区块链三难困境中的其他属性,大家最看好第 2 层解决方案。
使用 ZKP 技术的 Optimistic Rollup 和 Validity Rollup 可大规模支持无需信任、无需许可的复杂交易,将成为塑造以太坊未来的关键。 与 Optimistic Rollup 相比,Validity Rollup 有一个显著优势:短暂的最终性。 以太坊的路线图最近已经转向在区块链层面支持卷叠。
未来,区块链的可扩张性解决方案包括在第 2 层(或递归卷叠上)运行的复杂 DApp,几乎可以无限扩张,并提供去中心化且安全的第 1 层。 从长远来看,第 1 层可能作为结算层,将复杂的 DApp 转移到第 2 层。