SafeSeedをオフラインで使う: エアギャップセキュリティガイド
シードフレーズや秘密鍵を生成するときに取れる最も強力なセキュリティ対策は、過去に一度も、そして今後もインターネットに接続しないコンピューター上で行うことです。これを「エアギャップ」構成と呼びます。機密性の高い暗号情報とネットワークの間に、文字どおり空気の隔たりがある状態です。SafeSeedツールは完全オフラインで動作するよう設計されており、このガイドではエアギャップ環境の構築と運用手順を説明します。
safeseed.app のすべてのSafeSeedツールはオフラインで動作します。オンライン中にページをダウンロードし、鍵を生成する前に切断してください。
なぜオフラインにするのか?
シードフレーズや秘密鍵をインターネット接続されたコンピューターで生成すると、ツール自体が信頼できても、複数の攻撃経路が存在します。
接続されたコンピューター上の脅威
| 脅威 | 説明 | 発生可能性 |
|---|---|---|
| マルウェア/キーロガー | 画面内容、クリップボード、キーストロークを取得するソフトウェア | 中 |
| ブラウザ拡張機能 | ページ内容を読み取る悪意ある、または侵害された拡張機能 | 中 |
| DNSハイジャック | ツールの偽サイトへ誘導される | 低 |
| 中間者攻撃 | 転送中のページ内容を傍受・改ざんされる | 低(HTTPSの場合) |
| リモートアクセス | 画面共有、リモートデスクトップ、RATソフトウェア | 低 |
| サプライチェーン攻撃 | 侵害されたCDNや依存関係から悪意あるコードが配信される | 非常に低 |
| ハードウェアインプラント | ネットワーク到達前にデータを傍受する物理デバイス | 非常に低 |
エアギャップされたコンピューターは、ネットワーク由来の脅威をすべて排除します。仮にマルウェアがあっても、ネットワーク接続や物理アクセスなしに生成鍵を外部へ持ち出す手段がありません。
セキュリティレベルの考え方
必要なセキュリティレベルは人によって異なります。実務的な目安は次のとおりです。
| セキュリティレベル | 構成 | 想定用途 |
|---|---|---|
| 基本 | 通常のコンピューター、インターネット接続あり | 学習、テスト、ごく少額 |
| 強化 | 通常のコンピューター、生成前にネット切断 | 中程度の保有額($100-$10,000) |
| 高 | 専用オフラインコンピューター、未接続運用 | 大きな保有額($10,000+) |
| 最大 | エアギャップLive USB、専用プリンター、Faradayバッグ | 大口保有、機関利用 |
このガイドでは「高」と「最大」を扱います。
オプション1: Webページを保存する(最も簡単)
最も簡単な方法は、接続中にWebページを保存し、その後切断して使うことです。
手順
-
オンライン中に、使いたいSafeSeedツールへ移動します。
-
ページを完全保存します。
- Chrome/Edge:
Ctrl+S(Windows/Linux)またはCmd+S(Mac)、「Webpage, Complete」を選択 - Firefox:
Ctrl+SまたはCmd+S、「Web Page, complete」を選択 - Safari:
Cmd+S、「Web Archive」を選択
- Chrome/Edge:
-
USBドライブに保存します(最大限の安全性のため、内蔵ドライブではなく)
-
インターネットから切断します。
- Wi-Fiを無効化(ノートPCに物理スイッチがある場合はオフ)
- Ethernetケーブルを抜く
- Bluetoothを無効化
- 利用可能なら機内モードを有効化
-
ブラウザでUSBドライブ上の保存ファイルを開く
-
動作確認: テスト用のシードフレーズを生成。問題なく動けば準備完了です。
-
本番のシードフレーズ生成または鍵導出を実行
-
結果を紙または金属媒体に記録
-
ブラウザを閉じ、ブラウザデータをすべて削除
-
最大限の安全性のため、ブラウザデータと一時ファイルを消去するまでPCをシャットダウンし、インターネットに再接続しない
この方法の制限
- 保存ページにJavaScript依存関係がすべて含まれない場合がある(SafeSeedでは稀ですが可能性あり)
- 通常利用PCの内蔵ドライブに保存ページがキャッシュされる可能性がある
- 切断前にPCが侵害されていた場合、マルウェアが生成鍵を保持し、再接続時に外部送信する可能性がある
オプション2: 専用オフラインコンピューター(推奨)
保有額が大きい場合は、インターネットに一切接続しない専用PCを使ってください。
必要なもの
- コンピューター: 古いノートPCや安価な中古機で可。高性能は不要で、鍵生成の計算負荷は小さいです。
- USBドライブ: SafeSeedツールファイルをオフラインPCに移すため。
- プリンター(任意): USB接続のみ、ネットワーク非対応。紙ウォレット作成用。
セットアップ手順
ステップ1: オフラインPCを準備
既存PCを使う場合:
- OSをクリーンインストール(マルウェアが含まれる可能性のある既存OSを除去)
- インストール中・後ともにインターネット接続しない
- Wi-Fiカードがある場合は物理的に切断(可能ならWi-Fiモジュールを外す、またはBIOSで無効化)
- BIOSでBluetoothを無効化
新規購入PCの場合:
- 初期設定はネットワーク接続なしで完了
- OSセットアップ中の「Wi-Fiに接続」プロンプトはすべてスキップ
ステップ2: SafeSeedファイルを転送
通常の(インターネット接続)PCで:
- 各SafeSeedツールへ移動し、ページを完全保存
- 保存した全ファイルをUSBドライブへコピー
- 任意だが推奨: 保存ファイルのSHA-256チェックサムを計算
オフラインPCで:
- USBドライブを挿入
- ファイルをローカルドライブへコピー
- 任意: 手段があればチェックサムを検証
- USBドライブを取り外す
ステップ3: ツールをテスト
- オフラインPCのブラウザで各保存ツールを開く
- テスト用シードフレーズを生成
- テスト用アドレスを導出
- 期待どおりに機能することを確認
- テストデータは破棄(本番鍵ではないため)
ステップ4: 本番鍵を生成
- Seed Phrase Generatorを開く
- シードフレーズを生成
- 紙または金属に記録(Seed Phrase Generator Tutorial 参照)
- 必要ならAddress Generatorを開き、後でウォレット照合するアドレスを導出
- ブラウザを閉じる
- PCをシャットダウン
継続運用
- 使わないときは電源を切り、安全に保管
- 鍵生成・導出が必要なときだけ起動
- いかなるネットワークにも絶対に接続しない
- 定期的に、信頼できるソースからUSB経由でSafeSeedツールファイルを更新
オプション3: Live USB / Tails(最大セキュリティ)
最高レベルのセキュリティが必要なら、RAM上で完全動作しホストPCに痕跡を残さないLive USB OSを使って起動します。
Tails OSを使う
Tails は痕跡を残さない設計のプライバシー重視Linuxです。USBから起動し、全体がRAM上で動作し、シャットダウン時にメモリを消去します。
セットアップ
- 通常PCで tails.net からTailsをダウンロードし、署名を検証
- Tailsを書き込み: 公式TailsインストーラーまたはEtcherでUSBへ書き込む
- 別のUSBドライブに SafeSeedツールファイルを保存(オプション1参照)
Tailsで鍵生成する手順
-
Tails USBから起動:
- Tails USBを挿し、PCを再起動
- ブートメニューに入る(通常は起動時のF12/F2/Del)
- USBドライブを選択
- TailsのWelcome画面でネットワーク設定を行わない
-
ネットワークをすべて無効化(Tailsでは簡単です。どのネットワークにも接続しないだけでOK)
-
SafeSeedツールファイル入りの2本目のUSBドライブを挿入
-
Tails付属のTor BrowserでSafeSeedツールを開く
- Tor Browserを使っていても作業は完全オフラインです
- USBドライブ上の保存HTMLを開きます
-
シードフレーズを生成し、必要ならアドレス導出
-
結果を物理媒体に記録
-
Tailsをシャットダウン:
- USBドライブを取り外す
- Tailsはシャットダウン時にRAMを自動消去
- ホストPCに痕跡は残りません
Tailsの利点
- 全体がRAM上で動作し、ディスクへデータを書き込まない
- フォレンジック痕跡を残さない設計
- ホストPCの内蔵ドライブにマルウェアがあっても、Tailsは独自のクリーンOSで起動
- シャットダウン時にメモリ自動消去
- 十分に監査されたオープンソース
注意点
- TailsにはLinuxへのある程度の慣れが必要
- すべてのハードウェアと互換があるわけではない(特に新しいノートPC)
- TailsのTor Browserは強いセキュリティ設定のため、ローカルファイル操作に通常影響しないが設定調整が必要な場合がある
Ubuntu Live USBを使う
Tailsが難しい場合、標準的なUbuntu Live USBはより簡単な代替です。
- ubuntu.com からUbuntu Desktop ISOをダウンロード
- EtcherまたはRufusでUSBへ書き込み
- USB起動し、「Try Ubuntu」を選択(インストールしない)
- ネットワーク設定は行わない
- FirefoxでSafeSeedツールファイルを開く
- 鍵を生成して記録し、シャットダウン
Ubuntu LiveにはTailsのメモリ消去機能がないため、シャットダウン後に数分電源オフのままにしてRAMを自然減衰させてください(可能なノートPCならバッテリーを取り外して再装着)。
オフライン利用時のプリンターセキュリティ
エアギャップPCで紙ウォレットを作る場合、プリンターもセキュリティ境界の一部です。
推奨プリンター構成
- USB接続のみのプリンターを使用(Wi-Fi/Bluetooth/ネットワーク機能なし)
- 理想はシンプルなプリンター: スマート機能、クラウド接続、内部ストレージのない基本的なインクジェット/レーザー
- 永続ストレージ搭載機は避ける: 一部の最新機種は印刷ジョブを内部フラッシュに保存します。RAM処理のみの機種を選んでください。
- プリンターは専用化: 暗号資料の印刷専用にし、他用途に使わない
- 印刷後: 電源を入れ直して(オフ→オン)揮発メモリをクリア
低予算向けプリンター案
たまに紙ウォレットを印刷する程度なら、$30-50の基本USBインクジェットで十分で、永続ストレージもないことが多いです。クラウドアカウント必須のメーカー機(HP+、クラウド機能付きEpson EcoTankなど)は避けてください。
検証チェックリスト
本番運用の鍵を生成する前に、エアギャップ環境を確認してください。
ネットワーク分離
- Wi-Fiが無効(ソフト設定だけでなくハードウェアレベル)
- Ethernetケーブルが物理的に抜けている
- Bluetoothが無効
- 機内モードがオン(利用可能なら)
- セルラーモデムなし(該当するならSIMカードを抜く)
- 検証: ブラウザで任意サイトへアクセスできないことを確認
環境
- 画面を映す防犯カメラがない
- 他人に画面を見られない
- 画面録画・画面共有ソフトが動作していない
- 室内に音声アシスタントやスマートスピーカーがない(音読した単語を拾う可能性)
- 外から見える窓は覆ってある
ソフトウェア
- ブラウザ拡張機能を無効化(または新規ブラウザプロファイルを使用)
- 不要なアプリが起動していない
- OSがクリーンインストール済み、またはLive USB環境
- 保存したSafeSeedツールファイルが正しく開いて機能する
鍵生成後
- シードフレーズ/秘密鍵を物理媒体に記録した
- 物理媒体をすぐ安全な場所に保管した(出しっぱなしにしない)
- ブラウザタブを閉じた
- ブラウザ履歴とキャッシュを削除した
- PCをシャットダウンした(またはLive USBを抜いて電源オフ)
- Tails使用時はRAM消去が完了した
- SafeSeedファイル入りUSBを安全に保管した(復元可能なゴミ箱に捨てない)
アドレスのみをオンラインへ戻す(鍵は戻さない)
オフラインで鍵を生成した後、公開アドレスだけをオンライン機器に移す必要が出る場合があります(例: watch-onlyウォレット設定、受取用途)。
安全な方法
- 手入力する: 物理記録を見て、オンラインウォレットやブロックチェーンエクスプローラーに入力。最も安全です。
- QRコード読み取り: 紙ウォレットを作成している場合、公開アドレスのQRコードをスマホで読み取り。公開アドレスQRのみ読み取り、秘密鍵QRは絶対に読み取らない。
- 拡張公開鍵をUSBで転送: watch-only用途でxpub/ypub/zpubを移す必要がある場合、エアギャップ機でUSB保存して転送。拡張公開鍵だけでは資金は送金できません。
避けるべき方法
- 秘密鍵やシードフレーズをUSB・ネットワーク・その他デジタル媒体でオンライン端末に転送しない
- シードフレーズをスマートフォンで撮影しない
- 秘密鍵QRコードをオンライン端末で読み取らない
- シードフレーズをオンライン端末へ入力しない
上級編: SafeSeedソースコード検証
最も厳格なセキュリティを求める場合、オフライン利用前にSafeSeedツールのソースコードを検証できます。
検証手順
- 公開リポジトリからソースコードを取得(オンライン時)
- JavaScriptコードを確認し、ネットワーク呼び出し(
fetch,XMLHttpRequest,WebSocket,navigator.sendBeacon)の有無を調べる - 暗号ライブラリを確認: 既知で監査された実装(例:
bitcoinjs-lib,ethers.js, またはWeb Crypto APIの直接利用)か確認 - データ流出経路を確認:
localStorage,sessionStorage,document.cookie,IndexedDBへ書き込むコードを検索 - レビュー後、変更せずローカル実行
確認すべきポイント
// Red flags in source code:
fetch(...) // Any network request
XMLHttpRequest // Any network request
WebSocket // Any persistent connection
navigator.sendBeacon // Analytics/tracking beacon
localStorage.setItem // Persistent storage
document.cookie // Cookie manipulation
new Image().src // Potential data exfiltration via image pixel
SafeSeedツールの鍵生成・導出コード経路には、これらが含まれていないはずです。
よくある問題
問題: 保存ページがオフラインで動かない
原因: ブラウザの「名前を付けて保存」で、JavaScriptファイルやWeb Workerスクリプトを取りこぼすことがある。
解決策:
- 保存に別ブラウザを使う(Chromeの「Webpage, Complete」が比較的安定)
- ページ全体を自己完結型HTMLとして保存できる「SingleFile」拡張を使う
- コマンドラインで
wget --mirror --convert-links --page-requisitesを使って全アセットを取得
問題: QRコードがオフラインで生成されない
原因: QRコードライブラリが保存ページに含まれていない可能性。
解決策:
- 保存時に「Webpage, Complete」(「Webpage, HTML only」ではない)を選んだか確認
- 回避策として、QR読み取りではなくアドレス/鍵を手入力
問題: Live USBが起動しない
原因: Secure Boot、UEFI設定、またはハードウェア非互換。
解決策:
- BIOSでSecure Bootを無効化(通常Security設定内)
- UEFIとLegacyの両方のブートモードを試す
- 別のUSBポートを使う(USB 2.0はUSB 3.0より互換性が高い傾向)
- 別ブランドのUSBドライブを試す
問題: Live USBからプリンターが動かない
原因: Live USB環境にプリンタードライバーが不足している可能性。
解決策:
- 多くの基本USBプリンターはLinuxの汎用ドライバーで動作
- 認識されない場合は、よりシンプルな別モデルを試す
- 代替として、手書きで記録し、専用エアギャップPCで紙ウォレットを作成
FAQ
エアギャップ機のSafeSeedファイルは、どのくらいの頻度で更新すべきですか?
バグ修正や必要機能が含まれる新バージョンが出たら更新してください。ツールは標準規格(BIP-39、BIP-32、BIP-44)ベースなので、コア機能は頻繁には変わりません。更新ファイルは新規フォーマット済みUSBで転送してください。
スマートフォンをエアギャップ端末として使えますか?
スマートフォンは理想的ではありません。理由は、(1) 複数の無線(セルラー、Wi-Fi、Bluetooth、NFC)がありハードウェアレベルで完全無効化しにくい、(2) 多数のバックグラウンド処理がデータ保存・送信する可能性がある、(3) クリーン状態の検証が難しいためです。どうしても使う場合は、機内モードを有効化し、すべての無線を個別に無効化し、工場出荷状態へリセットした端末を使用してください。
専用PCの代わりに仮想マシンは安全ですか?
インターネット接続ホスト上の仮想マシン(VM)は、真のエアギャップにはなりません。ホストOSはVMメモリへアクセス可能で、ホストが侵害されていればVMは保護を提供しません。VMは分離には有用ですが、物理エアギャップの代替ではありません。
オフライン中にBIP-39単語を確認したくなったら?
単語がBIP-39ワードリストにあるか確認する必要がある場合、事前にワードリストを保存しておけます。英語BIP-39の全2,048語は公開されています。SafeSeedツールと同じエアギャップUSBにテキストファイルとして保存してください。
使い終わったエアギャップPCを安全に廃棄するには?
専用エアギャップPCを退役させる場合は、(1) セキュア消去ユーティリティ(DBAN等)で内蔵ドライブを消去、(2) 保存していた鍵価値に応じてドライブを取り外して物理破壊、(3) ドライブを除いた本体は安全に再利用・リサイクル可能です。
USBドライブ上のマルウェアでエアギャップPCは侵害されますか?
理論上は可能です。USB攻撃(BadUSBなど)は存在しますが、実運用では非常に稀で、標的型かつ高度な攻撃が必要です。対策として、(1) 新品USBを使う、(2) 既知ファイル(保存したSafeSeed HTML/JS)のみ転送、(3) 転送前にUSBをフォーマット、(4) USBデータブロッカーや書き込み保護SDカードの利用を検討してください。
Tailsは必須ですか?通常のオフラインPCで十分ですか?
インターネットに一度も接続していない通常のオフラインPCで、多くの利用者には十分です。TailsはRAM上でのみ動作し自動メモリ消去もあるため、ハードウェア上に痕跡を残しにくい利点があります。機関利用や高額資産用途では、標準オフラインPCより測定可能な改善が得られます。
電磁放射(TEMPEST攻撃)はどうですか?
TEMPEST攻撃は、コンピューターが発する電磁信号を傍受して表示情報を再構成する攻撃です。専用機材、近接距離、高度な専門知識が必要で、国家レベル脅威で主に問題になります。ほとんどの暗号資産ユーザーにとっては不要です。懸念がある場合は、エアギャップ環境をFaradayバッグやケージで囲ってください。
関連ガイド
- SafeSeed Tools Overview — すべてのツール概要とオフライン対応
- Seed Phrase Generator Tutorial — シードフレーズ生成(オフライン対応)
- Paper Wallet Creator Tutorial — 紙ウォレット作成(オフライン対応)
- Address Generator Tutorial — アドレス導出(オフライン対応)
- Key Derivation Tool Tutorial — 鍵パスを確認(オフライン対応)
- Seed Phrase Security Guide — シードフレーズ保護戦略の総合ガイド