Last Updated on 2026年8月22日 by oba3
ビットコイン向けハードウェアウォレット、コールドカード(COLDCARD)を開発するコインカイト(Coinkite)が、大規模な資産流出につながった乱数生成の不具合を受け、新しいセキュリティー強化版ファームウェアを公開した。盗難額は当初約1億1400万ドルと追跡され、その後の集計では2026年8月21日時点で約1億3000万ドル規模まで拡大したと報告されている。今回見るべきなのは被害額だけではない。事件後の約3週間にわたる再点検では、元の乱数問題とは別に、取引署名、USB通信、バックアップなど複数領域の問題も修正された。自己管理型ウォレットの信頼性は、端末をオフラインにできるかだけでなく、長期間コードを監査し、問題発見後に安全な更新を提供できる運用体制にも左右される。
何が起きたのか?
コインカイトは2026年8月20日、コールドカードのMk4、Mk5向けファームウェア5.6.1と、Q向け1.5.1Qを公開した。これは7月31日に配布された緊急修正版に続く更新で、約3週間にわたり乱数生成部分だけでなくシステム全体を点検した結果を反映している。
発端となったのは、2021年3月に導入されたファームウェア上の不具合だった。一部の端末でウォレットの復元フレーズを生成する際、本来利用するはずだったハードウェア乱数生成器ではなく、予測可能性の高いソフトウェア側の擬似乱数生成処理へ流れる場合があった。その結果、一部のシードでは本来期待される乱数の強度が大幅に低下し、攻撃者が候補となる秘密鍵をオフラインで探索できる状態になっていた。
7月30日以降、影響を受けたアドレスからビットコインが相次いで移動し、初期の追跡では5000を超えるアドレスから約1816BTC、約1億1400万ドル相当が対象になった。その後も分析が続き、8月21日時点の報道では被害総額は約1億3000万ドルとされている。
今回の5.6.1と1.5.1Qでは、新しいシードを作成する際に利用者自身の乱数入力を必須化した。具体的には、予測しにくいタイミングで65回以上キーを押す、物理的なサイコロを50回振る、またはコインを128回投げる方法のいずれかを使う。端末内部の複数の乱数源と利用者側の入力を組み合わせ、一つの乱数生成経路だけに安全性を依存しない設計へ変更している。
なぜ重要なのか?
ハードウェアウォレットは一般に、秘密鍵をインターネットから切り離して保管できるため安全性が高いと考えられている。しかし今回の事件では、秘密鍵が端末から直接抜き取られたわけではない。秘密鍵を生み出す元となるシードの生成処理そのものに問題があった。
つまり端末が完全にオフラインでも、最初に作られた鍵の乱数が弱ければ資産を守れない。利用者がフィッシングに引っかからず、復元フレーズも誰にも渡さず、端末をネットワークへ接続していなくても、内部ソフトウェアの欠陥によって安全性が失われる場合がある。
さらに重要なのは、緊急修正版を出した後の再点検で、元の原因とは別の問題も見つかったことだ。コインカイトは取引署名前の再確認、USB経由のデータ処理、ファームウェア更新時の検証、デルタ・モード、バックアップ処理などを追加で修正した。元の盗難にこれらの問題が使われたという事実は確認されていないが、一つの重大事故をきっかけにシステム全体を再監査する必要性が示された。
市場構造への影響
自己管理では「自分で秘密鍵を持つ」ことが最大の安全対策として語られやすい。しかし実際には、利用者が鍵を保有していても、その鍵を生成するファームウェア、署名内容を表示する画面、バックアップ処理、USB通信など多くのソフトウェアへ依存している。
そのためハードウェアウォレット市場の競争軸も、セキュアチップの搭載数やオフライン機能だけでは測れない。コードがどこまで公開されているか、第三者研究者が検証できるか、脆弱性報告の窓口が機能しているか、過去の問題を公開しているか、修正版をどれだけ安全に利用者へ届けられるかまで含めて評価する必要がある。
コインカイトは今回、新たにセキュリティー状況をまとめる公開ページを設け、固定済みファームウェア、移行手順、検証状況などを継続的に公開する仕組みを整えた。端末販売後も安全性を更新し続ける運用そのものが、製品価値の一部になりつつある。
資金・規制・流動性との関係
今回の事件で特に注意が必要なのは、最新ファームウェアへ更新しても、過去に弱い乱数で生成されたシードが安全になるわけではないことだ。コインカイトは、影響を受ける可能性がある利用者に対し、修正版ファームウェアで新しいシードを生成し、既存のビットコインを新しいウォレットへ移すよう求めている。
これはソフトウェア更新と資産移行が別の作業であることを示す。銀行や取引所であれば内部システムを修正した後に事業者側で顧客資産を保護できる場合があるが、自己管理型ウォレットでは最終的な資金移動を利用者自身が実行しなければならない。そのため重大な脆弱性が発生した場合、技術的な修正速度だけでなく、何万人もの利用者へ正しい行動を伝える能力も被害拡大を左右する。
初心者向け補足
ハードウェアウォレットでは、最初にランダムな数字を生成し、そこから復元フレーズと秘密鍵を作る。このランダムさはエントロピーと呼ばれる。十分なエントロピーがあれば秘密鍵を総当たりで探すことは現実的に不可能だが、乱数の候補が極端に少なくなると、攻撃者が大量の候補を計算して実際のブロックチェーン上のアドレスと照合できるようになる。
今回の問題はビットコインの暗号方式そのものが破られたわけではない。安全な秘密鍵を作る前段階の実装に欠陥があった。そのため「秘密鍵をオフラインで保管しているから安全」という説明だけでは足りず、「その秘密鍵がどのように生成されたか」まで安全性の対象になる。
また、コインカイトは事件後の検証に外部セキュリティー研究者とKimiなどのAIモデルを含むAI支援レビューを利用した。ただし、追加で修正された個々の問題をAI単独が発見したとコインカイトが明確に説明しているわけではない。元の重大な乱数生成不具合についても、事件前に実施したAI支援レビューでは検出できなかったと同社は認めている。AIは監査を補助できても、安全性を保証する仕組みではない。
Web3Timesの視点
コールドカード事件が突き付けたのは、「自己管理なら第三者を信用しなくてよい」という単純な図式の限界だ。取引所へ資産を預けなくても、利用者はハードウェア、ファームウェア、乱数生成、署名画面、更新手順といった別の技術基盤を信頼している。
だからこそ自己管理機器の安全性は、発売時点の設計だけで評価できない。数年前に入った一つのコード変更が長期間見逃され、後から巨額の資金流出につながるなら、継続監査、第三者検証、脆弱性開示、迅速な更新、利用者への移行支援までを一つのセキュリティー運用として見る必要がある。
今回コインカイトが利用者側の乱数入力を必須化したことも象徴的だ。一つのハードウェア乱数源を信頼するのではなく、複数の独立した要素を組み合わせ、どこか一つが失敗しても即座に秘密鍵全体が危険にならない設計へ寄せている。
ハードウェアウォレット市場で次に問われるのは、「絶対に破られない端末」を掲げることではない。重大な欠陥が入り得ることを前提に、どれだけ早く発見し、影響範囲を把握し、利用者資産を新しい安全な状態へ移行させられるかだ。自己管理が金融インフラとして広がるほど、その信頼は端末単体ではなく、継続的なセキュリティー運用全体によって支えられるようになる。
