ニュース暗号資産Coldcardウォレットのハックを解説:弱いシード生成が何年ものBitcoinを危険にさらした理由

Coldcardウォレットのハックを解説:弱いシード生成が何年ものBitcoinを危険にさらした理由

著者: edgeX Original·

重要ポイント

  • Coldcardウォレットから、3波で観測された1,367.05 BTCが盗まれ、疑われる4波目を含めると総エクスポージャーは約1,815.75 BTCに達する可能性がある。
  • 脆弱性の原因は、2021年のファームウェア移行により、ウォレットのシード生成が意図されたハードウェアソースではなくソフトウェアの乱数フォールバックを使うようになったことで、Mk2およびMk3ではシードのエントロピーが40ビット程度まで低下した点にある。
  • ファームウェア4.0.1から4.1.9を使用するMk2およびMk3が最も深刻な影響を受け、後発のMk4、Q、Mk5はセキュアエレメントのエントロピーを追加して露出を減らしたが、完全には排除できなかった。
  • Coinkiteは影響を受けた製品ラインに修正版ファームウェアを公開したが、更新ではすでに脆弱なプロセスで作成されたシードは修復できないと確認しており、ユーザーは完全に新しいウォレットを生成して慎重に資金を移す必要がある。
  • 個別の露出を下げる2つの独立した緩和策として、シード作成時に少なくとも50回の公正なダイスロールを追加して128ビットの独立エントロピーを供給する方法、または強力で一意なBIP-39パスフレーズを使う方法がある。

25分間の一斉流出から多波にわたるインシデントへ

594 BTCの送金が見出しになったのは、その速さと連携のためだった。最初の波に関する報道では、その後およそ562 BTCが1つのアドレスに集約されたとされた。パターンは自動化を示唆していた。多くの古い単一署名の出力が短時間に連続して掃き出され、攻撃者は通常のウォレット利用者のように振る舞うのではなく、利用可能な残高をすべて取ったように見えた。

損失推定はそれで終わらなかった。Galaxy Researchの責任者Alex Thornは、同様の形状を持つ取引の追跡を続けた。8月2日時点で、彼が観測した3波分の推定値は4,585の送信元アドレスにまたがる1,367.05 BTCに達し、彼の更新時点の価格基準では約8,860万ドル相当だった。

8月3日、ThornはBitcoinブロック960,778から960,792の間で新たなクラスターを指摘した。初期レビューでは、218件の取引が462の被害者候補アドレスから210の新しい送金先へ380 BTC超を移動させていることが確認された。その後、彼の分析に基づく報道では、潜在的なクラスターは709のアドレスにまたがる約448.7 BTCまで拡大した。

この4波目のクラスターには慎重な表現が必要だ。いくつかの取引はreplace-by-feeが有効なまま未確定であり、理論上は被害者がより高い手数料を提示することで悪意ある未確認取引を置き換えられる可能性があった。Thornはこのパターンを、最終的に確定した損失額としてではなく、再びColdcardに関係する波である可能性が高いと述べた。448.7 BTCを前の合計に機械的に加えると約1,815.75 BTCになるが、これは4波分の潜在的なエクスポージャー推定であり、確定した盗難総額ではない。

段階観測された活動2026年8月4日時点の状況
最初の大規模スイープ約25分間で、約500の単一署名の送信元アドレスから約594 BTC広く報道され、オンチェーンで確認済み
3波推定4,585アドレスにまたがる1,367.05 BTCGalaxy Researchによる観測推定
疑われる4波目当初は380 BTC超が特定され、後に709の潜在的被害者アドレスにまたがる約448.7 BTCと推定高い確度でパターン一致するが、一部の取引は保留中または置換可能
潜在的な4波合計4波目の推定全体を含めると約1,815.75 BTC暫定値であり、最終確定損失総額ではない

攻撃の波の数は重要だが、この話の核心ではない。より難しい問いは、本来はオフラインのままであるはずの秘密鍵を、攻撃者がどうやって制御できたのかという点だ。

2021年のコード変更がシード生成を弱めた

Bitcoinウォレットのシードは単なる単語の並びではない。ウォレットが秘密鍵を導出するための、秘密のエントロピーを人間が読める形で表したものだ。エントロピーが正しく生成されていれば、シードを推測することは計算上現実的ではない。入力候補が厳しく制限されている場合、同じ単語列でも見た目はごく普通だが、セキュリティは大きく低下する。

BlockのBitcoin Engineering and Securityチームは、Coldcardの問題を2021年の暗号ライブラリ移行時に導入された変更にたどり着かせた。Coldcardはシード生成を、ボードのハードウェア乱数生成器に到達していたckcc.rng_bytes()から、gu.random.bytes()へ移した。

正しいインターフェースの裏にあった誤ったジェネレーター

デバイス設定では、Coldcardが別のハードウェアRNGラッパーを提供していたため、MICROPY_HW_ENABLE_RNG は0として定義されていた。ライブラリ側のガードは、それが有効かどうかではなく、マクロが定義されているかどうかを確認していた。マクロが存在していたため、ビルドは成功した。しかし関数呼び出しは、意図されたハードウェアソースではなく、MicroPythonのYasmarangソフトウェアフォールバックに解決された。

このフォールバックは、マイクロコントローラー固有の識別子の一部やタイマーレジスタを含む値から初期化されていた。これらの入力は変化しうるが、新しい暗号学的乱数ではなく、デバイスのメタデータとタイミング状態である。関連する状態と、それ以前のジェネレーター呼び出し回数が分かる、あるいは十分に制約されれば、結果のストリームは決定論的になる。

影響を受けたMk2およびMk3ファームウェアについて、Blockはこの経路を通じて暗号学的に生成された秘密が追加されていないと判断した。Coinkiteの暫定攻撃モデルは、実効探索空間を約40ビットと見積もっていた。Blockはより条件付きの分析を提示した。実際の探索コストは、デバイス識別子、タイマー、呼び出し履歴に関する知識に依存し、完全なエンドツーエンドのブルートフォース・ベンチマークを主張したわけではない。

後のMk4、Q、Mk5デバイスは、ジェネレーターにセキュアエレメントの材料を混ぜ込んでいたため、深刻度は下がったが、意図された安全マージンは回復しなかった。Blockは、固定されたフォールバック状態と呼び出し履歴に対して、ダイジェストの4バイトだけが再シード関数に到達し、その条件下では高々2^32の安全に識別可能な出力ストリームしか残らないとした。Coinkiteは、より広い攻撃仮定の下で、実効探索空間をおよそ72ビットと見積もった。数値は異なるモデルを表しているが、どちらの分析も運用上の結論は同じだ。後発機種は影響を受けたMk2およびMk3世代より露出が低いものの、それでも修正が必要だったということだ。

ハッシュでは失われたエントロピーを取り戻せない理由

Coldcardは、生成した32バイト値をウォレット素材に変換する前にハッシュしていた。それによって出力は統計的に一様に見えることがあるが、ハッシュは入力に存在しなかった可能性を生み出すことはできない。ジェネレーターが限られた候補値の集合しか生成できないなら、それらをハッシュしても候補シードの数は同じだけしか生まれない。

同じ原理はBIP-39のチェックサムにも当てはまる。これは転記ミスの検出には役立つが、秘密の乱数を追加するものではない。したがって、選択プロセスが予測可能であれば、見た目は有効な12語または24語のフレーズでも、暗号学的には弱い可能性がある。

オフラインのウォレットが空にされた仕組み

公開ブロックチェーンは攻撃者に価値あるものを与えた。それは検証の対象だ。Bitcoinアドレス、過去の送金で明らかになった公開鍵、ウォレットソフトウェアと共有された拡張公開鍵は、推測された秘密鍵やシードが対象ウォレットに属するかどうかを判断するのに役立つ。

あり得る攻撃としては、候補となるRNG状態を生成し、対応するシードとアドレスを導出し、それらをオンチェーンの入金済みアドレスと照合する。候補が一致すれば、攻撃者は所有者と同じ署名権限を持つことになる。実際のColdcardが攻撃者と通信する必要はどこにもない。

これが、コールドストレージと盗難が両立しうる理由を説明する。ウォレットはオフラインのままだったが、その秘密は別の場所で再現可能だった可能性がある。

正確な運用手順はなお不明だ。Blockによれば、実際のコストはデバイスUID、起動タイミング、過去のRNG呼び出し、鍵導出の作業量といった情報に依存する。研究者らは、勧告を公表した時点で、実証的な完全エクスプロイト試験を終えていなかった。攻撃者が必要な入力をどう取得・制約したのか、どのハードウェアを使ったのか、複数の関係者が関与したのかについて、権威ある説明は示されていない。

Coinkiteは、攻撃者が人工知能を使って過去のオープンソースファームウェアを調べた可能性を示唆した。しかし、その可能性は帰属の証拠ではない。コードは何年も公開されており、従来型のレビューでもAI支援レビューでも問題を見つけられた可能性がある。妥当な結論は、脆弱性はソースコードから発見可能だったということであり、AIが攻撃者の手法であると証明されたわけではない。

どのColdcardウォレットが影響を受けたのか

Blockは、脆弱なシード生成経路を2021年3月のファームウェア4.0.0にさかのぼらせた。Coinkiteのユーザー向け勧告では、影響を受けたMk2/Mk3のリリース範囲を4.0.1から4.1.9までの包括と定義している。後発デバイスについては、標準ファームウェア5.6.0以前のMk4およびMk5、あるいは1.5.0Q以前のQで生成されたシードも影響を受けると警告した。別のEdgeリリース系では、Mk4/Mk5に6.6.0X、Qに6.6.0QXが必要だった。

露出は、今日インストールされているファームウェアではなく、シードが生成された時点で使われていたファームウェアに従う。デバイスを更新しても、その後の生成動作は変わるが、既存のシードは変わらない。

Coinkiteは、特定のウォレットの露出を実質的に変えうる2つの独立した保護策を示した。会社によれば、元のシード作成時に少なくとも50回の公正で私的かつ独立したダイスロールを追加すれば、少なくとも128ビットの独立したエントロピーが供給される。また、強力で一意のBIP-39パスフレーズも、攻撃者が越えるべき別の障壁を作る。短いパスフレーズやデバイスPINは、同等の保護とは見なすべきではない。

マルチシグ構成も同様に慎重な扱いが必要だ。脆弱なColdcardキーがあるからといって、十分な数の独立して安全なデバイスの署名をなお必要とするウォレットが自動的に破られるわけではない。しかし、脆弱なシードだけで構成されたクォーラムは、同じ根本問題を維持しうる。保護は、マルチシグというラベルそのものではなく、独立して生成された安全な鍵の十分な閾値から生まれる。

Coinkiteの修正と移行の問題

Coinkiteは影響を受けた製品ライン全体にホットフィックスを展開し、適切な修正版ファームウェアがインストールされるまで置換用シードを生成しないようユーザーに伝えた。同社のガイダンスは最も重要な点で明確だ。ファームウェア更新では、欠陥のあるプロセスで作成されたシードは修復できない。

影響を受けたシードを持つユーザーは、修正版ファームウェア上でまったく新しいシードを作成し、新しいウォレットのフィンガープリントと受取アドレスを確認し、小額のテスト送金を行ったうえで、残りの残高を移行しなければならない。移行が完全に確認されるまでは、古いバックアップを利用可能なままにしておくべきだ。この手順を急ぐと、誤ったアドレス、不完全なバックアップ、またはパスフレーズの誤りによって新たな損失を招く可能性がある。

TAPSIGNER、OPENDIME、SATSCARDは別のコードベースを使っているため影響を受けない。この制約は重要だ。このインシデントは深刻だが、すべてのCoinkite製品やすべてのハードウェアウォレットが同じ脆弱性を共有していることを示すものではない。

Coldcardの不具合がコールドストレージにもたらす意味

「Cold」はウォレットとネットワークの関係を表す言葉だ。秘密鍵がどのように作られたか、ファームウェアが意図された実行経路に従ったか、バックアップとパスフレーズが安全に扱われたかを証明するものではない。

Coldcardの不具合は、コンポーネントレビューとシステム挙動の間のギャップを露呈した。意図されたハードウェアRNGのコードはファームウェアバイナリに存在していた。ソフトウェアのフォールバックも期待どおりの関数シグネチャを持っていた。以前のレビューでは良いコンポーネントが存在することは確認されたが、統合されたライブラリを通じて実際にウォレット生成へどの実装が到達していたかまでは確認されていなかった。

これはオープンソースセキュリティにとって厳しい教訓だ。公開コードは独立検証を可能にするが、公開そのものは継続的なエンドツーエンドレビューと同じではない。セキュリティ重要なビルドには、エントロピーが呼び出し元に届くことを確認し、意図したソースが利用できない場合はフェイルクローズし、ソースレベルの意図が統合後も維持されると仮定するのではなく、コンパイル済み成果物の挙動を測定するテストが必要だ。

ユーザーにとっての教訓は、自己保管をやめることではない。自己保管は、ハードウェアの真正性、ファームウェアの来歴、シードのエントロピー、パスフレーズの強度、バックアップの分離、マルチシグの多様性、欠陥が見つかった際に安全に移行する能力など、複数の層に責任を移すということを理解することだ。

最初の594 BTCは数分で消えた。その送金を可能にした条件は、5年以上存在していた可能性がある。この時間差こそが中心的な警告だ。コールドウォレットは何年も静かで、見た目には安全であり続けることがあるが、元のシードにある弱点は発見される時を待っている。

保管を手放さずにレバレッジでBitcoinを取引する

分散型パーペチュアル取引所は、もはやニッチな存在ではなくなった。CoinGeckoの2025年版Annual Crypto Industry Reportによると、DEXのパーペチュアル取引量は昨年346%増加して6.7兆ドルに達し、同期間に中央集権型取引所の建玉は20.8%減少した。トレーダーはオンチェーン派生商品に本格的な資本を投じており、その理由は単純だ。カウンターパーティリスクは現実であり、保管型の障害は起こり、検閲耐性は重要だからだ。

edgeXは、コントロールを犠牲にせずに市場アクセスを求めるトレーダー向けに構築された分散型パーペチュアル先物取引所だ。

トレーダーがBTCパーペチュアルにedgeXを選ぶ理由

  • KYCなし、障壁なし。ウォレットを接続するだけで、本人確認やアカウント承認なしに取引を開始できる。
  • 真のセルフカストディ。edgeXはオフチェーンの注文マッチングと、Ethereumで保護された検証可能なオンチェーン決済を組み合わせている。強制出金メカニズムにより、運営側がオフラインになっても資金はブロックチェーンから直接回収可能だ。
  • 厚い流動性、狭いスプレッド。edgeXは1ベーシスポイントのスプレッド内で1,000万ドルの市場深度を維持し、10万ドルを超える取引では0.1ベーシスポイント未満のスリッページを実現する。
  • 最大100倍のレバレッジ。ヘッジであれモメンタム取引であれ、トレーダーは自分のリスク枠組みに合わせてポジションを拡大できる。
  • 取引手数料100%還元。アクティブトレーダーは取引活動に応じて報酬を得ることができ、長期的に高頻度戦略の実質コストを下げられる。
  • 機関投資家グレードのインフラ。edgeXは1秒あたり最大200,000件の注文を処理し、マッチング遅延は10ミリ秒未満だ。

Bitcoinの相場観を実際の取引に活かす

資産の管理権を保持したまま、edgeXでBTC/USDCパーペチュアル先物を取引しよう。レバレッジは利益も損失も拡大するため、ポジションサイズ、清算距離、資金調達コストは引き続きリスク管理の重要な要素だ。

よくある質問

ハッカーはColdcardデバイスにリモートアクセスしたのですか?

影響を受けたデバイスへのリモートアクセスを示した権威ある調査はありません。報告されている手法は、弱体化した乱数生成プロセスから候補となるシードや秘密鍵をオフラインで再構成し、公開ブロックチェーン情報と照合するものです。

このインシデントでBitcoinの暗号化が破られましたか?

いいえ。脆弱性は、影響を受けたColdcardファームウェアにおけるウォレットシード生成に関するものでした。Bitcoinの基盤となる署名システムが暗号学的に破られたことは示されていません。

最新のファームウェアをインストールすれば、既存のウォレットは保護されますか?

修正版リリース上での今後のシード生成は保護しますが、影響を受けたファームウェアで作成されたシードを修復することはできません。Coinkiteは、新しいシードを生成し、置換ウォレットを慎重に確認したうえで資金を移すよう助言しています。

すべてのColdcardモデルが同じように脆弱だったのですか?

いいえ。影響を受けたMk2/Mk3ファームウェアは最も深刻な経路を使っていました。Mk4、Q、Mk5はセキュアエレメント由来のエントロピーを追加し、露出は低いと評価されましたが、Coinkiteは修正前の影響を受けたシードを、移行が必要なほど深刻だと位置付けました。製品、ファームウェア系統、シード作成日時のすべてが重要です。

1,815.75 BTCが確定した盗難額ですか?

いいえ。Galaxy Researchの3波分の観測推定は1,367.05 BTCでした。約448.7 BTCが4波目の可能性あるクラスターに関連していましたが、クラスターの分析中は一部の取引が保留または置換可能でした。合算値は暫定的なエクスポージャー推定であり、最終確定損失総額ではありません。