Coldcard 是加拿大公司 Coinkite 开发的比特币专用硬件钱包。它只支持 Bitcoin,不支持 ETH、USDT 等其他资产,目的是减少代码复杂度和潜在的攻击面。
截至 2026 年 8 月 3 日,公开的链上统计显示,本次事件涉及约 4585 个地址,被盗资金约 1367 BTC,按当时价格计算约为 8860 万美元。攻击可能仍在继续,地址数量和损失金额还可能变化。
这次事件最值得警惕的地方是:攻击者没有接触硬件钱包,也不需要让受害者点击钓鱼链接,而是利用弱随机数在自己的计算机上穷举种子,最终推导出私钥并转走资金。
受影响的用户
Coldcard 的用户通常非常重视资产安全。他们不把币长期留在交易所,坚持自己保管私钥,也会尽量避开智能合约、DeFi 和山寨币带来的额外风险。
但这次问题恰恰出在最基础的一步:钱包生成种子时,随机性没有达到应有的强度。即使设备从未联网、助记词从未泄露,也不代表资金一定安全。有一名受害者保存了 8 年的 18.25 BTC,仍在几分钟内被全部转走。
根据 Coinkite 的安全公告,受影响范围包括:
- Mk2、Mk3 固件 4.0.1 至 4.1.9;
- Mk4、Mk5 的 5.6.0 之前版本;
- Q 的 1.5.0Q 之前版本;
- 部分 Edge 固件版本。
其中 Mk2、Mk3 的情况最严重。Mk4、Mk5 和 Q 因为还混入了安全芯片提供的随机数据,攻击难度更高,但生成的种子仍没有达到原本设计的安全强度。
如果生成种子时加入了至少 50 次独立、保密且公平的骰子投掷,或者钱包使用了足够强且唯一的 BIP-39 passphrase,风险会低很多。不过,官方仍建议这些用户尽快迁移到新种子。
发生了什么
漏洞是怎样进入固件的
- 2021 年 3 月 1 日:一次代码改动意外改变了种子生成路径。程序没有按预期使用硬件随机数生成器,而是走到了 MicroPython 的软件伪随机数回退逻辑。
- 2021 年 3 月 17 日:固件 4.0.1 发布,漏洞进入正式版本。此后,Mk2、Mk3 在受影响固件上生成的种子只有约 40 位有效熵;Mk4、Mk5 和 Q 约为 72 位,远低于设计目标的 128 位。
- 2026 年 7 月 29 日:部分用户发现钱包中的比特币在没有本人操作的情况下被转走,潜伏五年多的漏洞开始造成实际损失。
攻击是怎样发生的
攻击者分多批转移资金,并优先选择余额较高、长期没有活动的单签名地址。资金被扫出后快速汇集到攻击者控制的地址,其中多数在统计时尚未继续转移。
- 7 月 29 日:部分受害者报告资金被盗。其中一名用户的 18.25 BTC 在几分钟内被转走,当时价值约 160 万美元。
- 7 月 30 日:早期统计显示约 500 个地址被转走 594 BTC;随后统计范围扩大至 1196 个钱包、约 1083 BTC。
- 7 月 31 日:又有约 76.16 BTC 被转走,涉及约 1478 个地址。
- 8 月 1 日:新增损失约 207.73 BTC,涉及约 1912 个地址。
这些数字来自不同时间点的公开统计,口径并不完全一致,不能简单地把所有批次和地址数直接相加。本文标题中的 1367 BTC,是截至发文时的估算值,并不是最终损失。
漏洞原理
正常情况下,硬件钱包会用高质量的随机数生成种子,再由种子推导出助记词、私钥和钱包地址。这个随机空间大到几乎不可能被穷举。
可以把它想象成找一粒沙子。正常的 128 位随机数,相当于从一个大到难以想象的范围里寻找目标;而 Mk2、Mk3 实际只剩约 40 位有效熵,搜索范围被压缩到大约一万亿种可能。这个数字对人来说仍然很大,但对现代计算设备来说,已经进入可以批量尝试的范围。
攻击者可以提前生成这些可能的种子,再推导出对应地址,与链上有余额的地址进行比对。一旦找到匹配结果,就能得到私钥并签署交易。整个过程可以离线完成,因此受害者不需要连接设备,也不需要泄露助记词。
AI 工具让研究人员更快定位和复现了问题,但真正导致资产被盗的不是 AI,而是种子生成过程中的随机性不足。只要漏洞存在,传统程序和 GPU 集群同样可以完成穷举。
现在应该怎么做
如果你的钱包种子由受影响版本的 Coldcard 生成,不要只升级固件后继续使用原来的种子。升级只能保证以后正确生成新种子,无法修复已经生成的弱种子。
比较稳妥的迁移步骤是:
- 从官方渠道下载并安装对应型号的修复版固件。
- 在修复后的设备或另一台可信设备上生成全新的种子,并妥善备份。
- 在设备屏幕上核对新钱包的收款地址。
- 先转入一笔小额资金,确认新钱包可以正常接收和恢复。
- 确认无误后,再转移剩余资产。
- 等所有交易确认后,再处理旧种子的备份。
不要为了抢时间而跳过地址核对、备份验证和小额测试。迁移过程中的误操作,可能比漏洞本身更快造成损失。
吃一堑,长一智
硬件钱包解决的是私钥隔离和交易签名问题,但它并不能消除对设备、固件和种子生成过程的信任。冷钱包不联网,不等于它生成的每一把“钥匙”都足够安全。
如果希望降低对单一设备随机数生成器的依赖,可以按照厂商提供并经过验证的流程加入骰子熵。骰子结果本身就是私钥材料,不能拍照、联网保存或交给不可信的软件处理,也不能只是随手掷几次就认为足够安全。
对于金额较大的钱包,还可以考虑多签:使用不同厂商、不同实现生成的多把私钥,共同控制资金。这样即使其中一台设备出现漏洞,攻击者通常也无法仅凭一把私钥转走资产。当然,多签也会增加备份、恢复和日常操作的复杂度,需要先把恢复流程真正演练一遍。
这次事件再次说明,自托管不是买一台冷钱包就结束了。真正可靠的安全方案,应该同时考虑种子生成、备份、固件更新、设备隔离和恢复验证。