跳到正文
热点事件持续更新

如何核验已部署合约仍运行审计过的 commit

1 篇报道1 个报道来源最近报道 · 5 小时前
我的关注 →

当前进展与背景

最新公开报道

最近报道 ·

如何核验已部署合约仍运行审计过的 commit

作者 Zealynx 在 Ethereum Magicians 发文,说明如何核验可升级合约仍运行其审计覆盖的代码。浏览器 verified 徽章只证明源码能编译出地址上的字节码,不指明来自哪个 commit。方法是按相同 solc 版本、optimizer runs、viaIR 和 evmVersion 重建审计 commit 并比对 runtime bytecode,有 immutables 时需用 evm.deployedBytecode.immutableReferences 将对应区段清零再比对。尾部 32 字节是元数据 IPFS 哈希,改一行注释只改这 32 字节,对应 Sourcify 的 exact match 与 match 区别。代理需读 EIP-1967 implementation 与 admin 槽位,旧代理如 ZeppelinOS 与 EternalStorage 用不同存储位置和事件主题;Diamond 通过 facets() 查看,EIP-7702 账户代码为 0xef0100 加委托地址且无变更事件。作者引用 Arbitrum 10 月 30 日冻结事件称,在区块 26301885 与 26301886 之间,一笔交易曾两次将 Inbox 指向其他代码再改回,仅四个 Upgraded 日志可见,因此监控需同时读日志和状态,读取失败应记为 unknown。

Ethereum Magicians · 标准与升级讨论 · 查看报道与出处 →

报道时间不等于事件生效时间;具体状态与适用对象请对照来源。

背景综述

以下帮助了解背景;涉及安排、版本或状态时,以较新的具体报道为线索核对。

作者 Zealynx 在 Ethereum Magicians 发文,说明如何核验可升级合约仍运行其审计覆盖的代码。浏览器 verified 徽章只证明源码能编译出地址上的字节码,不指明来自哪个 commit。方法是按相同 solc 版本、optimizer runs、viaIR 和 evmVersion 重建审计 commit 并比对 runtime bytecode,有 immutables 时需用 evm.deployedBytecode.immutableReferences 将对应区段清零再比对。尾部 32 字节是元数据 IPFS 哈希,改一行注释只改这 32 字节,对应 Sourcify 的 exact match 与 match 区别。代理需读 EIP-1967 implementation 与 admin 槽位,旧代理如 ZeppelinOS 与 EternalStorage 用不同存储位置和事件主题;Diamond 通过 facets() 查看,EIP-7702 账户代码为 0xef0100 加委托地址且无变更事件。作者引用 Arbitrum 10 月 30 日冻结事件称,在区块 26301885 与 26301886 之间,一笔交易曾两次将 Inbox 指向其他代码再改回,仅四个 Upgraded 日志可见,因此监控需同时读日志和状态,读取失败应记为 unknown。

摘自 Ethereum Magicians · 标准与升级讨论

报道时间线

沿着报道,了解事件的不同侧面。

11月9日
  1. Ethereum Magicians · 标准与升级讨论精选
    如何核验已部署合约仍运行审计过的 commit

    作者 Zealynx 在 Ethereum Magicians 发文,说明如何核验可升级合约仍运行其审计覆盖的代码。浏览器 verified 徽章只证明源码能编译出地址上的字节码,不指明来自哪个 commit。方法是按相同 solc 版本、optimizer runs、viaIR 和 evmVersion 重建审计 commit 并比对 runtime bytecode,有 immutables 时需用 evm.deployedBytecode.immutableReferences 将对应区段清零再比对。尾部 32 字节是元数据 IPFS 哈希,改一行注释只改这 32 字节,对应 Sourcify 的 exact match 与 match 区别。代理需读 EIP-1967 implementation 与 admin 槽位,旧代理如 ZeppelinOS 与 EternalStorage 用不同存储位置和事件主题;Diamond 通过 facets() 查看,EIP-7702 账户代码为 0xef0100 加委托地址且无变更事件。作者引用 Arbitrum 10 月 30 日冻结事件称,在区块 26301885 与 26301886 之间,一笔交易曾两次将 Inbox 指向其他代码再改回,仅四个 Upgraded 日志可见,因此监控需同时读日志和状态,读取失败应记为 unknown。

本事件热度走势

当前热度 8.8·可比范围峰值 9.6(11月9日 18:00)·近 24 小时可比范围变化 –

02.557.51011月9日18:0011月9日19:0011月9日20:0011月9日21:00

趋势仅比较持续完整观测到的相同主体,范围可能小于当前热度统计。移动指针或点击图表查看每小时热度;键盘可用左右方向键切换。