在 11 月 9 日,以太坊开发人员齐聚 Zoom 参加了 All Core Developers Execution (ACDE) Call #174 会议。ACDE 电话会议是一个每两周举行一次的系列会议,由以太坊基金会协议支持主管 Tim Beiko 主持,开发人员在会上讨论和协调对以太坊执行层 (EL) 的更改。本周,开发者们主要关注以下议题的进展:
·第一次 Dencun Goerli 影子分叉(Shadow Fork)
·更改执行 API 规范以包含 blob 相关数据
·在 Verkle 升级中添加证明验证预编译
·未来两周 ACD 通话时间表
Dencun Goerli 影子分叉 #0
11 月 6 日,以太坊开发者对以太坊测试网 Goerli 进行了影子分叉。影子分叉是一种测试升级的过程,可在不影响现有网络活动的情况下进行,它通过将节点同步到网络(在本周一的例子中是 Goerli 区块链)并用少量节点对网络进行分叉来创建。影子分叉保留了与原始网络相同的状态和历史记录,但可以在不影响原始网络上的交易活动或用户的情况下进行升级。
以太坊基金会 DevOps 工程师 Parithosh Jayanthi 表示,测试 Dencun 升级的第一个 Goerli 影子分叉进展顺利。Jayanthi 表示,Goerli 影子分叉 #0 上观察到的及时证明、区块提案和 blob 可能是因为该网络规模较小,只有 100 个验证者。为了更准确地评估 Dencun 升级后区块和 blob 的延迟,开发人员倾向于在具有更多验证者的影子分叉中进行测试。此外,以太坊基金会研究员 Danny Ryan 建议,在ACDC #121关于 CL 客户端进行重构的讨论之后,再在另一个影子分叉上测试 Dencun 升级。
由于在较大网络(如以太坊主网)上进行影子分叉的成本较高,开发人员倾向于先在 Goerli 上进行多次影子分叉,然后再在主网上进行。Beiko 还建议在进行 Goerli 的第二个影子分叉之前,至少再启动一个独立的、以开发人员为中心的 Dencun 测试网络,并具备最终的 EL/CL 规范。
执行 API 规范的更改
接下来,开发人员讨论了 Nethermind 客户端开发人员(在线代号为「Flcl42」)的建议。Flcl42 提议更新执行 API 中的 "eth_feeHistory" 方法,以便包含在 Dencun 之后的 Blob 相关数据。此外,他还建议添加一个新方法 "eth_blobGasPrice",以便用户能够获取潜在的 Blob Gas 价格数据。作为 "eth_blobGasPrice" 的备选方案,Flcl42 还表示,开发人员可以创建一个新方法 "eth_gasPrices",以返回常规交易和 Blob 交易的潜在 Gas 价格。
然而,一位名为 "Lightclient" 的 Geth 客户端开发人员对 "eth_gasPrices" 方法持保留态度,因为它将以一种聚合方式返回常规交易和 Blob 交易数据。Lightclient 在 Flcl42 提议下的评论中写道:「如果调用者需要两者,他们可以进行 JSON-RPC 批量调用。」根据这些反馈,Beiko 建议添加 "eth_blobGasPrice" 方法并更新 "eth_feeHistory" 方法,但暂缓创建类似 "eth_gasPrices" 这样的捆绑方法。Lightclient 同时建议开发人员与 Layer-2 协议团队取得联系,了解他们对这些执行 API 规范变更的看法。
Verkle Proof 验证预编译
接下来,以太坊基金会负责 Verkle 升级的研究员 Guillaume Ballet 强调了一项工作建议,即添加预编译来协助智能合约验证 Verkle 证明。预编译是一种特殊类型的智能合约,它在以太坊上具有固定的地址和 Gas 成本,通常使应用程序能够通过以太坊虚拟机执行复杂的加密计算,避免执行成本会过高。
另一位以太坊基金会研究员 Alex Stokes 询问是否可以使用 EIP 2537 来验证 Verkle 证明,这是一个为 BLS 12-381 曲线操作创建新预编译的提案。以太坊基金会的研究员 Dankrad Feist 认为不可行,因为 BLS 预编译必须与 Verkle 证明提议中的预编译有所不同。
Beiko 鼓励开发者在以太坊魔术师论坛中讨论关于 Verkle 证明验证预编译的提议。Stokes 要求 Ballet 在讨论中包含关于「multiproof_pcs」实现的链接,该实现在 Ballet 的提案中提及。
ACD 电话会议时间表更新
最后,开发人员一致同意在下周继续举行 ACD 的两次电话会议, 尽管这两个会议正好分别安排在以太坊开发者大会 Devconnect 和美国感恩节假期期间。同时,开发商同意取消下周一的测试通话。
起初,因为 Devconnect 和美国感恩节假期,Beiko 和 Ryan 倾向于取消或重新安排接下来的两次 ACD 电话会议。然而,鉴于 Cancun/Deneb 升级的时间表已经推迟,Teku 客户端开发人员 Ben Edgington 对这一决定的实际影响表示担忧。「随着时间推移,这里一周、那里一周的延误加起来会很严重。我们已经一次又一次地看到这种情况。我知道每个人都在非常努力地推进 Deneb/Cancun,因为我在流程内部,但从外部来看,连续取消两个核心开发调用,对我来说看起来不太好,」Edgington 补充道。
Edgington 的观点得到了电话会议中其他开发商的支持。Beiko 和 Ryan 同意继续进行接下来两周的 ACD 电话会议,并要求任何无法参加电话会议的客户团队在以太坊研究与开发 Discord 上异步分享他们的工作进展。