以太坊基金会研究团队在第八次AMA中关于扩容的问答。
来源:reddit.com/r/ethereum
作者:以太坊基金会研究团队
编者注:2022 年 7 月 7 日,以太坊基金会研究团队在 Reddit 上举行了第八次 AMA。
ECN 对这次 AMA 的大部分问题进行了整理和编译。需要注意的是,基金会研发团队成员就某些话题存在个人的看法和推测,为避免曲解,请以原贴为准。
由于篇幅较长,文章分主题整理,本文为扩容专题。
JonCharbonneau 提问:你能解释一下 enshrined rollup 怎么运作以及它们在以太坊的潜在发展路径吗?(optimistic 和 zkEVM?)
(译者注:L2 扩容研究者 Polynya 在这条推文中解释 “enshrined rollups” vs."独立(discrete) rollup" 之间的区别就好比 “公共部门” 和 “私营部门”)
还有就是你认为这可以带来的最大的好处和坏处是什么,因为有很多人在这一点上有不同的看法。
以太坊基金会 Justin Drake 回答:
enshrined rollups
“Enshrined rollups” 是一个非常有趣的话题:) “Enshrined rollups” 指在 L1 上享有某种共识集成 (consensus integration) 的 rollup。而智能合约 rollup (见 L2Beat 和 zkrollups.xyz 中列出的例子) 与其不同 —— 完全在 L2 上运行,在共识之外。
共识集成可以给 enshrined rollup 赋予超强的能力,但也要付出重大的代价 —— 请看下文对好处和坏处的详细讨论。广泛地看,enshrined rollup 和智能合约 rollup 是互补的。我希望两者都能在 “以 rollup 为中心的以太坊路线图” 中发挥关键作用。
它们在以太坊的潜在发展路径 (optimistic 和 zkEVM?)
目前的计划就是直接往 enshrined zk-rollup 的方向发展。这是 Vitalik 发布的可视化路线图中 “对所有东西生成 ZK-SNARK 证明” 的一部分。以太坊基金会有一个由 Barry Whitehat 负责的大约 10 人的团队,致力于将规范的 EVM 实例升级为一个 enshrined zkEVM rollup。也就是说,构建一个状态根完全等同的 zkEVM,为 L1 以太坊区块提供简洁的加密证明 (SNARKs),证明相应的状态根是有效的。这带来了各种好处:
无需重新执行:验证者和其他全节点不再需要重新执行交易以验证一个区块。这为验证者移除了计算这一共识瓶颈,可能是一次提高 EVM gas limit 的机会。移除重新执行的需求也加速了大多数同步策略。
共识更简洁:从共识中移除执行意味着验证者可以运行超简单的执行客户端,在这种客户端中,数以万计的共识关键的 EVM 执行代码缩减成几百行 SNARK 验证代码。
无需状态见证:无状态执行客户端不再需要下载见证 (如 Merkle paths 或者 Verkle proofs) —— 下载状态差异就足够了。这大大地提高了验证者的共识带宽效率,并释放出更高的 EVM gas limit。
更安全的轻客户端:轻客户端可以快速过滤无效的状态根,而不像使用欺诈证明筛出无效状态根那么缓慢。这使得 “以太坊-L1” 的桥接更加安全。
将目前的单一实例 EVM 升级为 enshrined rollup 是一项需要多年努力的巨大工程。之后相对容易的步骤是部署多个 (如 64 个) 并行的 enshrined zkEVM 实例 (消耗的是 blob 数据)。这是 L1 同质化执行分片的一种形式 (之前被称为“阶段 2”)。
Enshrined zkEVM 的工程工作对于技术迷来说尤其有趣, 它涉及加密证明系统、电路设计和审计,以及软件和硬件加速。EF 团队正在招聘 zkEVM 的工程师 —— 请联系 justin@ethereum.org
最大的好处和坏处是什么
好处
社会共识:Enshrined rollups 继承了 L1 的社会共识,不再需要治理代币来执行 rollup 升级。相比之下,大多数智能合约 rollup 可能会受到治理攻击。
对证明验证有补贴:Enshrined rollups 可以补贴用于结算的证明验证成本 (每个区块的成本固定)。相反,智能合约 rollup 必须为结算支付 EVM gas。
结算延迟:Enshrined rollups 自然而然地从每个区块结算延迟中受益。
最优活性:许多智能合约 rollup 可能会选择利用外部共识机制来对交易进行排序,以及作为一个链上的逃生舱口。这种定序基础设施会受到次优活性的影响,因为外部共识可能会失败,而逃生舱只会在超时后激活。
EVM 状态根等效性:Enshrined zkEVM 的工具和轻客户端可开箱即用。许多智能合约 rollup 可能不会选择具有 EVM 状态根等效性,而是选择兼容 Solidity 的 VM (如,zkSync) 或者一个字节码等效的 EVM (如,Scroll)。
网络效应:规范的 EVM 实例享有作为先行者的网络效应,而升级到 enshrined 则保留了这些网络效应。
坏处
没有公共物品资助:Enshrined zkEVM rollups 将在资助公共物品的自由裁量权方面受到限制。不像 Optimism 那样具有为任何公共物品提供资助的治理机制,enshrined zkEVMs 将被限制在为 L1 安全性提供资助和为 ETH 的稀缺性做出贡献。
次优的压缩:智能合约 rollup 可能会选择在链上结算,而不是每个区块结算一次,从而实现更好的数据压缩。智能合约 rollup 也可以有一个自定义或者经常更新的字典,以改善数据压缩。
虚拟机缺乏灵活性:一个以太坊 enshrined VM 很可能是一个 EVM。相比之下,智能合约 rollup 可以选择采用一个更加普遍使用的 VM (如,WASM、RiscV、MIPS) 或者创建一个新的 VM (如,Cairo)。一个自定义的 zkVM 可能比 zkEVM 能实现更好的数据压缩。
更难的预确认:智能合约 rollup 可以选择一个中心化的定序者来提供即时 (~100 毫秒) 的预确认来给用户一个良好的交互体验。这种快速的预确认使用去中心化的定序系统很难实现,不管是 enshrined rollups 还是智能合约 rollup。
后发者:由于 L1 的缓慢和保守性,enshrined zkEVM 将会是所谓的后发者。为了对冲电路漏洞的可能性,可能需要一个冗余的多电路设置或笨重的形式验证。
TheTrueBlueTJ 提问:理论上,全球支付系统是否有可能使用以太坊来作为流通货币?无论是通过 L1 还是 rollup?当然,要考虑到未来可扩展性的改进。
以太坊基金会 Justin Drake 回答:
理论上,全球支付系统是否有可能使用以太坊来作为流通货币?
完全有可能。目前以太坊可以达到 10 TPS (每秒交易笔数),这是一个粗略的数量级。而将来会有 3 次 100 倍的增长,将使我们达到 1000 万 TPS (足够每人每天进行 100 次交易):
100 倍增长来自 rollups
100 倍增长来自分片
10 年内带宽增长 100 倍(尼尔森定律)。
我的论点是,由于网络效应,最安全的共享安全平台的需求将趋于饱和。一个合理的走向是,如果以太坊能够保持经济安全方面的领先优势,并同时扩展到 1000 万 TPS,那么以太坊就有可能作为互联网的结算层。
AllwaysBuyCheap 追问:
带宽的提高怎么提高以太坊交易速度?更多的区块空间?
以太坊基金会 Justin Drake 回答:
在共识中存在着各种计算瓶颈:
磁盘 I/O:通过无状态来移除 (以及 enshrined zkEVMs)
存储:通过无状态来移除 (以及 enshrined zkEVMs)
计算:通过 enshrined zkEVMs 来移除
带宽:根本的
因为带宽是根本的共识瓶颈,带宽的提高可以释放更多区块空间。
not_a_disaster 提问:从长远来看,什么更好?是单个 rollup 占主导还是有几个小的 rollup 方案?我看到双方的论点是:一个占主导的 rollup 意味着用户不需要桥接资产并且会有更佳的用户体验然而,如果有一个占主导的 rollup,那么其他 L2 就没有意义了。但话又说回来,长期来看,EF 团队一直都只推崇 zkRollup (理想情况是具有 zkEVM)。
以太坊基金会 Ansgar Dietrichs 回答:
这是个好问题!任何将其吞吐量扩容到一定程度的链 (L1 或者 L2) 都会使普通用户无法完全验证该链。L1 和 L2 之间的主要区别在于,L2 可以利用其底层的基础层来弥补这一点:
在 zk-rollups 上,基础层保证了状态转换的有效性和相应数据的可用性。如果你不能自己处理 rollup 交易,唯一不能保证的是你可以访问当前状态 (以便你可以发送有效的 rollup 交易)。所以唯一的额外信任假设便是存在一个状态提供者 (中心化或去中心化的)。
Optimistic rollup 引入了一个小的额外信任假设。你不仅需要相信有人在处理 rollup 交易并使得当前的状态可用,而且你还要相信在出现欺诈的状态转换时,这些处理 rollup 的实体中至少会有一个实体提交相应的欺诈证明。通常 optimistic rollups 会给大家一些经济激励让大家提交这些欺诈证明,所以这与 zk-rollups 的区别很小。
从概念上说,之所以能够不用过多破坏去信任的情况下扩容 rollup,是因为 L1 和 L2 之间的关系。只要用户信任基础层的状态,他们就能分辨出正确与不正确的 L2 行为 (例如,状态提供者的响应总是会附带一个针对 rollup 状态根的证明,这个证明存储在 L1 上)。
另一方面,对于基础链,非常重要的一点是每个用户都能自己处理链。如果你不运行自己的节点并向一个外部状态提供商询问状态,那么你就无法判断所提供的状态是否真实的。类似地,如果存在恶意的状态转换,那么就没有一个可以解决争端的结算层 —— 你必须亲自选择信任哪一方。
所有这些原因让我们决定将以太坊 L1 变为 rollup 的结算层,其重点是要让每个用户都能轻易地处理交易。我个人对于即将过渡到 Verkle trees 感到十分兴奋,它将允许完全无状态的客户端实现 (想象一下你的 Metamask 能够运行自己的嵌入式节点)。这样,随着时间的推移,基础层就会变成 L2 生态系统的“信任根”。
希望我的回答能够解释为什么 rollup 的吞吐量有潜力远远超过 L1,而不需要做不合理的信任权衡。所以我个人预计最后会有吞吐量非常高的 L2。然而,是否会有单个占主导的 rollup 仍待观察。
以太坊基金会 Justin Drake 回答:从长远来看,什么更好?是单个 rollup 占主导还是有几个小的 rollup 方案?
长期来看,rollup 将能够实现每秒处理数百万笔交易,所以并行性是有必要的。我们可以设想一种 rollup 内部并行 (如,通过一个多核 rollup 虚拟机) 和一种 rollup 外部并行 (如,同一个虚拟机的并行实例)。
共享安全性的 zk-rollups (比如,共享相同数据可用性的 zk-rollups) 具有同步的可组合性,所以 “rollup 内部并行” 和 “rollup 外部并行” 之间的界限开始模糊,那么最终的结果也不会差太远。
not_a_disaster 提问:你认为应用专用型 L2/rollup 存在哪些问题?如果现在一个拥有大量用户基础 (1000 万 — 1 亿名用户) 的 Web2 公司想要使用区块链,但仍然想要实现去中心化,那么应用专用型链/rollup 几乎是唯一好的可替代选项。你认为这样做有什么缺点?
以太坊基金会 Justin Drake 回答:
你认为应用专用型 L2/rollup 存在哪些问题?
我鼓励开发者基于通用型的 rollup (比如,Arbitrum、Optimism;很快就是 zk rollups) 构建应用,而不是部署一个应用专用型 rollup。这将加速开发,一起摊销结算开销,促进可组合性,减少工具摩擦性。话虽如此,通用型 rollup 的愿景当然也会有烦恼。
Rollup 将会有被攻击的漏洞。我们已经遭受过数千万美元损失的交易所攻击,以及数亿美元损失的跨链桥接攻击 —— 预计 rollup 会有数十亿美元攻击。在 EIP-4844 或 EIP-4488 被实现之间,交易费不会像我们希望的那样低。工具在一段时间内会表现欠佳,网络效应可能会缓慢发挥作用。
Vitalik 回答:
如果现在一个拥有大量用户基础 (1000 万 — 1 亿名用户) 的 Web2 公司想要使用区块链,但仍然想要实现去中心化,那么应用专用型链/rollup 几乎是唯一好的可替代选项。
我觉得这种情况下,他们应该使用 validium。他们会依赖于一个中心化服务器或者一个委员会以获得活性,但是他们能够受到区块链提供的安全保证。
AllwaysBuyCheap 提问:1. 为什么在 EIP-4844 开发的同时,EIP-4488 没有被实施?2. 长远来看,你们认为哪一种技术会赢,Snarks 还是 Starks?
Vitalik 回答:
STARKs 是一种量子证明,它们有更佳的证明时间,在你使用的领域有更多灵活性。
SNARK 证明要小得多。我预计前量子、SNARK 和在某些情况下 STARK 的 SNARK (具有 STARK 的优势但证明尺寸更加小) 将会占主导,后量子 STARK 将会占主导。但是不同的人对此有不同的观点。
以太坊基金会 Justin Drake 回答:
为什么在 EIP-4844 开发的同时,EIP-4488 没有被实施?
正如你所指出的,EIP-4844 和 EIP-4488 并非相互排斥。我倾向于在合并不久后,并且在 EIP-4844 之前实现 EIP-4488。因为 EIP-4844 需要数年时间才能结出可用的果实。实际上,即便 EIP-4844 上线主网之后,我们也可能需要等待几个月,rollup 才真正能选择使用 bolob 数据。
长远来看,你们认为哪一种技术会赢,Snarks 还是 Starks?
长期来看,我们想要的是后量子 SNARK。这种先进的后量子 SNARK 是基于哈希的,碰巧是 STARK,即,一种透明的 SNARK (“透明”意味着无需受信任初始化)。
egodestroyer2 提问:对于 L2 开始结算交易并且将业务从主链中抢过来,你怎么预测近期、中期和长期的费用市场?
以太坊基金会 Justin Drake 回答:
费用市场波动较大,并且与 ETH 价格呈正相关趋势。因此,预测收费市场在很大程度上是猜测的。
短期内 (7月、8月、9月),我预计费用市场会在熊市中保持相对平静
近期内 (即合并后的几个月),我预计以太坊和 ETH 的热度将会升温,费用市场将会显著增长
中期来看 (即 2-3 年),由于 rollup 被大量采用并且区块空间的供应大过需求,gas 价格可能会暂时平静下来
长远来看 (3-10年),由于 rollup 和分片,我预计每笔交易费用很小,但总费用量会很高 (可能是 10 亿美元/天)