ETH:以太坊核心开发者会议笔记:上海升级进行到哪了?

原文:《#152以太坊核心开发者会议笔记》

编辑:Stephanie,ECN

一文了解上海升级的最新进展。

编辑的话

有看ECN每周更新的“以太七日谈”的朋友可能会发现,“七日谈”已经停更了将近一个月。除了由于前段时间编辑感染Covid无法保持更新外,ECN也在思考是否应该继续“七日谈”的编辑。在新的一年,ECN计划做一些内容运营上的调整,其中就包括“七日谈”。

如果对以往“七日谈”中哪些部分的内容特别希望我们保持更新的,欢迎在各个社交媒体上私信我们,我们非常愿意听到大家的反馈,以提升我们的内容质量。

在第152次ACDE上,开发者们就从上海升级中移除与EOF实现有关的代码修改达成共识。关于EOF的更多信息,可阅读《以太坊核心开发者会议更新014?》。他们还就不再接受任何添加到上海升级的EIP达成共识,这主要是为了确保提款质押的ETH的时间表不会被推迟。作为上海升级唯一的大型代码修改,提款质押的ETH目前正在以开发者为中心的测试网络上进行测试。开发者的目标是在下个月(2023年2月)上线用于上海/Capella升级的公共测试网,然后在3月上线主网。开发者随后讨论了EVM升级的更周详考虑、以太坊执行层/共识层之间不同的序列化方法、以及引入Poseidon哈希函数作为EVM的预编译的EIP。

加密银行Signature Bank:加密货币流出总额已高达42.7亿美元:9月7日消息,加密银行 Signature Bank 发布三季度中期报告,其中显示该公司加密货币流出总额已高达 42.7 亿美元,不过该公司的非加密存款规模升至 26.4 亿美元。

Signature Bank 主要为机构加密交易商和加密业务(包括交易平台和矿工)提供金融服务。此外,季报数据还显示 Signature Bank 二季度总存款减少了 50.4 亿美元,跌至 1041.2 亿美元,其中数字资产银行团队的的存款规模减少了 24 亿美元。(Cryptoslate)[2022/9/7 13:14:25]

以下为详细笔记

上海升级的进展

在上海升级方面,在圣诞节前已经上线了第一个开发者测试网,所有客户端组合都在上面运行,大家可以看看以太坊基金会devops的仪表盘?。有些客户端组合出现了问题,但开发者们将尽快推出一个新的开发者测试网。

LBANK蓝贝壳于3月12日16:00上线SGB,开放USDT交易:据官方公告,3月12日16:00,LBANK蓝贝壳上线SGB(SubGame),开放USDT交易,3月12日14:00开放充提。

,SubGame流通量为100万,是一个面向众多开发者参与波卡生态建设的游戏和支付模组引擎平行链。SubGame采用Subscript为底层语言,沿用了Javascript的语法,并在Assembly Script中完成了对Substrate智能合约API和SDK的封装。简单来说,Subscript实现了支持任何Web开发者快速入手部署波卡原生智能合约的能力。[2021/3/11 18:35:51]

(https://t.co/HBkcidHvMq)

此外,Geth团队的Marius@vdWijden提出对EIP3860(对initcode的大小设限并引入gas计量)设计上的小修改——纠正该EIP中一个令人困惑的错误模式,即违反initcode限制导致的是零地址错误而不是OOG(gas不足)错误。这项提议得到开发者们的认同,即将错误模式改为OOG错误,然后终止或中止执行,而不是返回一个零地址,这样将减少在客户端实现中的混乱和漏洞。以上是客户端团队的意见,如果智能合约开发者强烈反对这个修改,可能就不修改了。

LBank蓝贝壳将于3月8日启动333TFilecoin标准满存算力售卖:据官方公告,LBank蓝贝壳将于3月8日16:00启动333T Filecoin标准满存算力售卖。本次售卖额度为等值的30万USDT的Filecoin满存算力,用户会获得代表满存算力的唯一凭证SFIL。总售卖数量为333T。本次售卖分“LBK专场和USDT专场”两场,采用加权均分的认购模式,参与认购的用户需通过KYC实名认证,完成售卖后预计将于3月9日18:00上线交易。

资料显示,SFIL是锚定Filecoin算力的标准满存算力通证,每一个SFIL锚定0.01T Filecoin满存算力,用户持有SFIL就可以获得相对应的Filecoin挖矿收益。同时,用户还可以在二级市场交易SFIL,随时释放自己的资金流动性。详情请点击官方公告。[2021/3/2 18:07:23]

EOF相关EIP被移除出上海升级

接下来,会议主要讨论EOF相关话题。

Geth团队的开发者@lightclients给大家更新了12月进行的EOF小组会议的情况。(EOF即EVM对象格式,它会为以太坊的代码环境引入一些变化。与之相关的EIP将更明确地区分智能合约的代码和数据,并使得EVM在未来更容易升级。)简单来说,规范被敲定,并做了两个小型修改:删除JUMPF并使得数据EOF合约必须包含数据部分。

亿万富翁MarkCuban:ETH比BTC具有更大的价值存储优势:亿万富翁、达拉斯独行侠老板MarkCuban在接受采访时表示,ETH比BTC具有更多的价值存储优势,当出现回调时,他会购买更多的ETH,而不是BTC。他表示,「智能合约为无摩擦银行业务奠定了基础,美国2.0将建立在区块链的基础上,其中很大一部分将是DeFi」。在谈到NFT时,他预测未来数字收藏品将超越实体收藏品市场。(The Defiant)[2021/2/13 19:39:55]

在测试方面,Geth团队的@mhswende已经开始对实现做模糊测试,在所有客户端上都发现了漏洞并修复了。现在的模糊测试主要针对在客户端上EOFcontainerjtqo/结构的实现,但不包括部署的EOF代码。以太坊基金会测试团队的MarioVega@elbuenmayini补充道,由于EOF的复杂性,可能很难对错误情况写静态测试用例,因为实现可能会在遇到确切测试用例前先遇到另一个错误。

在客户端团队方面,Geth和Besu已经有完整实现并通过了大部分的测试。Nethermind也已经有实现了,但不确定最好使用哪个测试套件。而Erigon将使用Geth的EOF实现。

ZenGo研究工程师:Bancor漏洞暴露了以太坊DeFi中的危险常规操作:金色财经报道,ZenGo研究工程师Oded Leiba表示,Bancor智能合约的资金提取功能设置有误,以至于任何人都可以调用它。使这一问题更加复杂的是,Bancor的合约要求在首次与协议交互时获得无限制的取款授权。即使用户只计划用有限的资金来测试协议,系统也可以提取他们特定代币的全部余额。并且事实证明,以太坊上的许多DApp都在执行相同的操作,如Compound、Uniswap、bZX、Aave、Kyber和dYdX等均具有无限制或极大的授权。据此前报道,Bancor新合约于6月18日出现安全漏洞,黑客可以轻易提取任何与该公司签订智能合约的用户的全部资金。[2020/6/24]

基于EOF的实现和测试情况,Vitalik也表达了对仓促实现EOF的担忧,并发表了EOF提案:禁用EOF账户的代码自省(codeintrospection):https://ethereum-magicians.org/t/eof-proposal-ban-code-introspection-of-eof-accounts/12113

Vitalik在会议上阐述了这个提案背后的思考,以及解释为什么修改EVM通常比其他协议修改更困难。他指出,从以太坊中删除工作量证明比弃用操作码来得更容易。这是因为以太坊应用/合约依赖EVM的特定行为,因此修改必须向后兼容,否则将破坏已部署的合约。而协议其他方面的修改只需要每个人在特定时间进行更新,除此之外,不会破坏网络上的任何东西。

这意味着,当我们改进EVM,或引入新版本,例如EOF,我们很可能需要永远与它们共存,因为我们不能弃用之前版本。理想情况下,我们想让EVM更简洁/简单,但如果我们只能在它上面添加东西而从不删除东西,这就会变得很难。删除东西最大的挑战之一是EVM中的代码自省。

因此,Vitalik的提案是在EOFv1中添加更多内容,这将极大地限制EOF合约中的代码自省,从而有可能使其在未来更容易升级。Ipsilon团队的@alexberegszaszi提到,EOF提案的作者们其实之前有考虑过类似的功能,决定放弃是想保持EOFv1简单。他还提出一个替代方案,将Vitalik的提案纳入到EOFv2:https://ethereum-magicians.org/t/eofv2-aka-what-evm-2-0-could-look-like/12442

但是,对于这份在EOFv1基础上添加内容的提案,客户端团队担心整体的修改规模过大。@lightclients也表示,基于目前EOF测试的进度,把它纳入上海升级可能会延迟大概一个月的时间。如果想要在二月初能上线主网测试网升级,EOF的部分应该未能准备好。而且,这是一个很重要的决定,因为EVM的变更一旦部署了就不能修改。

经过讨论,开发者们最后决定要再多花时间考虑EOF的问题,因此将其从上海升级移除,但会保持EOF上的工作。他们应该能够在坎昆升级中部署某个版本的EOF与4844。在这次会议上,开发者们没有对坎昆升级做出正式决定,并将在下次会议再讨论。

那上海升级是否需要补充其他的EIP呢?经过讨论,开发者们决定不再添加其他EIP,免得延迟上海升级。

其他EIP的讨论

随后,开发者们还讨论了Nimbus团队的EtanKissling的提案:在ExecutionPayloadHeader的交易列表里添加十六进制树根。https://github.com/ethereum/consensus-specs/pull/3078

简单来说,现在执行层区块头和共识层执行负载头(ExecutionPayloadHeader)之间使用不同的序列化格式编码的字段。这两个字段编码格式不同给钱包和以太坊轻客户端构建带来额外的开销和复杂性。Kissling提议向执行层添加CL的SSZ序列化格式,或共识层客户端采用多种方式支持执行层的RLP序列化格式。这个提案与上海升级中的提款相关,因此相对紧急。这个问题将在这周的共识层会议(ACDC)上再次讨论,即1月12日。

会议最后还讨论了EIP-5843(EVM模块化的算术扩展)的和EIP-5988(添加Poseidon哈希函数预编译)。由于EIP-5843的作者未能与会,开发者们同意之后再对此EIP进行讨论。而5988由StarkWare提出,旨在在以太坊网络上提高运行零知识证明的效率。但这可能给以太坊的安全性带来未知后果。

编译来源为@TimBeiko和@christine_dkim的笔记

https://twitter.com/TimBeiko/status/1611042386611929089?s=20

https://www.galaxy.com/research/insights/ethereum-all-core-developers-execution-call-152/

会议视频:

https://www.youtube.com/watch?v=SmcMwdHZqg8

会议议程:

https://github.com/ethereum/pm/issues/700

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-3:159ms