当前的以太坊是一条整体单片式区块链(monolithic blockchain):它为自己提供安全性,执行自己的交易,并维护自己的数据可用性。
然而,这种传统类型的区块链,即为自己提供安全性、执行和数据可用性层的链,由于其“包揽了所有的事情”而存在固有的局限性。
这些局限性会给用户带来较高的交易成本。
这是因为以太坊执行层稀缺的区块空间,加上不断增长的网络使用需求,导致了网络拥堵,推高了交易成本。
换句话说,单片式区块链一次只能处理这么多的交易 (transactions)。
为了解决这些局限性,以太坊生态中的开发者和研究人员近年来开创了一系列不同的可扩展性解决方案。这些方案有着不同的呈现方式和规模,但绝大多数都是作为以以太坊为中心的执行层,提供廉价和快速的 Crypto 交易。
现如今,许多新的可扩展性解决方案都已经可以使用了,而且更多的方案即将到来。为了紧跟目前正在发生的一切,本文将带领读者深入了解当前各大以太坊可扩展性方案!
当前,以太坊社区同时在使用链下扩容性策略和链上扩容策略。
链下扩容 (off-chain scaling) 是指为以太坊等底层链提供外部执行的任何创新方式。人们将这些创新称为「Layer 2」(简称 L2), 也即将交易的执行放在以太坊之外的第二层网络进行,从而优化以太坊 L1 的性能。
链上扩容 (on-chain scaling) 是指为了提高区块链的吞吐量 (即每秒能够处理的交易量) 而对其进行的任何直接修改。虽然诸如 Rollups 和 Validiums 等链下扩容方案会在短期内扩展以太坊,但以太坊网络的长期补充策略是实现分片 (sharding),也即将以太坊 L1 分成许多条有着共享安全性的分片链 (shard chains)。
制图:u/emkoscp
1. Rollups
Rollup 是一种可扩展性解决方案,通过在其自己的经优化的执行层上面执行交易,并将交易数据发布到以太坊 (以后可能还有其他 L1s 公链) 上。通过这种方式,Rollups 链直接继承了以太坊 L1 的安全性保障。
放大来看,当前有两种类型的 Rollups:ZK-Rollups 和 Optimistic Rollups。
1) ZK-Rollups 通过使用一种称为 zk-SNARK 的加密证明,将许多笔链下交易“卷起来”形成一笔可验证的交易批次。然后,这些较小的加密证明将被有效地发布到以太坊 L1 上面。
简单来说就是,链下执行 + 通过 zk-SNARKs 提交链上数据 = ZK-Rollups。
Loopring (路印) 是 DeFi 领域最受欢迎的 zk-Rollup 项目之一
当前我们可以使用的基于 ZK-Rollup 方案的 Rollups 网络包括:
Loopring:
https://loopring.io/#/
Polygon Hermez:
https://hermez.io/
zkSync:
https://zksync.io/faq/intro.html#introduction
2) Optimistic Rollups 也是将许多交易“卷起来”以批次的方式提交至以太坊 L1 链上,但这种方案并不使用零知识证明来证明交易的有效性:Optimistic Rollups “乐观地”假设了交易的有效性,除非通过所谓的“欺诈证明”(fraud proofs) 成功地挑战了交易的有效性。
简单来说就是,链下执行 + 链上数据 + 欺诈证明 = Optimistic Rollups。
Arbitrum 是基于 Optimistic Rollup 方案的 L2 网络
当前我们可以使用的基于 Optimistic Rollup 方案的 Rollups 网络包括:
Arbitrum One:
https://arbitrum.io/bridge-tutorial/
Optimism:
https://gateway.optimism.io/welcome
2. Validiums
DeversiFi 是目前最大的基于 Validium 方案的 L2 项目
另一种类似于 Rollups 的可扩展性解决方案是 Validiums。
Validiums 的运作方式类似于 ZK-Rollups,因为这种方案也依赖于零知识证明来批处理和执行交易。但与 ZK-Rollups 相比,Validiums 在链下保存其数据可用性 (即交易数据存储在链下),而 ZK-Rollups 的数据可用性存储在以太坊 L1 链上。
这种动态特征使得 Validiums 这种扩容方案具有很高的性能(Validiums 能够提供比 ZK-Rollups 更高的吞吐量),但同时也在一定程度上使这种方案具有托管的性质 (这意味着 Validiums 的运营商可以冻结或者没收用户的资金)。
Sorare 是一款由 Validium 驱动的梦幻足球游戏
换句话说,链下执行 + 零知识证明 + 链下数据 = Validiums。
当前我们可以使用的基于 Validium 方案的项目包括:
DeversiFi (去中心化交易所):
https://l2beat.com/projects/deversifi/
Immutable X (一个以 NFTs 为中心的 L2 网络):
https://www.immutable.com/
Sorare (一款梦幻足球游戏):
https://l2beat.com/projects/sorare/
3. Volitions
Volitions 是一种混合式扩容解决方案,让用户能够在“ZK-Rollup模式”和“Validium模式”之间进行选择。
在实践中,这意味着 Volitions 的用户能够使交易在链下执行,同时可以选择链上数据可用性或者链下数据可用性,也即选择将数据可用性保存在以太坊 L1 链上或者在 Valildiums (链下)。
4. 侧链
就以太坊而言,侧链是与以太坊兼容的区块链。
侧链 (sidechains) 可以是独立的区块链,比如 BSC (币安智能链),或者更普遍的是,为了明确地迎合以太坊用户的定制区块链,比如 Polygon 的侧链。侧链与以太坊的兼容性源于它们支持 EVM (以太坊虚拟机)。
因此,侧链可以作为以太坊 L1 的外部执行层,即便侧链并没有直接继承以太坊 L1 的安全性保障。但一些侧链项目,比如 Polygon 的侧链,通过向以太坊提交检查点 (checkpoints),模糊了这种区别。
当前我们可以使用的侧链包括:
Polygon:
https://wallet.polygon.technology/
xDai:
https://bridge.xdaichain.com/
Ronin (NFT 游戏 Axie Infinity 量身定制的侧链):
https://bridge.roninchain.com/
5. 状态通道
Connext 是以太坊生态中最知名的状态通道项目之一
状态通道 (State Channels) 是一种由多签智能合约支撑的链下扩容方案。在状态通道网络中,ETH 等加密资产可以锁定在这些合约中,用于在用户之间创建双向支付通道。
换句话说,状态通道就像是在“记账”,用户彼此之间可以在链下进行数百次交易,然后通过向以太坊 L1 发送最后一笔交易来停止记账。这样一来,原本是许多笔的交易,通过状态通道得以简化。
目前我们可以使用的状态通道项目:
Connext:
https://connext.network/
6. Plasma
Plasma 链是一种依赖于欺诈证明 (fraud proofs) 的扩容方案,类似于 Optimistic Rollups。但与 Optimistic Rollups 不同的是,Plasma 将数据可用性保存在链下。尽管是以太坊 L2 研究的最早领域之一,Plasma 的实现未能像其他更新的扩容方案那样获得足够的吸引力。
上图:以太坊的更新路线图。制图:trent.eth
以太坊开发者社区预计,分片 (sharding) 将在未来几年内推出。
这一更新将把以太坊一直以来的单一协议扩展到 64 条新的“分片链”上。通过这种方式将以太坊网络的负荷分布到这些分片链上,以太坊 L1 得以实现水平扩展,极大地改善了交易延迟和吞吐量能力。
值得注意的是,正如以太坊创始人 Vitalik Buterin 之前强调的那样,“分片和 Rollups 带来的可扩展性好处相互叠加”,这些创新将使以太坊轻松地支持数十亿用户。
直到最近,以太坊一直是一条整体单片式区块链,仅依靠自己提供安全性、执行和数据可用性。
我们现在正开始看到,以及未来会越来越多地看到,以太坊正在成为一条模块化的区块链。也就是说,我们将看到以太坊越来越依赖外部执行层和外部数据可用性层来推进其基础性能。
从 Rollups 到侧链,我们已经讨论了这些早期的外部执行层是什么样子。同样值得注意的是,像 Polygon Avail 这样的定制化数据可用性区块链,也将在扩大模块化区块链未来的可能性方面发挥重要作用。