L2 扩容技术详解:Optimistic Rollups 与 ZK Rollups
-
扩容方案概述
随着区块链技术的快速发展,可扩展性问题成为了阻碍区块链广泛应用的主要障碍之一。
为了提高网络的吞吐量和降低交易费用,扩容就是一件必须要解决的事情。
扩容方案通常分为两大类
一类是链下扩容(Layer 2)
通过在底层区块链之上构建新的协议层来实现扩容;
链下扩容方案可以分为状态通道、Plasma 和 Rollups。
状态通道(State Channels)允许用户在链下进行交易,仅在通道开启和关闭时与主链进行交互,这极大地减少了链上交易数量,从而提高了吞吐量,像 Raiden Network 和 Lightning Network 就是分别针对以太坊和比特币的状态通道扩容产品。
Plasma 是一种子链(sidechain)方案,允许用户将资产从主链迁移到子链,并在子链上进行交易,子链周期性地将其状态更新提交给主链,以确保安全性,比如 OMG Network。
Rollups 是将多笔交易打包成单个证明(zk-SNARKs 或 Optimistic Rollup 的欺诈证明),并提交到主链。这样,主链仅需验证证明而无需处理每笔交易,从而提高了吞吐量。
典例是 zkSync(基于 zkRollup)和 Optimism(基于 Optimistic Rollup),Arbitrum 同样也是基于 OP 的 产品。
另一类是链上扩容(Layer 1)
通过优化底层区块链协议本身来提高吞吐量。 -
Optimistic Rollups 和 zk-Rollups
2.1 zk-Rollups
zk-Rollups 是一种基于零知识证明的二层扩容方案。
首先由 Rollup Operator 组件将多个链下交易聚合成一个批次,之后使用零知识证明(例如 zk-SNARKs 或 zk-STARKs)生成一个简洁的证明文件,这个证明可以验证整个批次的交易的有效性,而不需要逐一检查每笔交易;然后将证明及与该批次相关的数据提交到主链,主链通过验证证明的正确性,确保交易是有效的;主链验证通过后,链上合约会根据证明中的数据更新链上的状态。这意味着,尽管交易是在链下进行的,但链上状态仍然得到了更新,确保了数据的一致性。
2.2 Optimistic Rollups
Optimistic Rollups 是一种基于乐观性验证的二层扩容方案,即默认提交的区块是正确的,除非有人提出质疑。
它同样需要 Rollup Operator 将许多链下交易聚合成一个批次,之后计算批次交易产生的新状态(如余额、合约状态等)并生成一份链下状态更新;
3 ZK 与 OP 比较
1. 交易验证方式:
OP:通过欺诈证明(fraud proofs)验证交易。OP 假设交易默认是有效的,除非有人提交证据证明某笔交易无效。这需要链下用户和节点持续监测,以确保 Rollup Operator 没有作恶。
ZK:通过零知识证明(例如 zk-SNARKs 或 zk-STARKs)验证交易。ZK 生成一个简洁的证明来确保批次中的交易有效性,无需逐一检查每笔交易。
2. 安全性:
OP:由于默认假设交易有效,可能存在一定的安全风险,需要链下用户和节点积极监测交易以确保安全性。
ZK:基于零知识证明的验证方式为 ZK 提供了较高的安全性,因为它需要生成一个证明来确保交易的有效性。
3. 吞吐量与性能:
OP:与 ZK 相比,OP 通常具有较快的链下交易处理速度,但链上验证可能需要更长时间,因为需要等待欺诈证明的挑战周期。
ZK:虽然生成零知识证明需要一定的计算资源,但 ZK 的链上验证速度较快,因为一旦证明生成,主链就可以快速验证。
4. 通用性
OP:OP 完全兼容 EVM,众多 DAPP 可以直接迁移,方案整体的计算复杂度低,更适用于通用的智能合约执行和复杂计算。
ZK:虽然零知识证明技术在发展中,但目前它在通用智能合约和复杂计算方面的应用受到一定限制。
5. 成本:
OP:通常具有较低的链下交易成本。
ZK:生成零知识证明需要一定的计算资源,可能导致较高的链下交易成本。
总的来说,Optimistic Rollups 和 zk-Rollups 分别具有各自的优缺点,Optimistic Rollups 更适合处理复杂的智能合约场景,具有较好的以太坊兼容性;而 zk-Rollups 在安全性和隐私保护方面具有优势。
- 总结
很多同一赛道的竞争对手都呈现一者重技术,一者重生态的格局,OP 和 ZK 有些像 Aptos 和 SUI,最后哪家胜利就看用户的投票了。