商業觀點

Coldcard一行程式藏了5年,41分鐘搬走89億台幣的比特幣

Max Lu 呂元鐘 ・ 2026-08-04 ・ 原載於 Facebook

先講結論:這件事真正可怕的不是有人被偷,是那些人五年來以為自己用的是全世界最安全的錢包,從沒懷疑過。這是2026年7月30日到8月3日發生的Coldcard硬體錢包事件,比特幣圈這幾天的頭條新聞,也是自我保管派這幾年最沉重的一擊。

2026年7月30日中午,區塊鏈情報公司Galaxy Research注意到鏈上有一個異常掃描行為:一個攻擊者在41分鐘內,把1,196個比特幣地址裡的1,082顆比特幣(當時價值約7,020萬美元)全部轉走。這件事後來被追出更多受害地址,總共4,585個地址、1,367顆比特幣被搬走,折合約8,860萬美元、換成台幣接近28億。這些錢包全部有一個共同點:都是用加拿大公司Coinkite出的Coldcard硬體錢包生成的種子。

Coldcard在比特幣圈的地位不是普通產品。它以「開源、可驗證、可自己用骰子生成種子、比特幣純粹主義者的選擇」聞名,是最多資深比特幣持有者推薦的冷錢包之一。用它的人多半是「自我保管派」的堅實信徒——不信任交易所、不信任託管商、堅持「Not your keys, not your coins」的原教旨。這次被偷的1,367顆比特幣裡,很多是這種持有超過五年的老玩家。

問題出在2021年3月1日。那一天Coldcard的工程師改了一行編譯設定,把一個叫`MICROPY_HW_ENABLE_RNG`的巨集定義成0,本意是關掉某段程式碼裡的硬體隨機數功能,因為那段路徑不會被走到。但他們用的一個叫libngu的函式庫,檢查這個巨集是「有沒有被定義」,不是「值是不是1」——這是一個C語言老玩家都可能踩到的細節。結果就是:Coldcard生成新種子的時候,本來應該走STM32晶片內建的真正硬體隨機數產生器,結果被靜悄悄地切換到了一個叫Yasmarang的軟體隨機數演算法,而且這個演算法的初始種子只用了晶片的唯一ID和開機計時器——這些資訊都不是祕密,攻擊者只要有一台同型號機器,就能反推出所有可能的種子組合。

真正的量級是這樣:本來一個256位元的比特幣種子有2的256次方種可能,宇宙毀滅之前都算不完。但Mk3型號在這個bug下,實際的搜尋空間只剩下大約2的40次方——用一台普通遊戲電腦,幾天就能把所有可能性掃完一遍。這不是「有機會被破解」的等級,是「有計算資源就一定破解得了」的等級。

這個bug從2021年3月被寫進韌體4.0.0版本之後,一路沉在程式碼裡整整五年。沒有人回報、沒有內部代碼審查抓到、沒有外部安全審計抓到——它是那種只有主動去驗證「隨機數是不是真的隨機」才會發現的漏洞,而大部分開源專案的審查者都是看程式碼邏輯對不對,不會去實測熵值。真正抓到它的,可能是一個懂密碼學、也懂逆向工程的攻擊者——一整套從Coldcard韌體反編譯回去、發現隨機數強度異常、再寫工具掃地址的完整攻擊鏈,估計花了他好幾個月。有一種說法是這次攻擊者用了AI輔助逆向分析,這件事Coinkite官方也在調查中。

7月31日,Coinkite發布緊急韌體更新,執行長Rodolfo Novak(社群叫他NVK)在X上發了一封公開道歉信:「我很抱歉,我心都碎了。我為這個韌體bug負全責。如果你曾經用Coldcard生成過種子,請在繼續看下去之前,立刻把你的比特幣轉出來。」但他同時講了一句更殘忍的事實:韌體更新不會修好舊種子。一個用弱熵生成的種子,就永遠是弱的。你只能新產生一組種子、把錢轉到新錢包。這對持有數百顆比特幣的人來說是災難級的操作,不只是稅務事件,還牽涉多簽設定、繼承規劃、鏈上足跡暴露等等一長串連鎖問題。

這件事之後,比特幣圈的辯論方向立刻裂成兩派。ARK Invest研究總監Lorenzo Valente的評論最狠:「用戶把交易對手風險換成了軟體風險、硬體風險、供應鏈風險、網路釣魚風險、備份風險,還有一個失誤就全部歸零的風險。」他直接建議:其實ETF或大型交易所才是統計上更安全的選擇。比特幣評論家Guy Swann則說得更沉重:「這是比特幣歷史上,對最懂、也最『妥善保護』自己資產的持有者最重的一擊。」Amicus共同創辦人David Lawrence預測:「新的比特幣投資者以後會直接說:買iShares比特幣信託更安全。這對『相信未來80億人都會把比特幣放冷錢包』的人來說是毀滅性的。那個夢想已經結束了。」

我做二十年的信任生意,對這件事的觀察是這樣:Coldcard不是被駭客擊破的,是被自己五年前寫的一行程式碼擊破的。開源、可驗證、原教旨,這三個標籤在這個bug面前一個都沒用——因為問題不在架構、不在意識形態,在一個沒人回頭去讀的巨集定義。

這其實跟KOL信任經濟很像:一個經營了十幾年的信任關係,可以在一次「原來你連自己在推的東西都沒真的用過」的事件裡瞬間歸零。信任累積得再久,都是靠每一次的細節扛出來的,一個細節出事,五年的品牌信譽跟著陪葬。

一句話總結:安全從來不是靠意識形態撐起來的,是靠每一次沒人願意做的細節檢查撐起來的——2021年沒人重測那組隨機數,2026年就有4,585個人替他們付了帳單。

資料來源
事件時間軸(2026-07-30攻擊、07-31 Coinkite釋出修補韌體、08-01 Galaxy Research公開披露、08-03受害擴大到1,367 BTC/4,585地址):The Hacker News 2026-08-01報導〈Coldcard Hardware Wallet Flaw Linked to $70 Million Bitcoin Theft in 41 Minutes〉
漏洞技術細節(2021-03-01改動MICROPY_HW_ENABLE_RNG、libngu檢查巨集存在而非值、fallback到Yasmarang軟體PRNG、Mk3搜尋空間只剩約2^40):同上The Hacker News報導,及Bleeping Computer〈COLDCARD wallet RNG flaw likely linked to $88 million Bitcoin theft〉
受影響機型與韌體版本(Mk2/Mk3 4.0.0-4.1.9、Mk4/Mk5 5.6.0以前、Q 1.5.0Q以前):The Hacker News報導;TAPSIGNER/OPENDIME/SATSCARD不受影響為Coinkite官方安全公告內容
執行長NVK公開道歉原文引用:Bitcoin Magazine〈COLDCARD SECURITY RISK: IMMEDIATE ACTION REQUIRED〉
業界人士評論(Lorenzo Valente/Guy Swann/David Lawrence/Nick Neuman/Udi Wertheimer/Ido Ben-Natan/Andrew Lazutkin):Coindesk 2026-07-31〈Coldcard exploit reignites Bitcoin self-custody debate after $38 million theft〉
「AI輔助逆向分析」的推測:Bitcoin Magazine〈Coinkite Releases Fixed Firmware After Coldcard Bug; AI Likely Involved In The Breach〉
末段「一行程式碼vs五年信任」與who's home實體資產類比為本人(Max)觀點,非原始報導表述
← 看更多 Max Lu 呂元鐘 的文章