浅谈Zk和Optimistic Rollups:原理、区别和前景
撰写:
编译:深潮 TechFlow
人们说,如果能有一个更新,能将 ETH L1 的 TPS 提高 100 倍,Gas 费减少 100 倍,那我们就不需要 Rollup。
但真的是这样吗?
其实不是的。原因是 L1 的速度越快,Gas 越低,Rollup 的速度就越快。
所以,你会选择 100x L1 还是 10000x Rollup?
ETH 的扩展是以太坊社区中讨论最多的话题之一。因此,寻找扩展解决方案一直是 ETH 生态系统中多个团队的首要任务。
目前,存在三种热门方式来扩展以太坊:第 1 层扩展(ETH 2.0),在第 1 层之上的扩展(第 2 层扩展——状态通道、Plasma 和 Rollup),以及侧链。
- 以太坊社区对扩展性的担忧导致了以太坊在多个层面的升级开发,这种升级被称为 ETH 2.0。ETH 2.0 的目的旨在使以太坊更具可扩展性、安全性和持久性。
- 侧链是一个独立的区块,通过双向桥与主链(ETH L1)相连。侧链与主链有不同的共识机制,并且不依赖主链的安全性。因此,这就导致侧链的安全性低于 L2。人们一直都把 Polygon 当作一个侧链,这是错误的。Polygon 是一个提交链,提交链是一个非托管的侧链,它的共识机制依赖于主链(ETH L1)。
- L2 是指任何建立在以太坊之上的系统,它继承了 ETH L1 的安全性。它们包括 Plasma、Rollups 和状态通道。
*在这篇文章中,我们将专门介绍 Rollups*
Rollups 是一种常见的扩展解决方案,其工作方式是在 L1 之外处理和执行交易,但将交易发布到 L1。这使得 Rollups 提供扩展功能的同时,又能从 L1 中获得安全。
为了实现这一点,Rollups 的交易通常会选择在单独的链上执行,该链可以运行特定于 Rollup 的 EVM。
在下一个步骤中,交易信息被分组,并由一个排序器发布到 ETH L1 上。
上述整个过程包括执行交易,获取数据,对其进行压缩,并将交易'卷起'到主链的形成一个批次。详细地说,在 Rollups 中的一批交易被'汇总'到一个状态根(一个用作见证的小单位),其中包含了足够的信息来验证 L2 上发生的每一个交易。
那么 ETH 又是如何知道发布的数据是有效的呢?
Rollups 在 L1 上部署了一组智能合约,负责处理存款和提款,并验证证明。这个证明是 Optimistic Rollups 和 Zk Rollups 之间的主要区别。
对于 Optimistic Rollups 来说,它向 ETH L1 发布交易,并假定它是正确的。在欺诈用户进行无效交易的情况下,网络必须识别他们,恢复正确的交易,并对欺诈用户进行惩罚。
为了实现这一点,Optimistic Rollups 具有争议解决系统,可以识别无效的交易和不良行为者,并阻止他们参与系统中的进一步欺诈行为。
Optimistic Rollups 为了能重放 L1 执行的交易,并且保证其确切状态与在 Rollups 上执行交易时存在的确切状态相同,就需要创建一个“管理合约”。
Optimistic Rollups 的用例是 Optimism、Arbitrum 和 Cartesi,你可以很轻松的在网络上查找到其确切资料。下面我们来看看 Zk Rollups。
ZkRollups 使用有效性证明(如 Zksnark,ZkStark )来检查交易,并在将其发送到 ETH 链之前检查其合法性。
ETH Zk Rollups 使用复杂的数学计算和密码学来确保交易在 ETH 主链上被 "结算",而不是类似于 Optimistic Rollups 的争议解决系统。尽管它很复杂,但团队花了数年时间试图将复杂的交易信息细化为更简单的证明,以便于验证。
仅在今年,就有 3 个 Zk EVMs 进入了测试网阶段,其中一些已经进入主网,这包括 Scroll,Polygon Hermez,以及 Zksync2.0。
接下来,我们来看看 Optimistic Rollups 和 Zk Rollups 的区别。
Optimistic Rollups:
资金提现缓慢——由于争议解决系统,网络在交易最终完成之前,会给网络用户一些时间来提交他们的欺诈证明。
提款可能会很慢,大多数时候,用户必须等待 7 天才能将资金取回 L1。然而,现在也有项目提供快速流动性退出,来挽救这种情况。
EVM 的兼容性——Optimistic Rollups 仍然需要编写他们自己的 EVM 。大多数情况下,合约可以从 L1 发送到 Optimistic Rollups,而不需要做任何改变。
Zk Rollup:
快速取款——由于没有争议解决程序,因此在Zk Rollups 中的提款速度很快,并且在交易孵化到 L1 时还提供了有效性证明。
EVM 兼容性——由于 Zk 技术所涉及的复杂性和密码学,大多数 Zk Rollups 并不兼容EVM,例如 Starkware。
与 EVM 兼容的 Zk Rollups 的是 ZkEVM。ZkEVM 允许开发者将 ETH 主链上的 Solidity 合约移植到 Rollup 上,而不需要改变底层代码。
无论是 Zk 还是 Optimistic 还是侧链,都是一场旨在完善 ETH L1 主网的竞赛,其目的都是为了更好地提高 ETH 的可扩展性和完善区块链。