近日在 X 上,有名網路創業家所持的虛擬幣全部被盜引發關注。「我做了所有正確的事,但全部沒有用。」加拿大創業家 Jonathan Goodman 8 月 1 日在 X 上發文,描述自己的比特幣被盜的過程:7 月 29 日晚上 9 點 36 分到 9 點 43 分之間,他所有錢包突然被一口氣清空,損失 18.25 BTC,價值超過 160 萬加幣(約新台幣 3,800 萬元)。最令人震驚的是他的資產保全方式:私鑰存放在 Coldcard 冷錢包裡,裝置被鎖進銀行保險箱,從未連接過網路,種子短語(seed phrases)也從未外洩給任何人。
$1.6 million dollars in Bitcoin was drained from my account on July 29th in the Cold Card wallet hack.
My Bitcoin was in cold storage. My keys were on a ColdCard device kept in a safety deposit box that had never been connected to the internet.
This part’s nerdy, but here’s… pic.twitter.com/Lf9kJv9Jo4
— Jonathan Goodman 🇨🇦 (@itscoachgoodman) August 1, 2026
他的遭遇並不是個案,根據 Galaxy Research 追蹤鏈上金流發現,7 月 30 日凌晨短短 41 分鐘內,有 1,196 個比特幣地址被自動化程式掃蕩一空,盜走 1,082.65 BTC;約 27 小時後又出現第二波攻擊,再掃走 76.16 BTC。兩波合計 1,158.81 BTC,以當時幣價計算超過 7,500 萬美元(約新台幣 24 億元),受影響地址多達 2,673 個。
事件源頭指向加拿大硬體錢包公司 Coinkite 生產的 Coldcard:2021 年 3 月起部分韌體版本的種子產生程式存在隨機數漏洞,有效熵遠低於安全標準,攻擊者得以用 AI 分析開源韌體找出弱點,再暴力破解種子短語,讓「從未連網」的冷儲存神話徹底破滅。
從未連網的錢包,怎麼會被盜?
Jonathan Goodman 是健身教練培訓平台創辦人,自認是加密貨幣資深用戶。他在推文中強調,自己的比特幣放在「冷儲存」(cold storage)中,私鑰保存在 Coldcard 硬體錢包內,裝置放在保險箱裡,從未連接網路;種子短語從未告訴過任何人,資產分散存放在多個保險箱與保管庫。他原本以為這樣的防護滴水不漏,直到登入 Wasabi 錢包軟體查看餘額,才看到一整排紅色的提款紀錄。
他使用的 Coldcard,正是漏洞的核心。Coinkite 在 7 月 30 日發布安全公告,承認 2021 年 3 月整合第三方加密函式庫 libngu 時發生錯誤:種子產生過程沒有使用 STM32 晶片的硬體隨機數產生器(RNG),而是落到 MicroPython 的「Yasmarang」軟體偽隨機演算法。該演算法以晶片唯一識別碼(UID)與計時器暫存器作為初始值,UID 與計時器數值都不構成可靠的亂數來源,一旦攻擊者掌握裝置 UID、開機時間與呼叫歷史,就能在離線狀態重現種子產生的候選序列。
區塊鏈公司 Block 的比特幣工程與安全團隊與匿名資安研究員合作,在 7 月 30 日發表技術分析,將漏洞根因拆解到一行巨集判斷:生產板配置將「MICROPY_HW_ENABLE_RNG」定義為 0,因為 Coldcard 提供自己的硬體 RNG 包裝;但 libngu 函式庫檢查的是「巨集是否存在」而非「是否啟用」,編譯照常通過,實際上綁定了軟體偽隨機產生器。受影響的韌體涵蓋 Mk2 與 Mk3 的 4.0.0 至 4.1.9 版,以及 Mk4、Mk5 與 Q 的早期版本,Coinkite 估計 Mk3 的有效熵僅剩約 40 bits,Mk4、Mk5 與 Q 約 72 bits,而標準的 12 字種子短語應有 128 bits 的熵。
AI 審碼找出隱藏五年的漏洞
Coldcard 的韌體原始碼一直公開在 GitHub 上,這成為攻擊的突破口。Coinkite 在技術說明中指出,必須假設有人用 AI 逐版審查舊韌體,才找到這個潛伏近五年的缺陷;諷刺的是,該公司幾週前才用「市面上最好的 AI 模型之一」審查自家程式碼,卻沒有發現這個問題或任何嚴重漏洞。「攻擊者與防禦者擁有同樣的 AI 工具,但今天它沒有幫到我們,只幫了壞人。」Coinkite 在公告中寫道。
Galaxy Research 的金流分析呈現了攻擊的全貌:第一波發生在 7 月 30 日 UTC 01:10 至 01:51,橫跨區塊 960,183 至 960,191,每一筆掃盪都支付固定的 30 sat/vB 手續費,且不找零,而當週正常交易手續費中位數只有 0.4 至 1.0 sat/vB,超付 30 至 75 倍。研究團隊判斷,這是自動化工具在消耗已經掌握的私鑰,而非錢包主人的正常搬移;被清空的地址有 1,183 個是原生 SegWit(BIP-84)格式,與多路徑掃描的行為一致。第二波攻擊於 7 月 31 日展開,持續 3 小時 42 分鐘,再盜走 76.16 BTC。兩波受害地址完全沒有重疊,代表攻擊工具正在枚舉整個金鑰空間。截至 8 月 2 日,被盜的比特幣仍集中在 7 個攻擊者地址中沒有移動,分析師認為盜賊可能正在等待風頭過去,或還沒有能力清洗如此鉅額的資金。
We mapped the flow of funds for the Coldcard vulnerability based on the pattern identified by engineers at Block and shared by @clay_garrett
1,196 addresses drained in full for 1,082.65 BTC (~$70.2M) between 01:10:20 and 01:51:26 UTC on Jul 30 — a 41-minute window, blocks… pic.twitter.com/q785paZvMQ
— Galaxy Research (@glxyresearch) July 31, 2026
鏈上分析公司 Chainalysis 也注意到,攻擊者在一開始就鎖定高價值錢包,包括一個 180 萬美元的受害者,顯示對方在動手前已經研究過受害者族群的分佈。受害者絕大多數是個人持有者:以數量來看,多數地址餘額不到 1 BTC,但損失金額集中在大額地址上,這是個人自託管資產的典型形狀,而不是交易所或機構的部位。
Coinkite 已在 7 月 31 日為所有受影響機型與發行通道釋出修復韌體:Mk2/Mk3 升級到 4.2.0 以上,Mk4/Mk5 標準版 5.6.0 以上,Q 標準版 1.5.0Q 以上。但官方強調,更新韌體不會修復已經產生的舊種子,用戶必須在更新後的裝置上產生全新種子,把資金全部遷移到新錢包,舊備份要保留到搬遷確認完成為止。執行長 NVK 在公開信中呼籲:「如果你用 Coldcard 產生過種子,請先依照我們更新的最佳做法把資金搬走,再看下去。」
Coinkite 同時給出兩條例外條件:如果種子產生時加入了至少 50 次公平、獨立且未外洩的實體擲骰,骰子本身就能貢獻超過 128 bits 的熵;或者錢包使用了高強度且獨一無二的 BIP-39 助記詞密碼(passphrase),攻擊者還得先破解密碼。不過官方仍建議所有受影響用戶盡速遷移。Coinkite 旗下其他產品 TAPSIGNER、OPENDIME 與 SATSCARD 使用不同程式碼庫,不受此漏洞影響。
冷錢包自託管信仰受到重擊
這起事件重新點燃比特幣社群對「自託管」的辯論。比特幣長期以來的核心賣點,是持有者不需要信任銀行或交易所;這次漏洞卻讓數千名「做得最正確」的個人投資者私鑰被憑空重建。比特幣評論員 Guy Swann 直言:「這是比特幣歷史上對最懂技術、防護最嚴密的比特幣持有者最沉重的一擊。數千人的個人私鑰在他們腳下被重新製造出來。」
ARK Invest 數位資產研究總監 Lorenzo Valente 的說法更直接:「自託管硬體領域現在是一場災難。消費者實際上是把交易對手風險,換成了軟體風險、硬體風險、供應鏈風險、釣魚風險與備份風險,還加上一個失誤就全盤皆輸的可能。老實說,把資金分散放在幾家公開交易的交易所或 ETF 上反而更好。」Casa 執行長 Nick Neuman 則批評 Coinkite 建議用骰子補足隨機性的做法:「你不能要求人家擲骰子才能安全自託管,這對 99% 的人來說根本行不通。」
對受害者 Jonathan Goodman 來說,這筆損失極為沉重。他在推文尾聲寫道:「我現在只想著一件事,幸好我是創業家,我的賺錢能力掌握在自己手上。記住我的話,我會賺回來的。」他已向警方與安大略省證券委員會(Ontario Securities Commission)報案,但不預期能追回任何款項。

