如何核验已部署合约仍运行审计过的 commit
当前进展与背景
最新公开报道
最近报道 ·如何核验已部署合约仍运行审计过的 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 · 标准与升级讨论
报道时间线
沿着报道,了解事件的不同侧面。
- 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 小时可比范围变化 –
趋势仅比较持续完整观测到的相同主体,范围可能小于当前热度统计。移动指针或点击图表查看每小时热度;键盘可用左右方向键切换。