报告编号CTI-2026-0804-COLDCARD-RNG ·发布日期2026-08-04 ·分类TLP:GREEN ·严重程度 CRITICAL

作者 Dennis Kim / HoKwang Kim · [email protected] · @gameworkerkim

硬件钱包的安全性,从来不在于"把密钥放在哪里",而在于"密钥是如何生成的"。Coldcard完美地守住了前者,却在后者上疏忽了整整五年。

🌐 Language:한국어 · English · 日本語 ·中文


目录

  1. 摘要(TL;DR)
  2. 引言 — 隔离依然完好,生成却已崩溃
  3. 事件时间线
  4. 根本原因分析 — 仅检查宏是否存在的fail-open结构
  5. 技术性漏洞分析 — 熵崩溃的量化
  6. 攻击链分析 — 离线种子复现与链上清空
  7. 影响量化分析 — 三波攻击
  8. 幸存者分析 — 什么保住了钱包
  9. 应对与迁移 — 补丁无法修复的部分
  10. 行业启示 — 重新审视信任模型
  11. 韩国视角 — 监管适配性与对国内交易所的建议
  12. 致比特币投资者的建议
  13. 检测·响应·预防清单
  14. 结论
  15. 参考文献
  16. 附录 A — 影响范围及修复固件对照表
  17. 附录 B — 未确认事项与后续追踪课题

1. 摘要(TL;DR)

2026年7月29日至8月2日,加拿大Coinkite公司生产的比特币专用硬件钱包Coldcard所生成的种子,成为一场大规模资产窃取的目标。据Galaxy Research统计,已观测到的损失为1,367.05 BTC(约8,860万美元,约合1,230亿韩元)、4,585个地址,攻击分三波进行,截至本报告撰写时仍未结束。

本次攻击的本质不是入侵,而是复现。攻击者没有接触过任何受害者的设备,没有窃取PIN码或种子短语,也没有使用恶意软件或钓鱼手段。2021年3月,Coldcard固件的构建配置出现不一致,导致种子生成被路由到MicroPython的确定性软件PRNG(Yasmarang),而不是STM32硬件随机数生成器(TRNG)。这个PRNG仅以芯片唯一ID与计时器寄存器数值进行初始化,此后再未收集任何额外的熵。结果,Mk2/Mk3的实际熵从128比特崩溃至约40比特,Mk4/Mk5/Q则崩溃至约72比特

40比特是消费级硬件即可进行全空间搜索的规模。攻击者在离线状态下枚举候选种子,按BIP32/BIP39规则派生出地址,再查询公开区块链上的余额,只挑选有资产的地址进行清空。区块链的透明性,就这样被挪用成了攻击者的侦察基础设施。

核心事实摘要

类别 内容
漏洞引入时点 2021年3月1日提交(ckcc.rng_bytesngu.random.bytes),固件v4.0.0于2021年3月17日发布
暴露期间 约5年4个月
实际熵 Mk2/Mk3约40比特,Mk4/Mk5/Q约72比特(设计目标为128比特)
第一波 2026-07-30 01:10–01:51 UTC,41分钟,1,082.65 BTC / 1,196个地址 / 约7,020万美元
累计损失 1,367.05 BTC / 4,585个地址 / 约8,860万美元(截至2026-08-02)
厂商首次公告 第一波结束约30小时后
被盗资金转移情况 无——仍以未使用状态保留在攻击者控制的地址中
受害者特征 平均休眠期约3.18年,大多为长期持有的个人
未受影响产品 TAPSIGNER、OPENDIME、SATSCARD(独立代码库)、Trezor、Ledger、Block(Bitkey)

本次事件一句话总结:冷存储守住了密钥,却没能守住密钥被制造出来的那个瞬间。


2. 引言 — 隔离依然完好,生成却已崩溃

硬件钱包的安全模型建立在两个独立的前提之上。

  1. 隔离前提 — 私钥永不离开未连接互联网的设备。
  2. 生成前提 — 该密钥源自任何计算资源都无法猜测的随机数。

整个行业的营销、用户教育与监管讨论,几乎全部集中在第一个前提上。"不连接互联网"这句话一直是硬件钱包广告的核心,韩国虚拟资产监管中的"冷钱包保管比例"指标,同样是对隔离前提的量化。

在本次事件中,隔离前提从未被打破。受害者之一、加拿大人Jonathan Goodman使用的Coldcard一直存放在银行保险柜中,从未连接过互联网,他也从未向任何人透露过种子短语。然而在2026年7月29日晚间,他在短短7分钟内损失了18.25 BTC。

崩溃的是第二个前提。而当第二个前提崩溃时,第一个前提便不再具有任何防御价值。攻击者根本不需要突破防线——他们只是在防线之外,重新制造出了防线之内生成的秘密。

这一结构与传统网络安全的入侵响应范式截然不同。没有入侵痕迹,没有可供检测的日志,事件发生的时间点不是资产被窃取之时,而是密钥生成之时。受害者早在五年前就已被攻破,而他们根本没有办法知道这一点。


3. 事件时间线

日期时间 事件 备注
2021-03-01 将种子生成调用从ckcc.rng_bytes改为ngu.random.bytes的提交(commit)被合并 漏洞引入时点
2021-03-17 固件v4.0.0发布 开始分发存在漏洞的固件
2021-03 ~ 2026-07 存在漏洞的种子持续被生成与流通 用户与厂商均未察觉
2026-07-29晚间(当地时间) 个人受害者Jonathan Goodman,7分钟内损失18.25 BTC 首个公开的受害证词
2026-07-30 01:10–01:51 UTC 第一波攻击:清空1,082.65 BTC / 1,196个地址(耗时41分钟,分布于6个区块) 中间3个区块为空白——疑似批量广播痕迹
2026-07-30(最初10分钟) 约窃取3,000万美元,优先打击高额钱包 Chainalysis分析
2026-07-31(第一波结束约30小时后) Coinkite发布首份安全公告(针对Mk2/Mk3) 资金已流出完毕
2026-07-31 09:33 EDT 发布修复固件(Mk4/Mk5 v5.6.0+, Q v1.5.0Q+)
2026-08-01 Coinkite扩大公告范围——确认Mk4/Mk5/Q同样受约72比特熵影响 影响范围扩大
2026-08-01 Galaxy Research确认第二波攻击——累计1,158.66 BTC / 2,673个地址 / 约7,510万美元 7个攻击者控制地址
2026-08-02 Galaxy Research确认第三波攻击——新增207.73 BTC / 1,912个地址 针对小额钱包,追踪难度更高的模式
2026-08-02 累计1,367.05 BTC / 4,585个地址 / 约8,860万美元 攻击仍在进行
2026-08-02 Galaxy向联邦执法机构与合规公司举报约600个疑似攻击者地址
2026-08-03(截至目前) 被盗资金仍未转移,调查持续进行 本报告撰写时点

4. 根本原因分析 — 仅检查宏是否存在的fail-open结构

4.1 缺陷的结构

根据Block比特币工程团队公开的分析,该缺陷按以下顺序产生。

[1] Coldcard生产构建配置
    MICROPY_HW_ENABLE_RNG = 0
    (因Coinkite提供了自有的硬件RNG封装,故有意设置为0)
         ↓
[2] libngu库
    仅检查宏"是否被定义"(#ifdef系列)
    未检查"值是否为启用状态"(#if)
         ↓
[3] 判定结果
    由于宏已被定义,不会被误判为"硬件RNG可用",
    构建绑定到MicroPython的默认回退路径
         ↓
[4] 回退PRNG:Yasmarang
    种子来源 = 芯片唯一ID(UID)+ 计时器寄存器
    初始化之后不再收集新的熵
         ↓
[5] 2021-03-01提交
    ckcc.rng_bytes(直连STM32硬件外设)
    → ngu.random.bytes(受损的libngu路径)
         ↓
[6] SHA256d哈希
    哈希无法增加输入熵
    2^40个输入 → 最多2^40个输出

关键在于第6步。不少用户与部分早期报道曾误以为"用SHA256哈希过就应该是安全的",但密码学哈希函数只提供压缩与扩散,并不会创造熵。如果输入候选有2^40个,输出候选同样只有2^40个。这与2012年以来反复出现的一系列RNG失败案例(Debian OpenSSL、Android SecureRandom、Profanity靓号地址生成器等)属于同一种结构性错误。

4.2 为何五年间未被发现

因素 说明
仅凭输出观察无法检测 Yasmarang的输出能够通过统计随机性检验(NIST STS、Dieharder等)。问题不在于分布,而在于搜索空间的大小
构建时刻的缺陷 仅阅读源代码无法发现该问题,它产生于构建配置与库条件编译之间的相互作用
开源的悖论 正因固件开源,攻击者也能以同样方式进行验证。可审计性是一把双刃剑
缺乏可复现性验证 发布流程中不存在跨设备熵验证——即检查两台相同设备是否会生成不同种子
自动化审计的局限 Coinkite表示,事件发生前数周曾对同一代码进行过基于AI的审计,但未发现该缺陷

4.3 关于攻击者发现路径的观察

Coinkite提出,攻击者可能利用AI在开源固件中发现了该缺陷。与此同时,该公司自身的AI审计却在同一代码中一无所获。这种不对称值得关注。

防御者的AI审计所提出的问题是宽泛且没有明确目标的——"这段代码里有没有漏洞?"而攻击者使用AI提出的问题则是狭窄且目标明确的——"这台设备能生成的种子总共有多少种可能?"后者显然是更容易回答的问题。LLM不是替代判断的神谕,而是替代计算的工具,工具产出的质量与提问的具体程度成正比。这一点为防御方的AI审计设计提供了实务上的教训。

不过,攻击者是否真的使用了AI,目前仍属情境推测,并非已确证的事实。


5. 技术性漏洞分析 — 熵崩溃的量化

5.1 漏洞摘要

项目 内容
漏洞类型 CWE-331(熵不足)、CWE-338(使用密码学上脆弱的PRNG)
受影响产品 Coldcard Mk2、Mk3、Mk4、Mk5、Q
引入时点 2021-03-01(提交)、2021-03-17(v4.0.0发布)
CVSS v3.1(评估值) 9.1(Critical) — AV:N / AC:L / PR:N / UI:N / S:U / C:H / I:N / A:H
攻击前提条件 无需对目标设备进行物理或逻辑访问
可检测性 受害者侧无法检测(不存在入侵痕迹)

5.2 熵崩溃的规模

型号 设计目标 实际熵 搜索空间 实务解读
Mk2 / Mk3 128比特 约40比特 约1.1×10^12 消费级GPU集群可在数小时至数天内完成全空间搜索
Mk4 / Mk5 / Q 128比特 约72比特 约4.7×10^21 以现有消费级设备而言不现实,但对国家级或大规模资金攻击者而言处于理论射程之内
正常BIP-39 12词 128比特 128比特 约3.4×10^38 无法全空间搜索

Mk4/Mk5/Q相对较好的原因,是其安全元件(secure element)将自身的熵混入了PRNG状态。但根据Coinkite的技术背景文档,这些型号在初始混入之后,后续大部分随机数值仍是从同一条受损路径中取出的。

部分早期报道将搜索空间描述为"约40亿个(2^32)"。这一数字似乎源自Block提及的"32比特重新播种(reseed)漏洞",应与Coinkite官方公告中约40比特的估算数值区分开来看待。但无论采用哪个数字,结论都同样是——处于可全空间搜索的范围之内

5.3 种子之外的附带影响

同一条受损路径同样被用于种子生成以外的功能。Block公开资料所列出的受影响函数如下。

  • 纸钱包(paper wallet)私钥生成
  • Seed XOR分割掩码生成
  • 设备复制(cloning)密钥生成

也就是说,即便是使用Seed XOR将种子分割保管的用户,其分割掩码本身也可能是可预测的。这意味着"高级用户反而更安全"这一普遍认知,只能部分成立

5.4 针对fail-open结构的未解决质疑

Block将Mk4/Q/Mk5的结构定性为"危险的fail-open结构"。其指出,若在启动序列早期、重新播种(reseed)执行之前捕获到异常,设备可能会以公开的初始状态、不附加任何额外熵的方式继续运行。该情形是否会在实际生产环境中发生,仍有待另行评估,截至本报告撰写时属于未解决事项

这一点从安全设计原则的角度看至关重要。密码学随机数生成器必须是fail-closed的——若无法获取熵源,应当中止运行,而不是返回一个数值。返回低质量数值的结构,会把"失败"这一事实本身给掩盖起来。


6. 攻击链分析 — 离线种子复现与链上清空

6.1 分阶段拆解

阶段 行为 观测依据
1. 缺陷识别 分析开源固件及构建配置,估算搜索空间 固件公开仓库
2. 候选种子枚举 结合UID、计时器状态与前序RNG调用历史约束条件,复现候选输出流 Block分析
3. 地址派生 按BIP-32/BIP-39/BIP-44、49、84各派生路径生成地址 标准规范
4. 余额比对 与公开区块链数据(UTXO集)进行匹配比对 Galaxy · Chainalysis分析
5. 优先级选定 优先打击高额钱包,再扩散至小额钱包 最初10分钟窃取3,000万美元
6. 自动化清空 全部交易使用相同的硬编码手续费率30 sat/vB,无找零输出 Galaxy分析——疑似使用自动化工具
7. 资金保留 资金保留在(第一、二波共计)7个攻击者地址中未动用 链上观测

6.2 交易指纹

Galaxy判断存在自动化工具使用的依据有两点。第一,所有交易均使用了相同的硬编码手续费率(30 sat/vB)——正常的钱包软件会根据mempool状况动态调整手续费。第二,不存在找零输出(change output)——这是一种将全部余额转移至单一地址的清空(sweep)模式。

这一指纹为今后编写类似攻击的检测规则提供了基础素材。

6.3 各波次之间的差异

波次 时点 规模 特征
第一波 07-30 01:10–01:51 UTC 1,082.65 BTC / 1,196个地址 优先打击高额、模式均一
第二波 08-01确认 累计1,158.66 BTC / 2,673个地址 与第一波模式相似,推测为同一操作者
第三波 08-02确认 +207.73 BTC / 1,912个地址 针对小额目标,模式更复杂、追踪难度更高

Galaxy明确指出,尽管每一波看起来都像是单一操作者所为,但仅凭链上数据无法判定三波是否为同一主体。第三波出现的模式变化,同时留下了两种可能性:一是工具改进,二是出现了利用相同密钥空间的另一名行为者。

6.4 MITRE ATT&CK映射

Tactic Technique ID 在本事件中的实现
Reconnaissance Gather Victim Host Information T1592 分析设备UID与计时器特性
Reconnaissance Search Open Technical Databases T1596 查询公开区块链UTXO集
Reconnaissance Search Open Websites/Domains T1593 分析开源固件仓库
Resource Development Develop Capabilities: Malware T1587.001 制作自动化清空工具
Credential Access Brute Force T1110 对缩小后的种子空间进行全空间搜索
Credential Access Unsecured Credentials: Private Keys T1552.004 从复现出的种子中派生私钥
Collection Data from Information Repositories T1213 收集链上余额数据
Impact Financial Theft T1657 清空比特币资产

7. 影响量化分析 — 三波攻击

7.1 损失规模

项目 数值
累计窃取量 1,367.05 BTC
美元折算 约8,860万美元
韩元折算(按1,390韩元/美元计) 约1,232亿韩元
受影响地址数 4,585个
第一波耗时 41分钟
单笔最大损失 约180万美元
公开证词的个人损失 18.25 BTC(约160万加元)
资金追回 0(全部滞留于攻击者地址,未转移)
厂商察觉至公告的延迟 约30小时

7.2 受害者画像

根据Galaxy的分析,被窃资产的平均休眠期约为3.18年。这表明受害群体并非机构,而是集中在长期持有型个人(long-term holder)身上。

这一画像具有三方面含义。

  1. 检测延迟 — 由于许多用户数年未曾打开过钱包,他们察觉到资产被窃取的时间大幅延后。
  2. 安全意识与受害程度的反相关 — 那些不信任交易所而选择自我保管的、安全意识相对更高的群体,反而成了受害者。
  3. 不可恢复性 — 个人自我保管的资产既不受存款保险保护,也不适用交易所的储备金或保险。

7.3 持续进行中的风险

Galaxy警告称攻击仍在进行中,由脆弱种子生成的所有地址最终都会被清空。第三波以小额钱包为目标这一事实,意味着攻击者正在降低经济性门槛,逐步耗尽剩余目标。"我的钱包金额小,优先级应该较低"这种判断,已经不再成立


8. 幸存者分析 — 什么保住了钱包

8.1 幸存条件

条件 保护级别 依据
独立掷骰输入50~98次 安全(RNG缺陷单独不构成风险) 骰子输入本身即可贡献128比特以上
独立掷骰输入99次以上 安全(贡献约256比特) 同上
掷骰次数不足50次或已不记得 危险——需迁移 Coinkite建议
强且唯一的BIP-39密码短语(passphrase) 立即暴露风险降低,但非根本解决 生成了仅凭种子词无法到达的另一个钱包
在存在漏洞的固件发布之前生成的种子 安全 v4.0.0之前
在修复固件上新生成的种子 安全 仅设备生成的熵已足够
多签(全部密钥均由存在漏洞的设备生成) 危险 所有密钥均受同一缺陷影响
多签(部分密钥由其他厂商设备生成) 条件性安全 取决于阈值配置

关键在于,掷骰结果与设备生成的熵经哈希结合,而这部分用户提供的熵不受固件缺陷的影响

8.2 启示 — 重新评估用户熵

掷骰功能一直被当作"供偏执用户使用的可选高级功能"。而本次事件表明,在厂商信任崩塌的情况下,这一功能是唯一真正发挥作用的防线

但正如Casa高层所指出的,期望普通投资者主动掷骰来补充种子熵并不现实。这恰恰暴露出易用性与安全性之间的鸿沟,而如何用产品设计而非用户教育来填补这一鸿沟,正是整个行业面临的课题。

实务上的建议很明确:应将用户提供的熵从可选功能转变为默认设置。至少在生成用于大额保管的种子时,理应将其强制设为必要步骤。


9. 应对与迁移 — 补丁无法修复的部分

9.1 修复固件版本

型号 发布轨道 修复版本
Mk2 / Mk3 标准 v4.2.0及以上
Mk4 / Mk5 标准 v5.6.0及以上
Mk4 / Mk5 Edge v6.6.0X及以上
Q 标准 v1.5.0Q及以上
Q Edge v6.6.0QX及以上

注意: 标准轨道与Edge轨道是彼此独立的两条发布线。不能因为Edge版本号高于标准版本,就认为其一定是已修复版本。

9.2 补丁的局限性

固件更新不会更改或修复已有种子。

这一句话,几乎概括了本次事件应对的全部要点。漏洞并不存在于设备本身,而存在于设备已经生成出来的那个数字中。因此,以下应对措施全部无效

无效的应对 原因
仅更新固件、继续使用原有钱包 种子仍然是脆弱的
将脆弱种子恢复到其他厂商的钱包中 攻击者搜索的是种子空间,而不是设备
将脆弱种子重新抄写到纸质/金属备份上 问题在于种子值本身
将资金转移到其他地址(派生索引) 由同一种子派生出的所有地址均已暴露
将资产拆分为小额 第三波攻击正在以小额资产为目标

9.3 正确的迁移流程

  1. 确认设备型号与发布轨道,首先安装对应的修复固件
  2. 在屏幕上通过版本字符串直接确认已安装修复固件。
  3. 生成一个全新的种子。修复固件的设备生成熵已足够,掷骰输入为可选项。
  4. 备份新的种子与密码短语。密码短语应与种子词在物理上分开保管
  5. 对设备重新通电(power-cycle),并在设备屏幕上验证钱包指纹(fingerprint)与收款地址
  6. 先发送小额测试交易并确认到账。
  7. 转移剩余的全部资产。
  8. 在确认迁移完成之前,不要销毁旧备份

Coinkite与多家研究机构共同强调的一点是:不要急躁。在紧急情况下因迁移失误(地址输入错误、备份有误、跳过验证)而导致的损失,已被反复观测到甚至超过了黑客攻击本身造成的损失。

9.4 厂商应对评估

措施 评价
向所有型号发布轨道推送修复固件 恰当——响应迅速
全部销毁未出货库存设备 恰当——阻断供应链污染
向已出货客户逐一发送邮件通知 恰当,但触达率有限
首次公告延迟约30小时 不恰当——公告发布于第一波结束之后
初期公告将Mk4/Q/Mk5归类为"无影响",8月1日才更正 不恰当——初期范围判定有误,误导了用户判断
明确列出未受影响产品(TAPSIGNER/OPENDIME/SATSCARD) 恰当

30小时的延迟是本次事件应对中最应受到批评的一点。不过,由于攻击发生在公告之前,即便厂商立即发布公告,很可能也无法阻止第一波攻击。问题在于,第二、第三波的大量受害者正是在这段延迟期内失去了采取行动的机会


10. 行业启示 — 重新审视信任模型

10.1 崩塌的假设

行业的默认假设 本次事件的反证
硬件RNG是可信的 一行构建配置就能将其关闭,而且这一事实会被掩盖
开源固件已被充分审计 五年间公开的代码中,无人发现问题
物理隔离能保障密钥安全 隔离堪称完美,资产却已消失
冷存储比热钱包更安全 在生成阶段的缺陷面前,这种比较毫无意义
自我保管能消除交易所风险 只是把交易所风险换成了厂商风险

10.2 结构性教训

第一,信任的最小单位不是设备,而是瞬间。硬件钱包的安全评估,不应问"这台设备是否安全",而应问"这个密钥被生成的那一瞬间是否安全"。这将改变资产保管尽职调查(due diligence)所应提出的问题形式。

第二,随机数生成器必须是fail-closed的。在无法获取熵源时仍返回低质量数值的设计,会把失败这一事实本身掩盖起来。这正是NIST SP 800-90B要求持续健全性检查(continuous health test)的原因所在。

第三,可审计性并不等于已被审计。开源会引发一种"应该有人检查过吧"的集体错觉。实际是否被检查过是另一回事,未经验证的事物应被当作不存在来对待

第四,透明性是一把双刃剑。公开账本既是审计与验证的基础,同时也是攻击者的免费侦察基础设施。隐私技术(CoinJoin、避免地址重用)在本次事件中具备了实质性的防御价值。

第五,厂商集中化是一个新的单点故障。在去中心化系统中,若用户集中依赖少数几家硬件厂商,协议层的去中心化虽仍得以维持,但系统性风险却会在密钥生成层不断累积。本次事件是这一风险首次以大规模形式实现的案例。

10.3 协议层本身并无问题

有一点需要附带说明:比特币协议本身、secp256k1曲线、BIP-32/39标准中,均未发现任何缺陷。失败完全发生在实现层——更准确地说,是发生在特定厂商的构建配置中。Trezor、Ledger、Block(Bitkey)均已确认自家产品不受影响。

这一区分在市场沟通中至关重要。"比特币被黑了"这种说法是不准确的,准确的说法应是"某特定硬件钱包厂商的密钥生成实现失败了"。


11. 韩国视角 — 监管适配性与对国内交易所的建议

11.1 现行韩国监管的盲区

《虚拟资产用户保护法》(2024年7月19日起施行)要求虚拟资产业者将用户虚拟资产经济价值的80%以上保管于冷钱包中——这一比例是从此前《特定金融信息法》体系下ISMS认证要求的70%基准上调而来。业者须每月核算经济价值并维持该比例。

2026年2月,韩国金融委员会通过对国会政务委员会的书面答复表示,在制定第二阶段法案(《数字资产基本法》)下位规定时,将考虑把冷钱包保管比例上调至100%水平。同时,该委员会也在研究是否将数字资产托管(custody)单独规范为一类业务。

问题在于,整个监管体系规范的只是"隔离前提"

监管指标 规范对象 是否能防御本次事件
冷钱包保管比例80% 资产存放在哪里 不能
冷钱包保管比例100%(讨论中) 资产存放在哪里 不能
ISMS认证 一般管理体系 部分
准备金·保险(韩元市场30亿韩元,其他5亿韩元) 事后赔偿 仅限事后应对
密钥生成熵质量标准 不存在

即便冷钱包比例达到100%,也无法阻止此类攻击。由脆弱种子生成的冷钱包,即便处于100%的冷存储状态,依然会被清空。这意味着监管指标与实际风险并未对齐。

11.2 对韩国国内交易所与VASP的建议

优先级 措施 详情
立即 全面排查密钥生成来源 对所有运营中冷钱包的密钥进行清单化,记录其生成时间、设备与固件版本、HSM。若曾使用Coldcard系列,应立即隔离并迁移
立即 排查消费级硬件钱包用于运营资产的情况 消费级硬件钱包并非为机构托管用途设计。需确认是否曾以临时或应急方式使用过此类设备
1周 验证熵来源的冗余性 确认HSM是否单一依赖TRNG。至少将两个以上独立熵源做XOR结合,确保其中任一源失效时其余仍能维持安全性
1周 建立密钥生成溯源(provenance)记录体系 以签名日志的形式保存每个密钥的生成日期、设备标识符、固件版本、熵源与见证人。这是事后确定影响范围的前提条件
2周 审计多签·MPC配置的异构性 若阈值配置中的全部密钥均来自同一厂商、同一固件、同一库,则多重化毫无意义。应在厂商、架构、熵源三方面进行交叉分散
2周 引入跨设备熵验证流程 将验证同型号两台以上设备生成密钥的统计独立性,纳入密钥生成SOP
1个月 重新确认HSM认证要求 确认FIPS 140-2/140-3 Level 3以上、CC EAL4+等认证的有效性,以及RNG是否包含在认证范围之内
1个月 固件SBOM与变更管理 获取托管基础设施全部组成部分的SBOM。固件更新时须强制进行第三方安全审计与回归验证
每季度 制定密钥轮换政策 淘汰无限期使用的密钥。定期轮换时须使用新的熵源重新生成
常态 强化链上异常提款检测规则 基于硬编码相同手续费率、无找零输出、长期休眠地址全额转移等清空指纹建立告警机制

11.3 对监管当局的政策建议

  1. 从保管位置监管扩展为密钥生命周期监管— 冷钱包比例是必要条件,而非充分条件。第二阶段法案下位规定除了上调比例外,还应纳入密钥生成、备份、轮换、销毁全过程的完整性要求

  2. 在托管单独业务规范中明确RNG要求 — 金融委员会正在研究的数字资产托管业务规范中,有必要考虑将使用经认证的随机数生成器(符合NIST SP 800-90A/B/C或同等认证)明确列为准入监管要求。

  3. 审议硬件钱包漏洞公示义务 — 可考虑对在韩国境内流通的硬件钱包厂商,规定发现重大漏洞时须在一定期限内(如24小时)通知用户。本次事件30小时的延迟,恰恰证明了这一制度的必要性。

  4. 建立自我保管用户的信息告知体系 — 自我保管不适用存款保险,也不适用准备金赔偿。应在交易所提款环节告知用户这一事实以及厂商风险的存在。

  5. 摸清国内流通情况 — 目前尚无公开资料说明Coldcard在韩国国内的流通规模及受害案例。有必要由KISA、金融安全院层面开展实态调查,并发布韩文建议。

11.4 韩国国内市场的特殊性

韩国市场以韩元市场五大交易所为中心呈现出较高的交易所集中度,加上《旅行规则》(Travel Rule)实施对个人钱包提款的限制,使得自我保管比例相对偏低。这一特点降低了本次事件对韩国的直接冲击,但同时也留下了以下两点风险。

  • 交易所托管基础设施本身的密钥生成风险会更加集中。 如果由个人分散持有,个别事故本可局限于个体层面,但一旦集中于交易所,便会演变为系统性风险。
  • 在法人市场开放与机构托管扩大的阶段,如果托管业者的密钥管理标准尚未确立,同类事故完全可能以远大得多的规模重演。

12. 致比特币投资者的建议

12.1 致Coldcard持有者的即时判定流程

Q1. 你的钱包种子是否由Coldcard生成?
    否 → 无影响(但请确认Q5)
    是 ↓

Q2. 种子生成时间是否在2021年3月17日(固件v4.0.0发布)之后?
    否 → 无影响
    不确定 → 视为受影响,继续下一步
    是 ↓

Q3. 生成种子时是否输入了50次以上独立且未公开的掷骰结果?
    是(确定) → RNG缺陷单独不构成风险。但Seed XOR用户请参见12.3
    否 / 不记得 ↓

Q4. 属于需立即迁移的对象。按照9.3的流程执行。

Q5. 是否使用过纸钱包生成、Seed XOR分割、设备复制功能?
    是 → 相应产出物也可能是可预测的。需要单独迁移

密码短语(passphrase)用户注意:强且唯一的BIP-39密码短语能大幅降低即时暴露风险,但并不能修复脆弱的种子本身。Coinkite建议,即便是使用密码短语的用户,也应在实际条件允许的情况下尽快完成迁移。

12.2 致一般比特币投资者的建议

建议 依据
分散使用不同厂商 单一厂商依赖是本次事件所证实的系统性风险。持有规模较大者应将资产分散到不同制造商、不同架构的设备中
多签应采用异构配置 若2-of-3配置中的3个密钥均来自同一型号、同一固件,多重化效果等于零
养成使用用户熵的习惯 将厂商无法控制的熵(掷骰或抛硬币等)结合进种子中,至少50次
使用密码短语,但要分开保管 种子词与密码短语应存放在物理上不同的地点
避免地址重用 削弱公开账本沦为攻击者侦察资产的结构
定期检查余额 本次受害者的平均休眠期为3.18年。应建立至少每年一次的余额检查习惯
订阅厂商安全公告渠道 30小时的公告延迟固然是问题,但未看到公告的用户损失的是数天时间
按规模对保管方式分层 小额优先考虑便利性,大额则采用多签、异构、用户熵
理解自我保管的责任范围 自我保管资产既不受存款保险保护,也不适用交易所准备金或保险

12.3 不应做的事

禁止事项 理由
将脆弱种子恢复到其他钱包应用/设备中,并认为自己已经"迁移完成" 种子值本身就处于搜索空间之内
因金额较小而推迟迁移 第三波攻击的目标正是数千美元规模的钱包
在恐慌状态下不经验证就大量转账 迁移失误造成的损失反复被观测到甚至超过黑客攻击本身
向自称提供"恢复服务"的第三方提供种子 事件发生后正是二次钓鱼的高峰期。任何情况下都不应向他人提供种子
生成新种子前省略固件确认步骤 若在存在漏洞的固件上生成新种子,该种子仍会是脆弱的

12.4 在韩国国内发生受害时的应对流程

  1. 保全链上证据 — 记录被盗交易的交易ID、时间(UTC)、发送/接收地址与金额,并同步截图区块浏览器画面。
  2. 向执法机构报案 — 向警察厅网络调查局或所辖警察署网络调查队报案。由于需要国际协作,报案的时间点非常重要。
  3. 向链上分析公司举报 — Galaxy Research、Chainalysis等机构正在建立攻击者地址数据库。提供受害地址信息有助于整体追踪。
  4. 申请交易所冻结 — 为应对资金流入交易所的情况,可提前向国内外主要交易所的合规渠道登记相关地址。目前资金仍未转移,该措施具有实际效力。
  5. 准备税务处理 — 被盗损失的税务处理因个案而异,应保留资产转移记录与被盗证明材料。具体判断需咨询税务专业人士。

本节内容为一般性信息,并非法律建议。个别情况的法律应对应咨询律师。


13. 检测·响应·预防清单

13.1 个人用户

  • 确认所持硬件钱包的厂商、型号、固件版本
  • 确认各个种子的生成时间及生成设备记录
  • 确认是否输入过掷骰等用户熵
  • 若适用:安装修复固件 → 生成新种子 → 小额测试 → 转移全部资产
  • 单独排查Seed XOR、纸钱包、设备复制的产出物
  • 设置区块浏览器余额提醒
  • 订阅厂商安全公告渠道

13.2 交易所·托管业者

  • 全部冷钱包密钥的生成溯源清单化
  • 调查消费级硬件钱包用于运营资产的使用历史
  • 确认HSM认证范围是否包含RNG
  • 验证多个独立熵源的结合结构
  • 审计多签·MPC配置的厂商异构化
  • 将跨设备熵验证纳入密钥生成SOP
  • 获取固件SBOM并建立更新前第三方审计流程
  • 部署基于清空指纹的异常提款检测规则
  • 制定并实施密钥轮换政策
  • 定义事故发生时的用户通知SLA(建议24小时以内)

13.3 硬件钱包制造商

  • 将RNG路径重新设计为fail-closed(熵获取失败时中止运行)
  • 增加验证构建配置与库条件编译之间相互作用的测试
  • 将跨设备种子独立性验证纳入发布关卡(release gate)
  • 实现NIST SP 800-90B持续健全性检查
  • 研究将用户熵输入从可选功能转为默认设置
  • 建立漏洞紧急通知体系(考虑邮件触达率局限的多渠道方案)
  • 提供用户可自行使用的(离线)自检工具

14. 结论

本次事件将加密货币安全讨论的焦点,从"保管"转移到了"生成"。

过去十年间,整个行业将资源集中于改善"存放在哪里"这一问题——从热钱包转向冷钱包,从单签转向多签,从自我保管转向受监管的托管。韩国国内的监管也一直围绕冷钱包保管比例这一单一指标演进。这个方向本身是正确的,也确实预防了大量事故。

然而,本次事件揭示出——所有这些改进,其实都建立在一个从未被验证的前提之上:密钥从一开始就被制造成不可猜测的。这个前提,因一行构建配置而崩塌,五年间无人知晓,最终导致在一台完美隔离的设备上,8,860万美元凭空消失

归纳起来,有以下四点。

  1. 冷存储保管的是密钥,而不保证密钥的质量。保管监管必须由生成监管来加以补充。
  2. 随机数生成器不应悄无声息地失败。fail-open型RNG会把失败这一事实本身掩盖起来,这比失败本身更加危险。
  3. 可审计性不等于已被审计。未经验证的事物,应被当作不存在来对待。
  4. 去中心化应按层级分别评估。即便协议层实现了去中心化,只要密钥生成层集中于少数厂商,系统性风险依然存在。

"不要信任,去验证(Don't trust, verify)"是比特币历经已久的原则。本次事件表明,这一原则不仅适用于协议本身,也同样应适用于"自己的密钥究竟是如何被生成的"这一问题上。而绝大多数用户目前并没有验证这一点的手段。提供这样的手段,正是厂商与监管当局接下来必须完成的课题。


15. 参考文献

  1. Coinkite. (2026). COLDCARD Security Advisory — Seed Generation. Coinkite Blog. https://blog.coinkite.com/coldcard-mk3-seed-generation-warning/
  2. Coinkite. (2026). Technical Deep Dive into the Entropy Issue. Coinkite Blog. https://blog.coinkite.com/entropy-technical-backgrounder/
  3. CoinDesk. (2026, August 1). How bitcoin cold wallets lost $70 million in an attack that never touched the devices. https://www.coindesk.com/tech/2026/08/01/how-bitcoin-cold-wallets-lost-usd70-million-in-an-attack-that-never-touched-the-devices
  4. CoinDesk. (2026, August 2). Bitcoin cold-wallet attack spreads to 4,500 addresses as losses near $89 million. https://www.coindesk.com/tech/2026/08/02/bitcoin-cold-wallet-attack-spreads-to-4-500-addresses-as-losses-near-usd89-million
  5. Decrypt. (2026). Coldcard Bitcoin Exploit Balloons to $88 Million as Attackers Keep Draining Wallets. https://decrypt.co/374817/coldcard-bitcoin-exploit-88-million-attackers-draining-wallets
  6. The Hacker News. (2026, August). Coldcard Hardware Wallet Flaw Linked to $70 Million Bitcoin Theft. https://thehackernews.com/2026/08/coldcard-hardware-wallet-flaw-linked-to.html
  7. BleepingComputer. (2026). COLDCARD wallet RNG flaw likely linked to $88 million Bitcoin theft. https://www.bleepingcomputer.com/news/security/coldcard-wallet-rng-flaw-likely-linked-to-88-million-bitcoin-theft/
  8. Tech Times. (2026, July 31). Coldcard Hardware Wallet Hacked via Firmware Bug That Bypassed RNG for Five Years. https://www.techtimes.com/articles/322392/20260731/coldcard-hardware-wallet-hacked-via-firmware-bug-that-bypassed-rng-five-years.htm
  9. crypto.news. (2026). A build error in Coldcard's firmware drained $38 million in bitcoin in 25 minutes. https://crypto.news/coldcard-firmware-bug-drains-38-million-bitcoin/
  10. Bitcoin Magazine. (2026). Coinkite Releases Fixed Firmware After Coldcard Bug; AI Likely Involved In The Breach. https://bitcoinmagazine.com/business/coinkite-releases-fixed-firmware-after-coldcard-bug-ai-likely-involved-in-the-hack
  11. The Crypto Times. (2026, August 1). Coldcard Hack Hits $75M After Alleged Second Attack Wave: Galaxy Research. https://www.cryptotimes.io/2026/08/01/coldcard-hack-hits-75m-after-alleged-second-attack-wave-galaxy-research/
  12. TechSpot. (2026). A Coldcard firmware flaw let hackers drain $70 million in Bitcoin in 41 minutes. https://www.techspot.com/news/113322-coldcard-firmware-flaw-hackers-drain-70-million-bitcoin.html
  13. PrivacyGuides. (2026, August 3). Nearly 1,400 Bitcoin Hacked from Coldcard Wallets. https://www.privacyguides.org/news/2026/08/03/nearly-1400-bitcoin-hacked-from-coldcard-wallets/
  14. 247wallst.com. (2026, August 1). Coldcard Hacked for $70M: How Do You Keep Bitcoin Safe if Cold Wallets Can Be Hacked? https://247wallst.com/investing/cryptocurrency/2026/08/01/coldcard-hacked-for-70m-how-do-you-keep-bitcoin-safe-if-cold-wallets-can-be-hacked/
  15. 韩国金融委员会(금융위원회). (2023). 《虚拟资产用户保护相关法律》施行令制定案新闻资料. https://www.fsc.go.kr/no010101/81214
  16. 新闻1(뉴스1). (2026年2月20日). "金融委员会:交易所虚拟资产冷钱包保管比例,拟审议上调至100%水平". https://www.news1.kr/finance/blockchain-fintech/6077484
  17. Decenter(디센터). (2026). "金融委员会:在第二阶段法案中审议将交易所冷钱包保管比例上调至100%". https://www.decenter.kr/article/20010694
  18. 每日经济(이투데이). (2026). "金融委员会:将尽快推进《数字资产基本法》"……与法人市场开放联动. https://www.etoday.co.kr/news/view/2606627
  19. 区块媒体(블록미디어). (2025年1月16日). 数字资产冷钱包保管比例上调至80%,各交易所运营方式不同. https://www.blockmedia.co.kr/archives/843516
  20. Thelec(디일렉). (2025年12月10日). Upbit使用的冷钱包比例超过98%,有利于安全. https://www.thelec.kr/news/articleView.html?idxno=45132

16. 附录 A — 影响范围及修复固件对照表

型号 受影响固件(以Coinkite公告为准) 实际熵 修复版本(标准) 修复版本(Edge)
Mk2 v4.0.1 ~ v4.1.9 约40比特 v4.2.0及以上 不适用
Mk3 v4.0.1 ~ v4.1.9 约40比特 v4.2.0及以上 不适用
Mk4 修复版本之前的全部版本 约72比特 v5.6.0及以上 v6.6.0X及以上
Mk5 修复版本之前的全部版本 约72比特 v5.6.0及以上 v6.6.0X及以上
Q 修复版本之前的全部版本 约72比特 v1.5.0Q及以上 v6.6.0QX及以上
TAPSIGNER 无影响
OPENDIME 无影响
SATSCARD 无影响

注意来源之间的不一致:关于Mk2/Mk3的受影响范围,Coinkite官方公告标注为v4.0.1v4.1.9,而部分早期报道则标注为v4.0.0v5.0.3。若无法确定,将其视为受影响并进行迁移是更安全的做法


17. 附录 B — 未确认事项与后续追踪课题

项目 当前状态 追踪必要性
攻击者身份及国籍 未确认。Galaxy已向执法机构举报约600个疑似地址
三波攻击是否为同一主体 未确定。第一、二波模式相似,第三波有所不同
攻击者是否使用了AI 厂商推测,尚无确证
Mk4/Mk5/Q的72比特空间是否已被实际攻击 截至目前尚未观测到
Block指出的fail-open启动路径是否实际发生 未解决
韩国国内流通量及受害案例 无公开资料
由脆弱种子生成的纸钱包·Seed XOR产出物的受害情况 尚未统计
最终损失规模 仍在进行中,可能扩大
监管当局是否将引入硬件钱包认证体系 讨论初期

本报告采用TLP:GREEN分级,允许在社区内共享。商业用途需另行协商,引用时须注明出处。许可协议:CC BY-NC-SA 4.0。

免责声明:本文档基于公开来源情报(OSINT)撰写,属于威胁情报分析,并非投资建议或法律建议。由于事件仍在进行中,数据与影响范围可能发生变化。


© 2026 Dennis Kim(金浩光 · 김호광) · 本文作为独立CTI档案(TLP:GREEN)公开发布。 联系:[email protected] · GitHub:gameworkerkim/CYBER-THREAT-INTELLIGENCE-REPORT