区块链网专职打假记者张春花报道:
第一部分——模块化经济学
第二部分——以太坊 Rollup 堆栈
第三部分——Celestia Rollup 堆栈
本文为报告的第二部分,由 Kyle 以及 Wendy 共同编译:
近期,Mustafa(Celestia Labs)在文章中给出了 Rollups 最简洁的定义,我在这里引用一下:Rollup 是一个区块链将其区块发布到另一个区块链,并继承该区块链的共识和 DA。
Rollup 中存在各种角色,如排序者(sequencer)、提议者(proposer)、证明者(prover)和挑战者(challenger),这取决于实际的部署情况。我把他们统称为 "运营者"(operators)。运营者结合用户交易,定期向基础层发布数据。他们还向最新的 Rollup 状态(例如,Merkle 根)提交 commitment。
任何人都可以使用压缩的交易数据(只要它是可用的)来重新创建状态,并检查一个状态转换是否有效。Rollup 轻客户端不会下载和执行完整的交易数据,所以他们依靠欺诈/有效性证明来保证状态转换的有效性。
这都能在当前的以太坊中看到(例如 Arbitrum、Optimism、StarkNet、zkSync 等)。他们是这样运作的:
智能合约 Rollups(SCR)有效地运作在众多的 L1 智能合约中。Rollup 执行是在链下处理的,运营者定期发布数据到 L1。智能合约根据需要验证证明/仲裁争端。他们还跟踪所有的 Rollup 状态根和交易数据,以便他们可以重新计算状态:
欺诈(ORU)或有效性(ZKR)证明然后确认状态转换的有效性。运营者在 L1 智能合约中发布保证金,以发布区块。如果这个区块或证明是无效的,他们的保证金可以被罚没,交易将不会被最终确定。这对 ORU 来说可能需要一个多星期的时间,但有效性证明可以立即敲定最终的结果。
提交和仲裁一个欺诈证明实际上是相当快的。ORU 需要这么长的时间,主要是因为 L1 智能合约需要接收证明,而这可能会被审查。在 L1 审查证明的情况下,我们需要时间通过社会共识来协调。
这些智能合约也作为信任最小化的双向桥梁,在 Rollup 和 L1 之间发挥作用。这是他们的关键优势之一。它是信任最小化的,因为 Rollup 暗中对以太坊进行了完整的验证,而 L1 上的智能合约则承担了 Rollup 轻客户端(接收由欺诈/有效性证明保护的区块头)的角色。
现在到了 FUD 的时候了。
这些始终是智能合约。就在最近,我们才刚刚见证了可怕的跨链桥攻击(主要原因都是漏洞,与密钥被破解或者经济攻击无关)。Rollups 也不能做到免疫。这个合约是一个非常特殊的信任最小化的双向桥,但它仍然是桥。就算你的代码里出现小小的失误,都可能让你损失惨重。
这就是为什么很多 Rollup 团队都紧紧抓住他们的升级密钥不松手。通常有一个多签委员会,有一个升级通知期,在其他情况下,代码甚至可以由团队任意改变而不做通知。
在安全和去信任化之间,要对升级时机进行平衡。如果你发现了一个 bug,你可能不想在管理论坛上大肆宣扬并等待一个月的时间,而是想要马上修复它。
有一个想法是具备延迟升级功能,但增加一个停止选项,可以立即停止 Rollup。虽然暂停 Rollup 令人面上无光,但确实能够减少对升级密钥持有者的信任。
Bartek(Maker 基金会)最近就这个话题和 L2 Beat 的风险框架做了一个很棒的 Rollup FUD 演讲,链接在这里。
我明白,Rollup 的成熟需要时间。我想说的是,我们要现实地看待目前我们处于什么阶段。如中心化的排序者和欺诈证明(如果有的话)一样,这些团队打算逐步实现去中心化。
移交升级密钥有两种选择:
1. 永远不变的 Rollup——没有人可以升级智能合约(除非 L1 分叉)。这是一个巨大的牺牲。基本上你已经接受了这个 Rollup 最终会被废弃的事实,而你要从头开始部署另一个实例。希望做到等同 EVM(以太坊虚拟机)的 Rollup 绝对不能这样做。当 L1 发生变化时,他们必须升级自己的虚拟机,以保持一致。Fuel v1 是目前以太坊上唯一永远不变的 Rollup。
2. 去中心化的治理——这是我实际期望的。虽然它在 L1 交易的基础上增加了信任假设,但 Rollup 治理现在控制着升级密钥。在升级生效之前,智能合约 Rollups(SCR)可以建立在延迟的基础上(设置比 Rollup 的提款期长)。不喜欢这项升级?那么你可以安全地退出。这是信任的最小化,因为你现在只是根据同步假设来进行 Rollup 治理(而不是诚实的多数假设)。你只是假设你看到了计划中的升级并在那之前退出。
在这里,一些主要的 Rollup 团队就他们关于去中心化的想法进行了很好的对话。
回到最后一点——Rollup 的退出。一个安全退出的 L1 执行层是一个很好的退路。以太坊有这个选项,但 Celestia 没有。他们在个别情况下是很实用的,但在未来 L1 gas 为 1000 美元/每笔交易的情况下,会迅速迫使成千上万的用户带着少量的资金回到 L1 上,这似乎并不理想。一个应该被更多探索的领域是设计退出到另一个 rollup 的可能性。
信任最小化的双向桥是非常有价值的——有一个巨大的生态系统,所有的 Rollup 都在挖掘共享的流动性和互操作性。大多数情况下,将安全假设浓缩到一个超安全的基础层是很好的。
但智能合约的错误和可升级性目前还有点吓人。不可变的 Rollup 减轻了许多担忧,但这是一个不值得付出的代价。
最终,战斗力强的合约与精心设计的治理(有升级延迟)将是接近 L1 本身安全性的一个最好的解决方案。
StarkNet 有一些相当酷的分形扩容计划,在此作为一个具体的例子:
1. 今天——StarkEx、dYdX、Sorare 和 Immutable X 已经在大范围地运行。但它们并不是通用的或可组合的。它们是通过与 StarkWare 的合约协议建立的孤岛。
2. 很快——StarkNet 就会出现。像我们习惯的智能合约 Rollups(SCR)一样,是一个通用的无需许可的 Rollup。
3. 以后——分形扩容。StarkEx(和其他 L3)可以部署在 StarkNet 之上:
现阶段,L2 和 L1 之间的关系是这样的:
有了 L3 之后就是这样的:
递归证明是一个相当令人心动的扩容路径。L2 上的验证者合约可以接受许多 L3 有效性证明,创建一个有效性证明,证明它验证了这些证明,并将这个证明发布到以太坊。在以太坊这样一个受到 gas 限制的环境中,这种效率很重要。L3 也可能会尝试使用链下 DA 解决方案,以进一步降低成本(尽管有更强的安全假设)。
针对特定应用的 Rollup
这些 L3 自然适合特定应用的 ZKRs。L3 很大一部分的吸引力在于能够控制自己的环境,远离 "嘈杂的邻居",同时通过 L2 结算层保留其网络效应。随着桥和互操作性的不断改善,我希望看到更多的特定应用的 ZKRs 部署。他们将保留共享执行环境的大部分优势,但摆脱了弊端。
此外——给我看激励措施,我就给你看结果。针对特定应用的 Rollup 与直接部署智能合约相比,捕获了更多的价值,因为你的代币现在捕获了执行费用和其他 MEV。但是,如果离开一个共享的执行环境会使你被孤立,这就不值得权衡了。这就是为什么(正如我之前所说)更好的桥、流动性共享等对于这一趋势的发展至关重要。
递归 Rollup 提出了一个非常有吸引力的价值主张,特别是对于特定应用的使用案例。你可以在一个灵活的环境中获得更大的规模,同时保留网络效应。L2 可以作为一个比以太坊目前所能做到的更可扩展的结算层。只要他们的数据被发回到 L1,他们就会有类似 L2 的安全保证——他们就能够重新创建状态并退出。
疯狂之处在于,Enshrined Rollups (ER) 有点未来主义。其中饱含争议,这使它们更加有趣。
您可能已经在 Twitter 上听到 ER 被翻来覆去的讨论,但实际上并不知道它们是什么,因为没有人广泛地写过关于它们(除了 Justin Drake,他在本节中为我提供了很多帮助)的文章。
ER 直接构建在 L1 规范中,而不是作为智能合约部署。这消除了恶意治理/多重签名升级或 bug 风险(以太坊本身外部)。它们遵循着硬分叉范围内基础层的社会共识。
在以太坊合并(The Merge)时,执行层(Eth1)将与共识层(Eth2)合并。执行层(结算由共识层完成)可以升级为一个 enshrined rollup(ER)。
相比之下,Optimistic Rollup(ORU)过渡到 ER 可能是最快的。由于以太坊路线图中已经存在弱无状态,您可以轻松添加欺诈证明。最简单的欺诈证明是将区块本身隔离分发以重新执行(现在将包括见证人以及前/后状态根、交易等)。然而,欺诈证明和交易最终性存在冲突,所以效果并不理想。
一个雄心勃勃的“计划”是直接迈向 enshrined ZKRollup(ZKR)。以太坊基金会已经有一个由 Barry Whitehat 领导的团队,目前正在构建一个 zkEVM。需要注意的是,这是一项艰巨的任务,可能需要数年时间。
无论是 ORU 还是 ZKR,关键是全节点不再需要执行交易(除非有欺诈证明)。这也适用于共识节点——提议者和委员会中的任何人都不会执行交易。
“结算层升级为 Enshrined zkEVM Rollup。整个以太坊生态系统——可能有数千个 Rollup/volition 和数百万 TPS——将由一个简洁的 ZKP 验证。哈利路亚。”
这是一个没有争议的步骤(一旦技术安全、易于理解等)。我们今天所知道的单实例 EVM 升级为状态根等效 zkEVM。这意味着每个 L1 区块都带有一个 SNARK,用于证明状态根是有效的。
尽管已有一些公开的实施细节,不过仍需数年。关于证明分发,您现在有两种选择:
Sidecar–SNARK(或 SNARK,实现细节)只是作为 sidecar 发送,人们可以隐式地验证它。
链上——SNARK 实际上是链上的,智能合约可以很容易地访问证明本身来验证它。
最终,共识有两层——社交和代码。Sidecar 方法倾向于社会依赖,而链上方法倾向于代码。
性能瓶颈
如前所述,ER 消除了全节点重新执行交易的需要。这使得同步到链更容易,并且它还消除了验证者的计算瓶颈。目前验证者存在几个共识瓶颈:
弱无状态已经打破了存储和磁盘 I/O——清除了我们今天的主要瓶颈。但是在这个阶段,全节点仍然需要执行每笔交易。为每个区块的有效性获取一个 SNARK 也会导致计算失败。无状态和 zkEVM 都代表着在消除更多瓶颈时提高 gas 限制的机会。带宽是唯一剩下的主要资源需求(这也与尼尔森定律成比例)。
zkEVM Enshrined Rollup 的好处
更简单的共识——无状态(没有欺诈证明)仍然需要全节点执行,但 zkEVM 消除了这个瓶颈。执行客户端可以将数千行对共识至关重要的 EVM 执行代码换成更简单的 SNARK 验证代码。
无状态见证人——无状态允许共识节点停止保持状态。他们现在收到见证人(Verkle 证明),证明每个区块中的正确状态访问以及交易。zkEVM 也消除了这种需求——状态差异就足够了。这提高了验证者的共识带宽效率,允许更高的 gas 限制。
更安全的轻客户端——轻客户端使用 SNARK 过滤无效状态根的速度比使用欺诈证明要快得多。这允许更安全和/或更快的以太坊到竞争性 L1 桥。
哦,你以为执行分片设计取消了,是吗?这是接下来要讲的——ER。
升级单实例 EVM 后,部署多个(例如 64 个)并行 zkEVM ER 并不难。这是同构 L1 执行分片的一种形式。这也是一个疑问,是否很快就会需要这种分片。作为 zkEVM ER,单实例吞吐量可以比当前容量增加几个数量级。
典型的执行分片与 ER 之间的区别似乎很模糊,而且 Twitter 上对此进行了很多混乱的辩论。关键点再次是全节点不需要执行 ER 块。因此,具有 zk 证明的状态根的执行分片可以是 ER。您可以获得与常规 SCR 相同的可扩展性和功能(提议者只需要接受证明并检查 DA),但您会获得 Rollup 在共识中的优势(稍后将详细说明)。
旧的执行分片将以太坊验证者集的子集分配给每个分片。每个整体分片将处理自己的执行、共识和 DA,然后检查点返回到信标链。
zkEVM ER 只处理执行(使其效率更高),类似于我们今天看到的 Rollup。他们依靠信标链来达成共识、结算(发布证明)和 DA(他们会消耗数据 blobs)。
另一个实施细节与委员会有关。可以在每个汇总中都有一个提议者委员会来验证 SNARK,然后将其发送到主要结算 Rollup。或者,您可以跳过委员会,让 Rollup 区块生产者将 SNARK 直接发送到所有提议者操作的主链。
无论哪种方式,提议者都只是接受最高出价,检查 DA,并验证每个 Rollup 区块随附的 SNARK 作为额外字段。你可以把它想象成一个大区块。它看起来像这样:
zkEVM Enshrined Rollups 的优势
升级当前的结算层似乎很明显,但是将所有这些其他 zkEVM 与仅仅作为 zkEVM SCR 相比,有什么好处呢?
社会一致性——ER 继承了 L1 社会共识。SCR 目前有中心化的运营商持有升级密钥,最终这种风险将在于 Rollup 治理。
经济一致性——所有 ER 费用和 MEV 都计入 ETH。核僵尸启示第三次世界大战经济安全。
补贴证明验证–ER 可以补贴证明验证的成本,而 SCR 则必须支付 EVM gas 进行结算。无论如何,此时验证 SNARK 将非常便宜。这缓解了今天汇总工作的问题。例如,像 Arbitrum 这样的汇总会延迟结算,以避免有时会出现 L1 gas 峰值。
最佳结算延迟——共识可以为每个 ER 块强制执行 SNARK 证明,从而提供每个块的结算延迟。
最佳活性——中心化 Rollup 排序器可能会活动下降(我们已经看到这种情况发生)。SCR 还可以选择让排序器达成自己的共识,以提供预先确认(StarkNet 将采用这种方式)。这会受到次优活性的影响,因为外部共识可能会失败,并且 L1 逃生舱口仅在超时后才会激活。
状态根 EVM 等效性——当前的工具和轻客户端将开箱即用。今天的 SCR 主要针对与 Solidity 兼容的 VM(例如 zkSync)或字节码等效的 EVM(例如 Scroll),而不是完整的 EVM 状态根等效性。
网络效应——将 EVM 的网络效应从其已经处于领先地位的地位进一步提升。允许开发人员围绕一个标准联合起来是很有价值的。(尽管相反,试验新的虚拟机也可能产生令人兴奋的可能性)。
最大化 gas 效率——ER 使用原生操作码,因为它们内置在协议中。相反,SCR 可能不得不解决 VM 效率低下的问题。
zkEVM Enshrined Rollups 的缺点
但它们并不完美:
没有公共产品融资——像 Optimism 这样的私有 Rollup 可以自行决定将其收入重新用于资助公共产品。ER 将仅限于资助 L1 安全和销毁 ETH。
次优压缩——SCR 目前在链上的结算频率远低于每个区块,从而实现更好的数据压缩。他们还可能有自定义或经常更新的字典,以改进数据压缩。
VM 不灵活——以太坊 ER 很可能是一种 EVM。SCR 能够采用其他流行的 VM(例如,WASM、RISC-V、MIPS)或创建一个新的 VM(例如,Cairo、FuelVM)。定制的 zkVM 可能能够比 zkEVM 实现更好的数据压缩。
更难的预确认——SCR 可能会选择有一个中心化的排序器,它提供即时(~100 毫秒)的预确认,以获得更好的用户体验。这通过 ER 的去中心化排序更难实现。
后发(last mover)——由于 L1 的保守性,ER 做出任何改变的速度都非常缓慢。各种升级将需要通过治理过程(EIP 和分叉)实现。为了避免电路错误,可能需要冗余的多电路设置(例如,2-of-3 签名)或繁重的正式验证。
潜在增加的构建者成本——构建者现在必须创建一个证明,除非排序器和证明者被分成不同的角色(这是可能的,实现细节)。以太坊也可以决定发行 ETH 来抵消 ER 证明成本。这就涉及到“区块构建最终将有多专业化?”的问题。我目前期望有意义的中心化无论如何(由于经济激励,正如我之前所写的那样),但我们不确定。实施后,证明也将大大降低成本和速度。
Justin 将不得不重做他的预测,因为太多的 ETH 会被销毁。
zkEVM Enshrined Rollups 的投机优势
跨多个 ER 运行(或可能构建所有 Rollup 区块、结算和数据)的构建者可以提供 ZKR 之间的同步互操作性。
例如,构建者可以提供抵押品并承诺包含您的同步交易。如果他们接受您的出价但未能执行交易,他们将失去保证金。crLists 还可以帮助提供预确认,因为提议者(他们也可以选择与抵押品绑定)将能够强制包含交易。
经济激励措施导致构建者跨 Rollup 运营——我们今天已经看到跨链 MEV 的这种中心化力量。这些同步互操作性的软确认是用户想要的,他们会为此付费。如果你能够提供这项服务,你可以赚更多的钱。如果你能比其他人赚更多的钱,你就会成为最好的构建者。
请注意,即使在此之前,ZKR 也会对 L1 进行同步调用,类似的动态也在发挥作用。新的 danksharding 设计保留了这种可能性,因为一切都在一个区块中得到确认。例如,您可以将资金桥接到 L1,然后在同一个区块中与这些资金执行交换。但是,要提供这项服务,您需要控制 L1 和 L2 区块的生产,以确保两条腿都能执行(即,只有在此 swap 紧随其后执行时才桥接这些资金)。这是跨 Rollup 和 L1 的区块构建者的一种中心化力量。
反对 Enshrined Rollups 的论点——可信中立
将单实例 EVM 升级到 zkEVM 似乎是一件轻而易举的事(如果我们对这项技术感到满意的话)。64 个 Enshrined Rollups 的下一步是更具争议性的部分。
“事实证明,区块链中的大部分内容都属于观点,而不是技术内容。”针对 ER 的案例在这里也不例外。这是一个有趣的以太坊开发者、Celestia 开发者和以太坊垃圾贴,他们在双方都做出了很好的案例。这里有很多分歧。有些人担心 ER 会对 SCR 这样做:
该论点认为,ER 本质上会与以太坊试图培养的 SCR 竞争,从而损害其可信的中立性。SCR 会感觉像是“二等公民”。它可能“限制以太坊结算层的可信中立性,削弱其对非 ER 的社会经济保障。”这与关于 Cosmos Hub 极简主义的辩论类似。基础层功能/极简主义的这种有趣平衡也是 Vitalik 之前讨论过的。
Enshrined Rollups 的依据——可信中立
相反,一些人认为 ER 可以通过防止任何商业 rollup 团队变得过于占主导地位来保护以太坊的可信中立性。假设“Rollup Labs A”变得太成功了,他们的 Rollup 挤占了其他所有人。如此依赖一个私人团队可能会严重影响以太坊的可信中立性和网络效应。来自 ER 的中性平衡可以缓解这种情况。
更进一步,一个成功的 Rollup 生态系统甚至可以脱离他们的以太坊联盟。
这是 Ali Atiia 过去提出的论点:
当前的以太坊扩展计划主要是作为具有约束结算层的 SCR 的 DA 层。以太坊依靠 Rollup 来进行可扩展的计算。但是,SCR 可以切断“老旧的中间人”并引入他们自己的 rollup 本地资产。
引用的假设示例是 Optimism、Circle (USDC)、MakerDAO (DAI) 都拥有相同的投资者。投资者促进协议的交叉授粉,本地部署的资产更便宜,用户体验更好。因此,Circle 和 MakerDAO 在 Optimism 上分别部署 USDC 和 DAI 具有经济意义。一旦 Rollup 建立了足够的本地资产、DeFi 和安全性,他们可能会决定以太坊不再为他们提供足够的价值。
为了建立粘性,以太坊需要一个更好的结算层。单独的 DA 可能不够粘。要构建最佳结算层,您需要可扩展性和共享流动性。ER 使 SCR 之间的通信大大提高了效率。我们今天听到的“超大规模”L3 可能会在以太坊 ER 之上一层变得更加可行。ER 成为使用价值最高的 dApp = 大量流动性进行主权和机构结算的首选场所。
对 Enshrined Rollups(ER)的个人看法
ER 不会威胁以太坊的可信中立性。是的,活动将发生在理论上可能已转到 SCR 的 ER 上。但这与反对以太坊 SCR 的论点完全相同,并且继续被许多单一的竞争性 L1 支持者传播。SCR 不会寄生于以太坊——它们是协同的。ER 不会寄生于 SCR——它们是协同的。以太坊最好用 SCR,而 SCR 最好用 ER。
ER 把这个馅饼做的比他们自己吃到的要多得多。
SCR 将永远是创新和更高扩展的家园,因此它们将继续承载绝大多数 Rollup 活动。ER 旨在确保以太坊能够履行其保持最佳结算层的承诺:
信任最小化的桥接和获得最大的共享流动性池
更高的扩展使得位于顶部的 SCR 的桥接成本大大降低,开辟了令人难以置信的令人兴奋的新可能性
尽管其他人也有类似的看法,但我并不认同 Ali 对以太坊会脱离的担忧:
如果 Rollup 是经济上理性的参与者,他们有一个简单的等式来衡量:
ER 在两个方向上都更加有利地倾斜了这种扩展——它们使以太坊成为更好的结算层,并且它们为顶部的 SCR 提供了更低的成本。
将 Rollup 拆分为孤立的 L1(具有不安全的桥)会大大缩小这个馅饼,而您得到的回报只是略微提高了利润率(节省了廉价的结算费用)。此外,你现在需要补贴自己的安全性,很可能是通过发放通胀性区块奖励。这没有经济意义。
关于为什么 Rollup 会离开以太坊的一个潜在经济合理的论点是他们是否可以建立更好的结算层。那么理论上你可能会得到一个更大的馅饼。我认为任何人都有机会的唯一方法是使用以下方法:
然而,你在后半部分网络效应、去中心化和可信的中立性方面做出了巨大的牺牲。在以太坊之上构建一个结算层更有意义,就像 StarkNet 对他们的 L2 所做的那样。您将获得两全其美的优势——一个高价值的金融结算层,保留了以太坊的巨大优势,而且价格非常低廉。
协议复杂性
Vitalik 在他最近的 EthCC 演讲中谈到了一个非常重要的话题。以太坊正在进入其最快速的创新时期。未来几年计划了很多好东西。然而,复杂性的分层意味着更多的风险,即使是以太坊开发者也越来越难以跟上创新的速度。虽然以太坊不需要完全技术僵化,但它最终会稍微刹车:
公平地指出,添加 zkEVM ER 并不完全像是在公园里散步那样轻松。然而,在我看来,它们是以太坊雄心勃勃的路线图的最后一步,在曲线图的顶部附近,曲线趋于平稳。有一天我们会放慢速度,但现在还不到时候。
我最喜欢的类比是 ER 是公共部门,而 SCR 是私营部门。SCR 仍然是创新和大多数 Rollup 活动的所在地。ER 是缓慢而稳定的可预测基础层,可在其上运行,提供最大的安全性。两者和谐共处。与它们蚕食的任何边际活动相比,ER 为 SCR 增加的价值要多得多。
以太坊已经有了一个令人信服的扩展 DA 计划。但这并不意味着它应该满足于其结算层。以太坊也可以而且应该在这里竞争。zkEVM ER 提供了扩展 L1 以太坊的最佳途径,将其定位为主要的结算层。
ER 与以太坊的经济和社会一致性保持了其可信的中立性,创造了一个令人难以置信的凝聚力系统。健壮货币产生下一级经济安全,补贴整个生态系统的安全。
反对 ER 的唯一论据是围绕中立和竞争的“社会”论据。虽然我理解这些担忧,但我认为它们通常被夸大了。当技术准备就绪时,以太坊当然应该追求一个 zkEVM ER,然后再评估并行实例。
你不认为以太坊的基础层会一直很弱并且吞吐量一直很低,对吧?
现在我们对这些 Rollup 如何工作有了更好的理解,让我们回到他们实际需要的基础层。
数据可用性(DA)是显而易见的——让它超级便宜,提供很多,使它易于使用 DAS 进行验证。以太坊和 Celestia 都旨在以一种或另一种方式做到这一点。
我关于结算的一般论点——我不认为最好的结算层将仅限于验证/仲裁证明和桥接代币的核心功能。以太坊应该保留一个丰富的通用本地执行环境。这将是大型 DeFi 所在的地方,这些 DeFi 在每笔交易的基础上都对价格不敏感。这为 SCR 提供了巨大的网络效应、流动性和建立的安全性。
以太坊应该长期关注如何扩展结算层(无状态,zkEVM)。
也许你们中的一些人有私人飞机,但我们大多数人都乘坐商业飞机。我需要和其他人分摊账单。这有点像 DeFi 池化。
分散的流动性是不好的——所以最好将流动性集中在一个地方(比如以太坊)。
但费用高昂也不好——所以我们是否需要打破流动性以避免拥堵?
不——我们只是在 L2 上进行商业化飞行。
如果我想向 Yearn 存入 100,000 美元,支付 10 美元费用是可以接受的。但是为 100 美元的存款支付 10% 作为费用是没有意义的。相反,L2 可以容纳 1000 名想要将 100 美元存入 Yearn 的人,将他们捆绑在一起,然后只需进行一次 L1 存款!所有这些都无需用户支付 L1 gas 费——您只需支付 0.01 美元的费用份额。事实上,这正是 Argent 已通过 zkSync 提供的。
Aave 也在探索这一点,作为其在 StarkNet 上部署的一部分。他们将开发一个智能合约来汇总 L2 用户存款,然后将它们存入 L1。该合约将根据用户在池中的比例将 aToken 从 Aave L1 分配给 StarkNet 用户。该合约将汇总用户的 aToken,并在赎回抵押品时将其存入 L1 Aave。
这是一个过度简化的版本:
dAMM 是 StarkWare 去年与 Loopring 合作首次提出的。我将在这里总结他们的设计。但是,请注意,这是一个具有开放设计问题的积极研究领域。目前还没有已上线的实现,未来的设计可能看起来与这个完全不同。
dAMM 是一种 L2 AMM,它在由 L1 合约强制执行的单个 L1 池中聚合流动性。执行发生在多个异步共享流动性的 ZKR 上。LP 在参与 L2 交易的同时为 L1 AMM 服务,让他们接触更多交易。(更高的交易量)/(相同的流动性)= 更高的费用 % → 更好的资本效率。
异步性 = L2 s 可以处理交易,而无需使用相同的 dAMM L1 流动性池与其他 L2 s 进行强制通信。这是使共享 AMM 成为可能的关键。
这是通过将流动性池与定价状态分开来实现的。因为资金和状态是解耦的,你可以有多个状态(用于多个 ZKR)使用同一个流动资金池。每个 ZKR 都有自己的 dAMM 状态。
合约同意提供 L2 状态提供的任何价格,只要 L1 合约有足够的流动性来完成报价。由于套利,所有状态都应该恢复到均衡比率。
这解决了在 L2 之间共享 AMM 的主要障碍——如果用户可以同时交易,则存在并发风险。否则,这可能会使每个 L2 无法知道它是否可以安全地完成结算。
LP 在 dAMM 中面临更大的 IL 风险——风险随着 LP 所接触的市场数量线性增长。因此,在最坏的情况下,LP 会受到他们在常规 UniswapV2 AMM 下遭受的 IL 的 n 倍。这对于稳定的货币对(例如,在 Curve 中)无关紧要,但对于其他池来说可能会很高。这可以使用智能合约中称为 dAMM“健康因子”的参数来缓解,该参数限制了最大 IL LP 可能遭受的损失。这个健康因子可以保证 dAMM 流动性比率不会降得太低。
这种设计可以支持 L1 和 L2 上的多个独立市场,它们都共享相同的流动性。通过允许将 L1 LP 代币(例如,来自 UniSwap ETH/DAI)直接存入 dAMM 上的相应池(例如,ETH/DAI),L1 流动性(例如,在 Uniswap 上交易)可以用作 dAMM 流动性。
dAMM 可以支持 L1 交易,但无法再轻易减轻健康因素。不过,有限合伙人可以选择承担这种额外的风险,并将自己暴露在 L1 交易中。
粘性
Vitalik 已经明确表达了他的想法,即与结算共享一个 DA 层确实很棘手:
这在很大程度上可以追溯到 Vitalik 的著名帖子,关于为什么未来是多链而不是跨链的。大致来讲,受信任的成对跨链桥意味着对连接链的 51% 攻击 = 你的桥被攻击(许多桥实际上更糟)。如果您在以太坊结算但将数据发布到其他地方(例如,在 Celestium 中),类似的原则也适用。如果 Celestia 在这里受到多数攻击,那你又要倒霉了。
共享 DA 层和结算层的 Rollup 避免了这些问题,因为它们彼此之间建立了信任最小化的桥接(也可以仅使用 DA 而没有共享结算层的信任最小化桥接,稍后会谈到)。如果以太坊没有受到 51% 的攻击,你就不能单独对 Rollup 进行 51% 攻击。即使以太坊受到 51% 攻击和逆转交易,它的 Rollup 也会被逆转,二者保持一致。因此,您可以安全地持有在一个 Rollup 上发布并在另一个 Rollup 上封装的资产。
所以共享一个 DA 和结算层可以提供最好的安全性。但是,如果您决定使用以太坊作为结算层,然后提供另一个 DA 源(例如,像 zkPorter、validium、celesium 等这样的 volition),那么有什么好处/权衡呢?你仍然可以使用与任何 rollup 相同的桥和连接到 L1——你共享流动性、DeFi 池化等。对于 volition,链下(例如 zkPorter)和链上(例如 zkSync)DA 模式共享相同的状态并且是完全可组合的。当您希望数据存储在链上或链下时,您只需在用户级别进行选择。
单独的结算在很大程度上提供了网络效应,而 DA 则增加了全面的安全性。通过共享 DA 可以安全地优化这些网络效应。例如,您可以更轻松地跨 Rollup 实现销毁和铸币机制,允许您跨链本地部署代币。但是,如果具有非常不同的信任区域,那就不会这么容易。
最终,我们可以看到这里有一个安全范围。许多以太坊 Rollup、validiums 等将使用以太坊进行结算——但并非所有这些都将使用其 DA。DA 至少在某种程度上更加商品化,它将是一种丰富的资源。
这是不同层的网络效应有多强的最大百搭牌。现实情况是,我们在理解 rollup 未来如何相互通信方面还处于难以置信的早期阶段,这可能会对这些堆栈的发挥方式产生有意义的影响。有很多理论上是可能的,很多未解决的问题,还有很多棘手的工程问题。例如,Slush 正在为 ZKR 开发一些最令人兴奋的桥接可能性。未来我们可能会看到 ZKR 之间的原子可组合性。