NKN 主网v1.1.7-beta版本发布

NKN code

我们发布了新的主网v1.1.7-beta版本,这个版本持续改进了我们在审计时发现的潜在问题,此外,我们还优化了传输时造成的内存负载(有些优化可能在下个版本启用),其他修改请在以下的修改记录中查看。

由于执行新的安全机制和协议,老版本的签名链(以及挖矿奖励)在1,200,000个区块后将不再复用,请儘速更新以免损失挖矿奖励

安全性

  • 避免同一条安全链被多次反向回溯

  • 忽略持续完成的状态下不合法高度区块的投票

  • 为远程消息请求以及区块消息的同步添加速率限制

  • 将签名链的逻辑从哈希换成签名

共识部分

  • 加入最小的临近节点数以帮助临近节点较少的节点

  • 修复同步中的节点投票时间晚于已存的节点

网络

  • 减少信息id缓存的使用量

  • 添加签名链协议以减少传输时缓存用量

  • 添加签名链同步逻辑以减少第一个传输节点的缓存用量

远程调用

  • 在getws[s]地址回应中添加https json远程调用的地址

nknc

  • 修复nknc建立钱包时可能会给出错误的地址

代码质量

  • 从旧的ECDSA签名中移除了传统加密的大整数(bigint)的代码

  • 修复了gofmt, ineffassign, misspell的警告

这是一个兼容的升级,但是强烈建议升级,因为它控制内存的使用,大大降低了由于内存不足而崩溃的可能性。旧版本可能会在某个时间节点被弃用,以加速升级过程。

  • 如果你使用的是DO/AWS/Google Cloud的一键安装教程或者一键安装的图文页面使用指南,您只需要重新启动实例(或者关闭nknd进程,让它重新启动);
  • 如果你下载的是发布的版本,你需要重新从该网址下载:https://github.com/nknorg/nkn/releases把 nknd和nknc替换掉,然后重新运行就好了;
  • 如果你是首次安装,只需要参照教程安装就好;
  • 如果您正在使用一些具有自动更新功能的脚本或教程,并且自动更新器能正常工作的话,它应该会自动更新;

一般情况下,您不需要手动下载ChainDB快照,如果需要的话,可以从 https://nkn.org/ChainDB_latest.zip下载。

更新到新版本的时候,请停止使用老版的nknd,重装(或下载最新的二进制文件:https://github.com/nknorg/nkn/releases) 后重新启动。如果您正在使用图形指导页面或自动更新脚本,那么您只需关掉并重启程序,它就会自动升级。