第二弹,探讨 L2 赋予的链下扩容能力,以及对以太坊生态的意义。
Mr.bug | !loves,公众号:Sharding Lab以太坊:极速进化的怪兽①
在过去的两年里,由于对可扩展以太坊使用方式的需求,出现了许多 L2 扩展解决方案。以太坊目前受到高交易费和每秒交易可扩展性低的困扰,虽然这些 L2 解决方案没有直接“升级”到以太坊,但是可以认为,它们能够增强整个以太坊生态系统,因为它们创造了更多使用 ETH 和相关资产,并与之互动的方式。
0x01
①中阐述的链上可扩展性方案都需要对以太坊的协议进行重大更改,周期极其漫长;若想在尽可能短的时间内获得低 gas 费和较好的用户体验,L2 扩展解决方案是不二之选,是依赖主网的链外方法。
L2 不是可扩展性的一个解决方案,而是指一揽子解决方案,所有这些解决方案都是通过从 L1 中删除计算(加快事务时间)来扩展应用程序,同时保持强大的分布式安全性。
这些解决方案包括状态通道、Plasma、Rollups等,不用直接改动区块链本身的规则(区块大小、共识机制等),而是在其之上再架设一层来完成具体的工作,还是印证了那句名言”在软件的世界里,没有什么是不能靠加一层解决的“。
DankSharding 方案解决了以太坊主链扩容的一揽子问题,不仅仅是扩容,本质是带来了更深刻的思想转变,即以太坊并不需要致力于在主链上增加多少 TPS,因为“三难”问题的存在,消耗巨大力气去提升 TPS是得不偿失的,而应该转变为“为增加 TPS 制造土壤”,比如更高的安全性与去中心化,更低的 gas 费用,更健壮的数据可用性,更大的链上存储等。
以太坊如果想找到通向霸主之路,必须找到解决上述需求的方案,必须发展生态扩容能力,以公链模块化的设计思想,升级自身为一个统一的结算(settlement)和数据可用性(Data Availability)层,将高速的 Rollup 执行交易上移到L2/L3,扩展多维收费场景,设计制定如 EVM 的应用、区块数据、见证数据和状态大小等不同资源种类的的费用模型;
并且所有这些资源都应该有不同的容量限制,这意味着如果每个资源都有不同的定价机制,它们将会以有效的方式被分配。相比,以太坊目前用一个单一的指标来衡量所有这些资源的使用成本,也就是 Gas 费,这是非常低效的。
有一个重大的方向性确定,以太坊已经在以Rollup为中心推进,表明其为 Rollup 服务的决心;
以太坊生态扩容必定是向链上分片 + DankSharding + Rollup为组合的综合生态方向发展,最佳的链上和链下扩容方案结合起来打通通向霸主之路的最后一公里。
0x02
Rollup,ZK 的前戏
Rollup应该是最突出的 L2 扩容解决方案。
简单解说,Rollup = 链上的智能合约 + 链下的聚合器。
链上智能合约 = 它的信任模型就是以太坊上的一个智能合约, 借用了以太坊的安全性, 而不是像其他 L1 一样需要建立新的信任共识;例如,我们可以像信任 Uniswap 的协议 ( 核心是智能合约 ) 一样信任 Arbitrum 的协议。
链下聚合器 = 它会链下执行并聚合交易, 将大批量的交易压缩, 最终上到以太坊主网, 达成更快更便宜的目的。

2019 年最初,rollup 首次提出,走到今天已经有点百花齐放的味道了,其中最为有名的当属Rollup 四小花旦,以 Optimistic Rollup 为代表的 Aribitrum 和 Optimism , 以ZK Rollup 为代表的 zkSync 和 StarkWare。
以太坊也并不是唯一以 Rollup 为中心路线的 L1 ,Tezos、NEAR 和 Celestia 是已经转向了某种以 Rollup 为导向的区块链。
Rollup 本身是个复杂的领域方案,从宏观上分,可分为安全 Rollup,主权 Rollup,结算 Rollup,由于每类单拉出来都是一个系列,在此先不赘述,集中精力瞄准安全 Rollup。

安全Rollup,根据加密证明分类和数据可用性 (Data Availability / 存储在链上或链下),又可以分为以下几类:

数据可用性 / 存储在链上或链下:
链上:状态数据连同所有交易的所有已执行的 calldata ( 智能合约函数调用、原生代币转移、签名 ) 一起放入 rollup 的加密证明中,这使得可以在链上访问和验证所有数据。
链下:已执行的 calldata 和状态由 L2 处理并存储在链下。这使得这个方案不够安全和去中心化。
然而,链下存储数据方案更容易将更多交易打包进一个 rollup 中,也因此比链上调用数据证明方案的速度快许多。
证明机制不同 / Optimistic Rollups 和 ZK Rollups
Optimistic Rollups:使用欺诈证明(fraud proofs)

这种证明引入了一种所谓的争议时间延迟 (Dispute Time Delay, DTD),一旦证明提交至 L2,验证者留有一定的时间以标记出无效的证明,验证者在7 天的挑战期内修改有争议的交易;
无效证明可能包含着不正确的状态转换,因而会对涉及的验证者施加惩罚;随后状态回滚至最近的有效快照状态处,Rollup 合约跟踪状态根的整个历史记录和每个批次的哈希值。Optimistic Rollups 假设所有交易都是有效的,并且不经验证就将它们发布到基础层。

不过,质疑协议还有一种是交互式争议解决协议,在某些 Optimistic Rollups 中,如果验证者观察到父链上发布的无效块,他们就会与其生产商进行交互式争议解决协议。
在协议期间,验证者和区块生产者在链外通信,直到他们在受质疑的区块内收敛到单个指令上,找到了分歧的根源。
然后,验证者和受质疑的块生产者都为该指令之前和之后的状态创建状态根。这些状态根和指令提供给作为仲裁人的链上合同。
如果受到质疑的区块生产商提供的状态根无效,合同将拒绝有争议的区块并回收其生产商的资金。相反,如果验证者提供的状态根无效,他们锁定在合同上的资金将被回收。
ZK Rollups:使用有效性证明(validity proofs)
这是一种利用零知识 (ZK, zero-knowledge) 密码学以确保交易有效性的数学证明;
每个批次都包含了一个叫做 zk-SNARK 的密码学证明,证明新状态根是执行批次后的正确结果。无论计算量多大,这个证明都可以在链上快速验证。
ZK-Rollups 创建一个加密证明并将其作为有效性证明的形式发布到主网。

混合 Rollups
Validium
采用与通用ZK Rollups 相同的有效性证明,但不将数据存储在主网上。采用 Validium 的风险在于数据可用性管理器可能会控制用户的资产,从而引发安全问题。
然而,链下数据存储绕过了主网上的交易处理,与通用 ZK Rollups 相比,它显着增强了可扩展性。
Optimistic validium
交易数据发布在链外,不同于 Validium,它使用欺诈证明保证财产安全,只是安全保证较弱,因为需要数据可用性来生成欺诈证明并成功解决争议。
如果发生争议并且相关状态转换的数据不可用,则欺诈证明无法证明欺诈;因此,如果链下数据可用性提供者未能提供数据,则资金可能会从Optimistic validium中被盗。
Volition
通过结合 ZKRollups 和 validium,Volition 是一种混合体,让用户可以选择链上或链下数据可用性。
选择是在个人交易层面做出的,其中链下数据代表更便宜的费用和更低的安全性,而链上数据导致更高的费用和更高的安全性。
adamantium
应该是还未被实现的小众验证方式,其设计是让用户提供自己的数据可用性,用户必须保持在线以证明每个区块的数据可用性。如果用户不在线或未能证明,那么他们的资金会自动在链上撤回到结算层。
此方案是由 StarkWare 提出,如果确实得到了开发,它可能会更适用于希望对数据安全有更多个人控制的用户。
Enshrined rollup
一个直接作为现有区块链一部分的 rollup。
简单地说,它是一个执行分片,将充当另一个具有计算执行、共识和数据可用性的区块链,但它会在信标链回检;
坦白说,以太坊的 rollup 只有计算执行,并使用信标链来验证数据可用性和欺诈 / 有效性证明。
0x03
ZK 是否在被摩擦

目前,普遍的观点是Optimistic Rollups已经证明是一个可行且功能齐全的解决方案,市场的聪明从侧面反映了这样的结论,L2 top 10 中虽然只有3 家采用 Optimistic,但市值却占到75%。
OP 与 ZK 的业务流程大致相同,其中滋味各自品尝。

Optimistic 的成功虽然与它更早进入市场有很大关系,但更为重要的我认为有以下几点:

与 ZK Rollups 相比,Optimistic Rollups 向 L1 提交Rollup 的固定成本更低(随着活动的增加,交易数据如果成为Rollup费用的最大边际成本,这种情况可能会发生变化);
EVM 兼容性和等效性使得 Optimistic Rollups 具备完全、不受限制的可组合性,而 ZK Rollups 在 zk 电路上组合智能合约具有固有的困难;所以Optimistic Rollups 不必为ZK Rollups 存在的困难和不兼容的特性发愁;
Optimistic Rollups 还能为流动性代币提供更快的确认和确定性,而 ZK Rollups 目前只能为原生提款和非流动性代币提供更快的确定性;
但是,随着 ZK 的逐步崛起,已经有越来越多的 L2 选择了 ZK (top 10 里有 6 家),更为重要的是,以太坊已经确定ZK Rollups 才是未来,到底是哪些特性打动了以太坊:
可以同时支持链上和链下数据模式的扩容,尤其是链下方案提供的吞吐量远高于任何 rollup,而且费用低得多,而 optimistic rollups 的交易费用远高于侧链或其他的 Layer1;
不需要欺诈证明,提款速度快, 低延迟;
相对于 Optimistic Rollup ,没有退出时间。
中继者将无法欺骗系统,因为使用零知识证明来建立交易的真实性。
零知识证明所提供的安全性,以及中继者发布恶意活动的难度,使得 L2 使用此项能力的在未来会更有前景。
总体而言,一个用了挑战期来保证发生错误可以被纠正, 一个用了密码学来保证错误不可能发生,以太坊的决策显而易见。
0x04
市场的困惑
Rollup 中的三个角色:
Sequencer
Rollup 系统中的特权参与者,接收用户新汇总事务、将事务组合成块并将该块发布到共识和数据可用性层的节点。
块由两个组件组成:块头和实际事务数据。除其他事项外,块头包含对链状态的加密承诺——通常是默克尔根。
Prover
这一小部分的节点负责大量工作,下载所有汇总块头和事务数据、处理和验证所有事务的节点,以计算汇总状态并检查所有事务是否有效。
他们在特殊的硬件上运行,从数学层面无法伪造虚假的 ZK 证明。如果一个全节点在汇总块中遇到无效的事务,它将拒绝并忽略该块。因此,Sequencer 无法创建具有无效事务的有效块。
Verifier
验证这些由 Prover 提交的 proof 的有效性,即对数据样本进行抽查,以确保其提供了计算诚实性所需的所有的信息。每个人都可以运行这种节点,无需特定的硬件。
Rollup 网络似乎有有着标榜的 TPS(一般是低很多)和丝滑的用户体验,但是 L2 的安全性却十分令人担忧, 网络很多组成部分是中心化的。
虽然我们可以说 ZK Rollup 中 ZK 证明从数学上无法伪造,用户可以通过 L1 的 DA 来重建所有状态,但这似乎仅是挽回颜面的一些话术,系统安全层面无法保障,以上一切似乎也只能是水中月,镜中花。
令市场担忧的爆款:
中心化 sequencer
大部分的 Optimistic Rollups 和 ZK Rollups 的 sequencer 都是中心化的形式存在,也就意味着交易的执行, 排序和出块都是靠一个中心化的服务器来支撑。
之前 Arbitrum 就因为 sequencer 的硬件问题导致整个网络宕机。
中心化升级
大多数 Rollup 网络的升级是中心化的,意味着实际上去黑掉整个 Rollup 的成本相较于上十几亿的 L2 TVL, 相比简直可以忽略不计。
比如 zkSync 就是以一个 security council 来管理升级,回想之前 Ronin 被黑事件,让十几亿的资金依赖于这么几个人的多签,市场真的敢持续玩下去吗。
闭源组件
部分 Rollup 的一些关键组件是闭源的。比如 StarkNet 的几乎所有关键组件均未开源,依然是中心化开发,且没有开放的开源许可证,这很不 Web3。
0x05
大战将至

The Merge (2022 年 8 月下旬至 11 月)
合并是指以太坊执行层 ( 以太坊主网 ) 与信标链 (POS 层 ) 的合并
The Surge (2023 年)
以太坊上引入分片 (Sharding),还记得 DankSharding 吗
The Verge
引入 Verkle 树,这是对 Merkle 证明的强大升级,允许实现更小的证明大小 (proof sizes)
The Purge
通过剔除历史数据和消除技术债务,减少验证者所需的硬盘空间;
The Splurge

即将而来的 Merge 将会对以太坊产生深远影响,PoS代替 PoW 预计将大大降低网络能源消耗,提升去中心化和安全水平;

Merge 后 的 ETH 发行量预计会降低 90%+,代币价值会大大提升,这也将进一步加固以太坊的市场护城河;
我们正处于一个通过协议快速变化,从而提升以太坊 L1 能力的阶段,在 The Verge 阶段甚至会把 ZK 引入到主链中,这是新的设计与突破,但最终 L1 协议的更改会变得缓慢与低频,所有重大创新不可避免得会来自于 L2 ,而 L2 中的核心 ZK 将会发挥重大作用,此篇回顾了历史,了解了 ZK Rollups 解决的问题。
下一系列,我们扒开ZK Rollups,去探索其中核心技术 ZK 的世界。
没脸没皮的啰嗦 er
如果觉得文章不错,请这样 |
|
关于我们关注&标星 | 不迷路
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
