金砖国家即将遭到报复?专家预测美国关税后果
以太坊研究者 Polynya:单片式公链为什么是“死胡同”?
单片式 L1 区块链 (依然) 极为低效
我从 2020 年开始撰写关于 Rollups 的评论,并在去年的这个时候发表博文,当时主流的说法是“Cardano/其他 L1 智能合约平台即将到来,用户将会在一夜之间从以太坊大规模地迁往其他 L1 网络。”之后的说法是“L2 网络是暂时的权宜之计,实现扩展的唯一方式是 L1 网络。”然而,即使在 2021 年底进行最温和的测试,这些替代性 L1 网络的叙述也以惊人的速度瓦解:
- 币安智能链 (BSC) 由于状态膨胀而使其系统要求更高。其结果是,节点开始不同步,导致许多问题。这里的问题在于他们一开始指定的系统要求非常低——但他们没有告知人们,系统要求会随着状态膨胀呈指数增长。现在,他们在没有充分的审计或测试的情况下进行不计后果的网络变更。当然,切换到 Erigon 并拥有多条链将提供增量效益,但总是会存在严重的限制。
- Solana 没有犯这样的错误,他们从一开始就对很高的系统要求非常开放。现在,我绝对不会对 Solana 的各种失败和问题进行批评,因为这很大程度上是因为它是一个早期的 beta 产品。由于缺失一些特征而导致的 bug 和问题总是会出现在 beta 项目中,无论是 Rollups、dapps 还是单片式 L1 网络都是如此,我只希望开发人员能够修复这些问题。但问题是,随着时间的推移,当 Solana 成熟了,久经测试消除了 bugs,并实现了一个费用市场,它将需要提供一个递增的吞吐量,并在技术和经济可持续性上付出巨大的代价。Solana 本质上是不可扩展的。Optimistic Rollups 是要比 Solana 要好得多的解决方案,并且会很快成熟。
- Polygon PoS 可以说是继以太坊之后被采用最多的链。现在,Polygon PoS 确实是一个“提交链”(commit chain),而不是一个替代性 L1 链,但它仍然是一个单片链,并受到与 L1 网络相同的低效率约束。Polygon PoS 达到了它的极限,受到了垃圾交易的影响,提高了它们的最低 Gas 价格。但即使在那之后,还是有很多项目向它发送垃圾信息,导致 Gas 价格上涨了超过 0.1 美元。需要明确的是,这是一个比 Solana 或 Cardano 要好得多的结果,在 Solana 或 Cardano 中,在拥堵期间 99% 的交易都会失败,只有微型 MEV 机器人会成功。值得赞扬的是,与其他单片式区块链项目不同的是,Polygon 团队非常公开地承认了这些局限性,并将所有精力投入到 ZK-Rollup 中——这实际上将实现高可扩展性。行动胜于言语,Polygon 团队在零知识技术方面投入 10 亿美元的行动值得称赞。
- 说到 Cardano,他们也是一个处于非常早期的 beta 产品,和 Solana 一样,也必须实现费用市场。Cardano 的系统要求仍然很低。最近,我看到 Cardano 社区对 Rollup 越来越感兴趣,很高兴看到这种情况!然而,在 Cardano 本身没有实现数据可用性采样之前,所有这些都是徒劳的。
- 我们看到还有许多其他项目没有达到其大肆宣传的效果。每当区块空间饱和时,Avalanche C-Chain 的费用就会飙升——我的意思是,这是单片区块式链的一个基本特征。子网会导致安全性或去中心化的碎片化,并且将受到同样严重的限制 (即费用的飙升)。至于 Avalanche 的“online Purning” (在线修剪,这里的“修剪”是指节点压缩过去的历史交易):让我们拭目以待,但这似乎实现了 Geth 的“离线修剪”(offline purning),并使其以更高的频率进行修剪。这可能是 Geth 的一个很好的补充,但它绝对不能解决状态膨胀的基本限制。我们已经看到了 Harmony 的失败等等。但我也想强调的是这些正在为下一代构建可扩展性解决方案的项目:以太坊、Tezos、Celestia 和 Polygon Avail 的数据可用性抽样;Mina 和 Aleo 的有效性证明;以及还有许多的 Rollups 方案,现在似乎每周都会出现新的 Rollup!很明显,我们已经进入了「模块化架构」的时代——很少有人会认真地构建新的单单片式 L1 区块链。在紧要关头,Polkadot 和 NEAR 等“原型模块化”项目是中期解决方案,虽然不能解决上述许多问题,但仍保持了可持续性和安全性。如果你不关心可持续性和安全性,那么 Dfinity/ICP 正在构建有趣的东西。
- 我还想明确一点,单片式 L1 区块链是有一条前进的道路的:升级到下一代技术。例如,Avalanche 可以在底层实现一个“数据可用性抽样子网”,该子网由整个验证者集进行验证,并引入模块化的执行层。除非这是他们路线图上的优先事项,否则我将继续推动这种说法,直到这种转变在整个行业普遍存在。
- 现在,并不是每一条链都必须是一个 Rollup 或者有着某种形式的模块化设计。在安全性不重要的情况下,以及希望实现某种在 Rollups 中很难或不可能实现的新特性时,主权 L1 链仍然有其一席之地。当然,这在很大程度上是一个利基市场,但它是真实存在的。Cosmos 生态系统在这方面做得很好,Polygon Edge也在构建引人注目的解决方案,尽管我希望看到这些链被证明是有效的,并且 IBC (链间通信) 也在进化以验证有效性证明。跨 L1 区块链的「桥」也是如此。但即便是在有效性方面被证明是完美的 L1 跨链桥,比如 =nil; Foundation 正在构建的「Mina <> Ethereum 桥」,仍然需要假设这条更脆弱的链 (即 Mina 链) 不会被攻击;相比之下,Rollups「桥」能够提供完整的安全保证,即使那条更脆弱的 Rollup 链被攻击,你仍然可以继承那条更强大的链的安全性。
- 最后,讨论时机很重要。当前,Optimistic Rollups 还没有准备好,所以使用这些非 beta 阶段的单片式 L1 区块链仍然是有意义的。应该注意的是,不管是 Optimistic Rollups 还是单片式 L1 链,都存在不同程度的成熟度/不稳定性,因此你必须根据具体情况进行评估。但我不会在这篇文章中对此进行论述,我唯一的兴趣是从长期来看,区块链可以如何大规模、可持续地进行扩展。但 Optimistic Rollups 正在迅速成熟,在成为可持续性解决方案这方面有着明确的途径。只需要工程工作就可以实现——很有可能至少会有一个Optimistic Rollup 将实现完全的去中心化、实现数据压缩、拥有高流动性的「桥」,并在一年的时间内扩大规模。一旦 Optimistic Rollups 准备迎接其黄金时刻,那么所有单片式 L1 区块链网络的游戏就都结束了。
在过去,我采取了非常长远的观点,因此,我可能从一个更积极的角度讨论了 ZK-Rollups。我一直认为 ZK-Rollups 将是游戏终局,并认为所有的 Optimistic Rollups 将会要么转变成 ZK-Rollups,要么使用有效性证明 (validity proofs) 来取代其欺诈证明系统。但这可能是 3 年以后的事了。
上文第一部分的结论是:单片式 L1 区块链是一条死胡同,在这一点上的证据是压倒性的,所以我想把这一点彻底强调一下。以下是本文第二部分,将主要以以太坊为中心,因为以太坊是所有 Rollups 创新的所在地,而且以太坊有着最具雄心的可扩展性路线图。
Optimistic Rollups 对比 ZK-Rollups
现在,让我们来讨论一下 Optimistic Rollups 和 ZK-Rollups。顺便说一下,最近我了解了 Obscuro (一个 TEE Rollup) 和 Urbit 的 Naive Rollup。Rollups 的设计空间是一个空白画布,因此可以有多种类型的 Rollups!但是在这里,我特别讨论的是基于欺诈证明 (Optimistic Rollups) 和有效性证明 (ZK-Rollups) 的安全 Rollups。
交易费
让我们从特定于应用程序的 Rollups 开始:很明显,ZK-Rollups 在这方面领先。Loopring、zkSync 等方案在支付领域被欢迎,其 ERC-20 代币转账的费用在 0.10 美元左右。撰写本文时,基于 ZK-Rollup 技术的去中心化交易所 ZigZag 上的固定费用是 0.28 美元,包括 Gas 费和交易费。同时,去中心化衍生品交易平台 dYdX 平台没有面向用户的 Gas 费用,但我们可以计算该平台的交易费用:在交易量较高时,每笔交易他们都要向以太坊支付 0.08 美元的 Gas 费;在交易量较少的日子,则是在 0.10 美元左右。
现在,Optimistic Rollup 很有可能能够提供这一范围的费用——实际上,Worldcoin 项目计划使用的 Hubble (基于 Optimistic Rollup 的 L2 网络) 的 ERC-20 转账费用目前低于 0.10 美元的范围。我们继续转向智能合约 Rollups——为什么当前 Optimism 和 Arbitrum 网络上的费用如此之高?撰文时,根据 Lefees.info 的数据,Optimism 上的代币兑换费为 0.85 美元,而 Arbitrum 的为 1.35 美元,这实在是太高了!
答案很简单:这些 Optimistic Rollups 本身还没有优化,而且大多数早期在 Optimistic Rollups 上部署的 dApps 项目都是以太坊上原有项目的分叉版本,并不是针对 Optimistic Rollups 而设计的。最近,通过专门针对 Optimistic Rollups 而进行优化的 Aave V3 成功地降低了约 10 倍的费用!
但是还会有更多的优化。签名聚合/压缩将使得每笔交易直接节省约 1,000 Gas。调用数据 (calldata) 的基本压缩可以直接节省 2.5 倍,且更多更先进的方案将会出现。随着 Optimistic Rollups 以及部署在其上的 dApps 的优化,Optimistic Rollups 的交易费用将很容易达到 0.01- 0.10 美元的范围。
等等,这是以太坊发展路线图中的 The Surge 阶段 (即通过分片 (sharding) 大幅提高 Rollups 的可扩展性) 到来之前的情况!如果 2022 年末的以太坊上海硬分叉升级 (这将是以太坊合并后的首次升级) 进展顺利,那么第一步将很可能是引入“携带 blob 的交易” (blob-carrying transactions,这是 Vitalik 提议的一种新的交易格式),这将使得 calldata (调用数据) 的成本降至大约为零,且并且 Optimistic Rollups 实际上将变得更加便宜!
今天,ZK-Rollups 有着较高的固定成本。当前,ZK-Rollups 要更便宜,因为其调用数据成本超过了该固定成本;但是,随着调用数据成本变得可以忽略不计,交易费将完全由 ZK-Rollups 的固定成本主导。而 ZK-Rollups 的运行成本要高得多。
很明显,现在有很多不同的证明系统,成本也不同,但通常的估计是 0.01- 0.02 美元。这将是 ZK-Rollups 的一个最低成本。然而,如果它们愿意,Optimistic Rollups 可以自由地下降至更低:由于一个成熟的 Optimistic Rollups 成本 99% 是调用数据成本,它们可以以微不足道的成本访问 ~5200 TPS 的 blobspace。
顺便说一下,Optimistic Rollups 也将比 Validiums 方案(在链下保存其数据可用性)更便宜,因为这个最低成本也适用于 Validiums!我相信 zkPorter (这是一个 Validium 方案) 的交易成本在 0.01- 0.03 美元之间,而 Optimistic Rollups 的成本可以远低于这个水平。就我个人而言,出于交易质量的原因,我不建议使用这种方案,但在这种情况下,Optimistic Rollups 最终将获得更高的“利润”,可以重新分配给利益相关者,或将其用于公共产品融资、开发等等。
当然,最终,~5200 TPS 会饱和,如果有超过这个的巨大需求,调用数据成本将再次开始上升。但是,到那时,Danksharding 将会推出,首先将这个空间扩展到 125,000 TPS,然后在数年内扩展到数百万 TPS。(顺便说一下,在讨论 Rollups 时,“TPS”数字是没有意义的,但它用于说明目的是有用的。) 长期来看,调用数据成本绝对不会成为瓶颈——瓶颈将是 Rollups 本身。重申一下,瓶颈将是 Rollups 本身,而不是以太坊。
长期来看,随着 ZK-Rollups 的成熟,我们将有 ASIC 证明者,ZK-Rollups 的成本也将变得微不足道。届时,ZK-Rollups 的优势——最明显的是即刻取款 (无需等待)——将胜出。对于一些具有高度压缩状态增量的用例 (如 dYdX),它们很快就会比 Optimistic Rollups 便宜得多。
最终性 (Finality)
说到这,一个常见的误解是,Optimistic Rollups 有 7 天的敲定期。但实际上,Optimistic Rollups 将比 ZK-Rollups 更快地实现与 L1 相同的最终性 (finality)。我们已经看到 Optimistic Rollups 每 5 到 10 分钟提交一个交易批次,所以这就是延迟。这 7 天是为了确保维持这一最终性,并假设至少有一个实体会维持该最终性。随着 Optimistic Rollups 的扩展,这些交易批次将更加频繁地被提交,且当达到大约 20 TPS 时,Optimistic Rollups 可以在每个区块进行提交,此时 Optimistic Rollups 的最终性将等于 L1 的最终性。由于 ZK-Rollups 的固定成本要高得多,在每个区块进行提交将需要更多的活动 (>100 PTS) 才能实现。然而,通过 Vitallik 提出的这个 blob 交易 EIP (以太坊改进提案),ZK-Rollups 可以重新设计,将一些证明提交给 blob,所以这可能不是一个问题。
那么,Optimistic Rollups 的这 7 天是什么呢?因为挑战期是 7 天,所以有一种交易确实有 7 天的敲定期,即从 Optimistic Rollups 取款至 L1 链。对于某些情况,比如跨链 NFTs,这可能是一种挑战。然而,我们已经看到了许多在 Optimistic Rollups 上线的「桥」,且随着 Optimistic Rollups 的成熟,活动 & 流动性将提高,届时这 7 天的挑战期将不再是一个问题。更大的问题是 ZK-Rollups 支持了许多新用例和跨 Rollup 活动,而这些用例和活动是无法在 Optimistic Rollups 上实现的。
比如,借助于 Danksharding,ZK-Rollups 可以同步调用 L1,我甚至推测,如果我们通过 crLists 实现 L1 预确认,不同的 ZK-Rollups 之间的某种程度的可组合性将是可能的!Optimistic Rollups 被排除在这些新颖和创新的场景之外。附录:虽然 Optimistic Rollups 可以进行隐私交易,而 ZK-Rollups 将能够以低得多的成本进行此类交易。
吞吐量
特定于应用程序的 Rollups 相当精简,并且可以大规模扩展。如果我没记错,早在 2020 年年中,StarkEx 就演示了 9000 - 18000 TPS。然而,对于智能合约 Rollups 来说,情况更加具有挑战性。我们已经看到 StarkNet 只能够比 dYdX 或 Immutable X 的吞吐量更低,并将吞吐量优化作为一个最高优先级。因为 Optimism 和 Arbitrum 都是基于 EVM 客户端,所以它们 a) 拥有经过实战测试的代码库,b) 相对优化的客户端。几天前,我询问在需要并行性之前 EVM 可以扩展到什么程度,Alexey Sharp 认为 Erigon 可以扩展到 500M Gas/秒。因此,对于优化的基于 EVM 的 Optimistic Rollups 有很大的空间,并且可以通过多线程客户端或多个实例/递归 Rollups 提供更多的空间。
这是我们争论的焦点:因为 Optimistic Rollups 有一个诚实的少数假设,你不能将系统需求推得太紧。要清楚的是,因为这是一个诚实的少数假设而不是单片式 L1s 的那种诚实的大多数假设,因此 Optimistic Rollups 可以比任何单片式 L1 区块链更安全。但是你仍然需要有一个限制,这个限制在默认情况下需要低于 ZK-Rollups,因为 ZK-Rollups 可以很容易地通过有效性证明进行验证。
但是 Optimistic Rollups 有一个解决方案——无状态客户端。我在 Optimism 的路线图上看到了这一点,但我不记得在哪里了。使用无状态客户端,验证 Optimistic Rollups 非常容易,使用正确的工具验证交易将非常简单。此外,因为可以很容易地直接从 L1 重构 Rollup 的状态,所以通过借助状态过期,Rollups 比 L1 更具有侵略性。一旦实现了无状态性和高频率状态过期,Rollups 将已经克服了状态膨胀的严重问题!此外,你还拥有像 Fuel V2 这样的新解决方案,它通过类似 UTXO (未花费交易输出) 的系统进行并行化。
话虽如此,通过递归有效性证明,ZK-Rollups 仍然是实现网络最大吞吐量的更优雅的解决方案。很有可能的是,在 StarkNet 自身日趋成熟的同时,我们看到特定于应用程序的 ZK-Rollups 在其之上构建了巨大的吞吐量,且作为一个整体,StarkNet 的规模远远超过任何 Optimistic Rollups。然而,其中的权衡是原子可组合性——除非 ZK-Rollups 团队的向导很快发现这一点!