Decred已发布强制软件补丁v2.1.6,以修复一个关键共识漏洞、一种潜在的周期性混币去匿名化攻击以及若干网络拒绝服务风险。
摘要
Decred发布了强制性的v2.1.6版本,修复了一个关键共识安全漏洞。该补丁防止了涉及Decred交易混币系统的潜在周期性去匿名化攻击。此外,还修复了若干潜在的网络拒绝服务攻击途径和SPV验证问题。运行旧版本的用户被敦促升级,以避免在不同的网络分叉上运行。
Decred在8月19日的X平台帖子中表示,用户应尽快升级到新版本,因为该补丁包含影响共识、交易混币和网络运营的安全变更。该项目还表示,更新改进了混币会话的过期处理方式。
该版本为强制性更新,因为继续使用旧版软件的节点面临与网络分叉的风险。Decred的发布说明指出,对于个人利益相关者、投票服务提供商、工作量证明矿工以及运行网络基础设施的加密货币交易所而言,这一要求尤为重要。
Decred v2.1.6要求所有用户升级
在v2.1.6发布说明中,Decred将该共识问题归类为“关键”安全漏洞,并警告未更新用户可能在不同网络分叉上运行。补丁适用于Decred全节点软件dcrd,相关变更也已发布至dcwallet。该软件包包含来自3名贡献者的23次提交,涉及20个文件。根据GitHub发布信息,开发者新增795行代码并删除392行。Dave Collins、Jamie Holdstock和Josh Rickmar参与了dcrd发布。
除共识修复外,开发者还处理了若干可能的网络相关拒绝服务攻击。Decred未披露可逐步利用该共识漏洞的技术细节,其发布通知强调全体网络用户需迁移至补丁版本。
在Decred发布X公告时,Decrediton的Windows构建尚未提供,项目方预计次日发布。当前v2.1.6 GitHub页面已列出Windows版Decrediton及Linux、macOS包。用户可根据安装说明,使用随包提供的SHA-256哈希和签名文件验证发布文件。
钱包变更防止混币去匿名化攻击
dcrwallet v2.1.6中的另一组修复直接涉及Decred交易混币系统。钱包发布更新了mixclient协议以防止去匿名化攻击,并提高了用于建立混币会话参与者兼容性的配对版本。因此,运行v2.1.6的钱包不与旧钱包混币,旧版本也不与更新客户端会话。Decred要求所有早期dcrwallet用户升级。
开发者还修复了混币中责任分配问题:此前错误发起责任分配的对等节点可能逃避被责。另一变更修复了混币会话过期后mixpool消息的移除。Decred使用CoinShuffle++(CSPP)进行交易混币,该系统于2019年8月上线主网。
网络与SPV保护获得额外修复
除混币外,dcrwallet v2.1.6变更了钱包处理网络接收交易的方式:当钱包所属花费输出的签名验证失败时,钱包拒绝记录交易。SPV对等节点面临另一检查:宣布含钱包输出但签名脚本验证失败的交易的对等节点将被断开。开发者还为SPV模式下的区块添加了缺失的默克尔根验证。
Decred发布说明未表明这些攻击途径在补丁发布前已被利用。DCR仍是隐私代币市场的一部分,其隐私工具影响了交易所和交易员将DCR与其他隐私币归类的方式。
