关于Rollup 你应该知道的基础知识
Layer 2 是解决⽅案的统称, 旨在通过在以太坊主⽹(第 1 层) 上处理交易来帮助扩展应⽤程序, 同时利⽤强⼤的主⽹分散式安全模型。当前以太坊交易速度慢,电费上涨使⽤⼾量增⼤时出现⽤⼾体验差的问题。第 2 层协议就是为了解决这个问题诞⽣。
Layer 2 是什么
Layer 2 是解决⽅案的统称, 旨在通过在以太坊主⽹(第 1 层) 上处理交易来帮助扩展应⽤程序, 同时利⽤ 强⼤的主⽹分散式安全模型。当⽹络繁忙时, 交易处理速度会受到影响, 这会使某些类型的 dapps 的⽤⼾体验变差。随着⽹络的⽇益繁忙, 电费也随着交易发送⽅的竞标⽽上涨。这可能会使使⽤以太坊变得⾮常昂贵。
Rollup 是什么
rollup 中⽂直译为打包,以前的⽤法为编程语⾔模块打包器,相当于 python 中的 module。现在⽤于第 2 层协议中的⼀种解决⽅案。总的来说,它们把主链下的很多交易打包,⽣成⼀份声明或者证明,证明此包内的所有交易合法(即交易前 Merkle 树的根和前⼀包内的交易后根对应的上,且交易内容合 规),然后只将其中⼀部分内容发布到主链,从⽽增加速度,减少电费和交易费消耗。
特点
交易执⾏在主⽹之外;
但交易数据或交易证明存储于主⽹, 以便于验证.
种类
零知识证明 zk-rollup;
优化 optimistic-rollup(笔者⾃译)
ZK-Rollup
简介
这⾥仅为简单介绍,详细部分会另开⽂章介绍。简单来说,零知识证明就是在不暴露秘密的情况下,说服对⽅我有这么⼀个秘密。例如对于 A,B 两⼈,A 知道秘密 a, b (和 a+b=7),B 知道线性映射 f(x),B 发给 A 映射 f, A 计算 f(a) 和 f(b) 并发给 B,B 计算 f(a)+f(b)=f(a+b)。如果 f(a+b)=f(7),那么 B 可以确 信 A 知道 a+b=7。从历史来讲,零知识这⼀概念最早出现于 1985 年,Shafi Goldwasser, Silvio Micali, and Charles Rackoff「The Knowledge Complexity of Interactive Proof-Systems」。⽽零知识证明⽤于 Rollup 最早出现于 2018 年 Barry 的⽩⽪书中。
零知识证明在 rollup 中的作⽤
这⾥零知识证明主要是⽤于以太坊区块链上发布并公开记录该区块的有效性。在 Layer2 上被打包的交易将会以⼀个证明的形式发布于主链,这使得每个⼈都有验证它的办法。主要⽬的是防⽌有⼈恶意 利⽤Layer2 上的交易来篡改信息。值得注意的是,零知识证明并不是隐私保证,也不是加密系统。因为除了拥有该秘密的⼈以外,没有⼈可以解密。从诞⽣⾄今,零知识证明或者说 ZK-Rollup 经历了三个发展阶段:SNARK, STARK, 和 Bulletproofs. ⽬前来说 Zcash, ZK Sync(Matter Labs), DarkForest(Game) 等在使⽤SNARK,Monero 使⽤ Bulletproofs. 从下图中可以对⽐这三种⽅法的区别。具体例⼦将在后⽂介绍。
特点
对⽐Plasma 和侧链
由于 Plasma 和侧链的扩容性问题,Rollup 本⾝被视为新兴解决⽅案,⽽ZK-Rollup⼜是其中可扩容性最强的,也是处理交易速度最快的,相对于 Plasma 和 OP-Rollup⽽⾔。它的数据只有很少⼀部分存储于主链上。
单笔交易费降低。
对⽐OP-Rollup
⼀般说来,它的验证速度快,证明⽣成速度很慢。但是由于它的⽣成依赖于智能合约,所以相当于 把所有⼈的⼯作分给了⼀个⼈做,剩下的⼈的⼯作就是简单的验证,这⾥单指 SNARK。
不需要欺诈游戏,从⽽使交易快速被验证⼊块 (约⼗分钟)。
零知识证明的计算困难要求数据优化以获取最⼤吞吐量。
ZK-Rollup 需要⽣成⼀个初始串,这会使系统中⼼化⼀些。
量⼦计算可以破解,这⾥指 SNARK。STARK 可以抵御量⼦攻击。
它需要的安全性假设更⾼。
OP-Rollup
简介
优化 Rollup 出现于 2019 年 7⽉,由 John Adler 在以太坊基⾦会研究论坛上提出想法。⽬前使⽤ Optimistic-Rollup 的有 Optimism, Fuel Labs, Arbitrum 想法较为简单,这⾥OP-Rollup⼀共有两种链下⻆⾊,聚合者 (Aggregator) 和验证者 (Validator)。在 Layer2 发⽣的交易被聚合者打包,并⽣成⼀个 Merkle 树的头,和智能合约。在聚合者质押⼀笔资⾦ 后,聚合者可以将打包的交易上传⾄主链。验证者审查该打包,可以提出质疑,并给出欺诈证明 (fraud proof)。
欺诈证明:验证者可以审查资⾦状态和总和,对⽐于⾃⼰的本地状态,若发现有⾮正常更新,则验证 者可以提出质疑并更改从该区块到之后的所有区块 (区块在从 rollup 上传⾄主链后会有 1-2 周的质疑时 间,若此时间内⽆⼈质疑则该区块完结)。提出质疑的验证者可以得到聚合者质押的资⾦。
OP-Rollup 使⽤博弈论和验证游戏来确保数据验证,它们的运作假设是每个⼈都遵守道德规范,但如 果有恶意⽅发布交易,则区块回退,因此命名为 Optimistic Rollups。
特点
• 交易周期:相对于 ZK-Rollup⽽⾔,OP-Rollup 需要 1-2 周时间完结区块。交易速度不慢,但交易状态完结需要较⻓周期。
• 应⽤性:⽬前⽽⾔两种 Rollup 均⽀持 EVM。ZK-Rollup 最近也⽀持 EVM,使得 OP-Rollup 失去了原本优势的其中之⼀。
• 交易速度与交易费:现实交易速度 500 笔/每秒,相对于 ZK-Rollup 的 2000 笔/每秒存在劣势。
• 数据记录:所有交易数据均记录在主链,⽆需信任第三⽅,但也加重了交易费。
• 安全假设:OP-Rollup 假设⼤多数验证者是诚实的。
另⼀份对⽐表格⻅下图:
总结
总结⽽⾔,Rollup 想法并不难掌握,该想法侧重于打包链下交易并设法放⼊主链。打包的交易发⽣并执⾏于链下,从⽽加快交易速度。链上存储的数据减少⾄只需要 Merkle 树的头或者⼀个证明,从⽽节省费⽤。对⽐⽽⾔,笔者更看好 ZK-Rollup 在⻓期的前景,OP-Rollup 原本最⼤的优势在于其应⽤性及⽤户体验良好。这两点优势在 ZK-Rollup 已经应⽤EVM 及⽬前⻜速发展中已经逐渐消失。⽽ZK-Rollup 的安全性 更强,理论交易速度更快,存储数据更少从⽽更加节省费⽤。只有⼀点⽬前存疑,就是 ZK-Rollup 的计算性过⾼,可能还是会导致费⽤上的劣势。另⼀点疑问将在下篇⽂章中给出,当然也可能是笔者对于 SNARK 应⽤于实践的过程了解不甚所导致。
微信扫描关注公众号,及时掌握新动向
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场
2.本文版权归属原作所有,仅代表作者本人观点,不代表比特范的观点或立场