Broadchain

Conflux 进阶课 | CIP-37 更新后对开发者的影响

Conflux中文社区 2021-02-08 22:59 1405

Conflux-rust 从版本 v1.1.1 开始将会使用新地址格式,凡是请求参数,返回结果中包含地址的地方,均使用新格式地址。

详解CIP-37(上)》中,为大家介绍了 CIP-37。地址更新变化自然会对开发者产生一定影响,本期将为大家详细介绍。

Conflux-rust 从版本 v1.1.1 开始将会使用新地址格式,凡是请求参数,返回结果中包含地址的地方,均使用新格式地址。

v1.1.1升级的内容

不兼容变更

  • CIP-37:Conflux 地址将变更为 base32 地址格式。RPC 与全节点的交互中不支持与以太坊格式类似的 16 进制地址。

  • 把所有的数据(包括目录 storage_db、 blockchain_db和 net_config)都存储在一个通过“conflux_data_dir”配置的目录中(默认目录名为 blockchain_data)。

兼容 RPC 变更

  • 添加 cfx_getSupplyInfo,返回 CFX 供应量。

  • 在 cfx_getStatus 响应中包括 networkId。

  • 在 cfx_getAccount 响应中包括 address。

改进

  • 在 mining_author 参数中支持 CIP-37 地址格式。

  • 减少日志“发布-订阅”中的延迟,现在我们在日志可用之后立即将其发出。

  • 实现执行跟踪功能,包括详细的由转账触发的调用/创建/返回/内部转账事件等,检查踪迹信息可以让 ConfluxScan 之类的应用能够追踪 CFX 转移的精确踪迹。

  • 优化了测试框架,解决了一些随机测试失败的问题。

我是 Conflux 生态开发者,我需要做什么?

Conflux 将于 2 月 5 日更新完毕升级教程和各版本 SDK,但建议 2 月 22 日之前所有的生态应用、钱包、交易所、矿场不要更新新的节点(RPC)。使用官方节点(RPC)的用户可以暂时保持不动,同时官方会推出新版本的 RPC,旧的 RPC 将至少保留到三月底。

更新节点(RPC)后,需要更新使用新的 SDK,之后不加额外适配的情况下只能同 base32 格式的地址(以网络标识开头,如cfx:)交互,请各生态应用、钱包、交易所、矿场注意提示用户。

对前端页面的影响

Portal

  • Portal 更新为 0.5.11 版本后,API 返回旧版 16 进制地址(0x开头),签名只支持旧版地址,转账转到旧版地址时会有提示。

  • Portal 更新为 0.6 版本后,API 只返回 base32 地址,签名同时支持旧版地址(0x开头)和 base32 格式的地址(以网络标识开头,如cfx:)。

  • DApp 需要考虑用户可能不升级 Portal 新版本,API 返回新老地址共存的情况。

SDK 如何适配参考

Conflux Javascript SDK 如何适配 CIP-37:github.com/Conflux-Chain/js-conflux-sdk/blob/new-checksum/docs/conflux_checksum_address.md

中文版参考: juejin.cn/post/6922723243811930119

对后端服务程序的影响

SDK 如何适配参考

Conflux Java SDK 如何适配 CIP-37:github.com/Conflux-Chain/java-conflux-sdk/blob/master/docs/cfx-address.md

中文版参考:juejin.cn/post/6922724320191971342

Conflux Golang SDK 如何适配 CIP-37:github.com/Conflux-Chain/go-conflux-sdk

中文版参考:juejin.cn/post/6922763171941842958/

节点文档配置

配置说明

v1.1.1 之后的版本 run/tETHys.toml 文件中;

填写新旧格式的地址都可以。

目录变化

v1.1.1 之后的版本所有的数据都放在了 conflux_data_dir 这个参数配置的目录下,默认路径为 ./blockchain_data。

v1.1.0 及以前版本的默认目录结构:

v1.1.1 之后的默认目录结构

  • 适配方法 1(推荐):

新建目录 blockchain_data,并将 blockchain_db, net_config, storage_db 三个目录移动到 blockchain_data 下。不用修改配置文件tethys.toml.

  • 适配方法 2:

不移动目录,在配置文件 tethys.toml 里设置

Conflux 基金会建议未来 Conflux 生态逐渐淘汰旧版格式地址,统一更新为 base32 格式的地址(以网络标识开头,如cfx:),ConfluxScan 会有新旧地址转换。

新旧地址格式只是做了一次编码转换,原有的私钥和助记词可以正常登陆 ConfluxPortal 账户,不会对个人资产有任何影响。

需要注意的是,本次升级,临近中国假期,贸然升级可能无法得到足够多的技术支持,建议大家谨慎升级。 建议所有 Conflux 生态产品在 2 月 22 日之后升级新节点。

更多关于 CIP-37 内容,我们下期再见~

声明:BroadChain Finance网站和App所发布的内容,均不构成任何投资建议。

Conflux中文社区

——

260 篇 作品
48.4W 总阅读量