公告|Kav今日火币网比特币行情图a 4异步网络升级


Kava 团队在 bep3 模块中发现一个权限问题,导致原子交换无法成功完成。用户资金不会受到任何威胁,但我们需要更新 bep3 模块,来恢复原子交换功能。

提案

Kava 软件的补丁版本 v0.12.0 目前已经发布,用于修复这个问题。该补丁将于北京时间 2020年11月3日18:00 生效。

补丁版本:https://github.com/Kava-Labs/kava/releases/tag/v0.12.0

更新

验证者应在升级激活前任意时间完成此版本的 Kava 软件安装。

# from the kava directorygit fetchgit checkout v0.12.0# verify versionkvd version –long# name: kava# server_name: kvd# client_name: kvcli# version: 0.12.0# commit: 35a82acbd07ecd51cb22c6621760ba64f46eca90# build_tags: netgo,ledger# go: go version go1.15.2 linux/amd64# Installmake install# restart the kava process# example shown using systemdsudo systemctl restart kvd

技术细节

作为我们更新的 bep3 架构的一部分, bep3 模块账户现在负责为传入的原子交换铸造代币以及为传出的原子交换烧毁代币。作为 kava-4 升级的一部分, bep3 模块账户在应用程序中被授予了这些权限。然而,这些权限不会自动应用于现有的模块账户。因为 bep3 模块账户存在于 kava-3 上,并且没有铸币/烧毁的权限,所以该账户没有继承更新的权限。

代码详情请见:https://github.com/Kava-Labs/kava/blob/c02ce618da3781c2460a1b292a0b02cbc65da3a0/app/app.go#L102

目前, bep3 模块账号 return 为:

kvcli q account kava1eyugkwc74zejgwdwl7mvm7pad4hzdnka4wmdmu| address: kava1eyugkwc74zejgwdwl7mvm7pad4hzdnka4wmdmu coins: [] public_key: “” account_number: 8560 sequence: 0 name: bep3 permissions: []

如上所示,权限为空。激活后,该补丁将把权限更新为:

permissions: – minter – burner

技术分析

下载了火币网在哪里登录

这是一个令人沮丧的 bug ,因为 Cosmos-sdk 中的 x/supply 模块应该验证应用层模块账户权限是否与个人账户权限相匹配,如果不匹配,就会在启动时宕机。这种类型的设计模式,即相同的信息存储在多个地方,而没有交叉验证,就会导致这样的 bug ,使得未解决的权限冲突在运行时持续存在。这个 Bug 的修复很简单,我们已经在 Cosmos-sdk 上提交了这个问题,确保在应用程序启动时包含这种类型的验证。

我们感到很抱歉,这个 bug 没有在主网发布之前被发现,因为我们正在不断改进我们的开发流程,来不断平衡用安全和高效的方式发布新产品的需求。虽然这个 bug 问题不大,也不会让用户的资金面临风险,但我们非常重视,并将借此机会审查及内部实践,增加在发布前测试中发现这个 bug 的可能性。

作者:Kava Labs,来源:Kava中文社区



返回列表页>>> 比特币