本次发布引入了一次新的硬分叉。所有节点均应在 Epoch Number 达到 259240000 之前完成升级(预计时间为 8 月 7 日)。CIP-173 将在 PoS Block Number 达到 3870720 时启用(预计时间为 8 月 8 日)。
Conflux 计划在这次系统 Hardfork 升级中激活并实施包括 CIP-166、CIP-167、CIP-172、CIP-173、CIP-174、CIP-175 以及 CIP-176 共 7 个不同的 CIP(改进提案)的更改、一项延迟公开的安全更新(升级完成后公开)以及 RPC 的变更。
升级说明
-
请将
pos_config/pos_config.yaml替换为本次发布版本中附带的文件。该文件会进行严格解析,旧版本文件将无法加载,导致节点无法启动。如果此前修改过base.data_dir、storage.dir或logger.file等路径,请将相应配置迁移到新文件中——这些配置项本身没有变化。pos_config/genesis_file已不再使用,可以删除。 -
升级后的首次启动将明显慢于正常重启。本次发布附带的
run/testnet.toml现已将use_isolated_db_for_mpt_table设置为true,节点会执行一次最新 MPT 快照重建,以完成该切换。后续重启不受影响。
激活的 CIP
本次升级激活的 CIP 主要包括两类,一类是 EVM 兼容类,补充 Osaka 升级的新增内容;一类是 Bug 与安全修复。具体细节如下:
EVM 兼容类
-
CIP 166:本提案对应 EIP-7939,新增用于计算前导零个数的
CLZ操作码。 - CIP 167:本提案对应 EIP-7951,引入 secp256r1(P-256)曲线签名验证的预编译合约,该曲线被 WebAuthn、Passkey 等广泛使用。
- CIP 174:本提案对应 EIP-7823 和 EIP-7883,为 ModExp 预编译合约的输入长度设置上限,并上调其 gas 定价。
Bug 修复与安全更新
- CIP 172:本提案要求区块中的每笔交易均采用规范的 RLP 编码,修复了同一笔交易可能对应多个哈希的问题。
- CIP 173:本提案修复了 PoS dispute 证据校验的缺陷,并将 CIP-156 的质押锁定扩展至质押已全部处于解锁中的验证者。
- CIP 175:本提案修复了跨空间调用未解析 EIP-7702 委托的问题,使其行为与 eSpace 空间内的调用保持一致。
- CIP 176:本提案修复了当同一地址出现在访问列表(access list)的多个条目中时,仅预热最后一个条目 storage key 的问题。
非公开安全修复
本次升级包含一项安全问题修复。为避免被利用,相关源码及细节将推迟在网络升级完成后披露。
跟随升级的非硬分叉更新
RPC 改进
- Core Space 的 RPC 服务迁移至 jsonrpsee 框架,JSON-RPC 的错误信息与此前版本不同
- 新增 Parity 风格的
trace_call接口 - Core Space RPC 支持 CORS 配置
- 请求限流现已作用于批量(batch)RPC 请求
- 轻节点支持 pub/sub 命名空间
- 修复
4byteTracer丢弃无参数(仅函数选择器)调用的问题
其他错误修复
- 修复若干可由畸形 P2P 消息、RPC 参数及链上数据触发的节点 panic
- 修复
--port、--db-cache-size、--db-compact-profile命令行参数被静默忽略的问题
下载
新版节点程序可在这里下载:https://github.com/Conflux-Chain/conflux-rust/releases/tag/v3.1.0-testnet
主网程序将推迟至测试网络升级完成后发布。
因为本次升级包含非公开安全更新,因此升级完成前不提供可自行编译的源代码。自行使用 master 最新版本编译的程序可能和主网分叉。
我是节点运营者/矿工,我需要做什么?
- 请将
pos_config/pos_config.yaml替换为本次发布版本中附带的文件。 - 如果您在 epoch number 到达 259240000(预计 8 月 7 日)之前更新您的节点,你需要暂停节点,将原节点程序中的 run 目录下的名为 “conflux” 的可执行文件,替换为 Conflux v3.1.0-testnet 节点程序的 conflux 的可执行文件,然后重新启动。建议正在运行的节点在2天内完成升级。
- 如果您在 epoch number 到达 259240000(预计 8 月 7 日)之后更新节点,则需把所有数据删除后,重新同步。
- 如果您想要启动新节点,可以下载最新版的 Conflux v3.1.0-testnet,运行即可。
如不升级节点、不参与本次升级,会出现什么情况?
若节点没有升级到最新版本,节点会与升级后的 Conflux 协议不兼容,无法正常同最新的 Conflux 网络进行交互(如:同步区块,挖矿等)。
感谢您的支持!
衷心感谢 Conflux 社区以及所有 Conflux 生态的开发者们,感谢你们的努力、思考和贡献,为 Conflux 带来了更好的明天