ビットコインウォレットを復元する方法
古いビットコインにアクセスできなくなってしまいましたか? パスワードを忘れてしまった、シードフレーズの一部を失くしてしまった、あるいは何年も前にウォレットファイルを削除してしまった場合でも、このガイドではビットコインウォレットの復元方法を詳しく解説しています。このガイドは、自動生成されたものではなく、この分野を専門とする専門家たちが執筆したものです。
多くのビットコイン保有者は、何年も前にコインを購入したことはぼんやりと覚えているものの、どこから手をつければよいのか見当もつきません。幸いなことに、ビットコインウォレットが本当に失われてしまうことはめったにありません。ほとんどの場合、コインはブロックチェーン上に安全に保管されており、単にパスワードを忘れてしまったり、シードフレーズが乱れてしまったり、あるいはもう使わなくなったコンピューター上のウォレットファイルの中に眠っているだけなのです。ビットコインウォレットを復元するために、何かを「ハッキング」する必要はほぼありません。自分が何を持っているかを特定し、欠けているたった一つの要素に対処すればよいのです。
ここ数年に出版された復旧ガイドのほとんどはAIによって生成されたもので、論理が曖昧で手順も不完全です。このガイドは、2017年からウォレットの復旧を手がけてきた専門チームが手書きで作成したものです。最も手っ取り早い最初の対応は、メール内で「ビットコイン」という単語を検索することです。過去の取引所の受領書、ウォレットのバックアップ、設定メールなどは、どのウォレットを使用していたかを特定するための最良の手がかりとなります。
まず、自分がどのビットコインウォレットを持っていたかを確認してください
これが最も重要なステップですが、多くの人がこのステップを省いてしまいます。復旧方法はウォレットごとに全く異なりますので、何よりもまず、どのソフトウェアやデバイスにコインが保管されていたのかを確認してください。次の点を自問してみてください:
- ビットコインを購入または移動したのは、おおよそ何年頃ですか?2011年から現在にかけて、ウォレットの形式は大きく変わりました。
- それは、コンピューター上のプログラム(Bitcoin Core、Electrum、Armory、MultiBit)、ウェブサイトやアプリ(blockchain.info / blockchain.com)、スマホ用ウォレット、それともハードウェアウォレット(Trezor、Ledger)のどれでしたか?
- まだどのようなバックアップが残っていますか?ドライブ上のファイル、紙に書かれた一連の文字、印刷した秘密鍵、それとも単なる確認メールだけでしょうか?
ウォレットが判明すれば、そのウォレットが残したファイルを見つけ出し、適切な復元方法を選択することができます。
ファイルまたはバックアップからウォレットを特定する
各ウォレットは、ディスク上に識別可能な痕跡を残します。この表を参考にして、お手持ちのウォレットと照らし合わせてください:
| 財布 | ファイル/バックアップ | 必要なもの |
|---|---|---|
| ビットコイン・コア | wallet.dat | ファイルとパスワードのヒント |
| エレクトラム | default_wallet(拡張子なし) | ファイルとパスワード、またはElectrumのシード |
| MultiBit Classic HD | .wallet+.key/.wallet.aes | ファイルとパスワード |
| 武器庫 | .wallet | ファイルとパスフレーズ |
| ビットコインウォレット(Schildbach、Android) | バックアップの拡張子が.bin | バックアップ+パスワード |
| blockchain.info / blockchain.com | 15~25語のバックアップ、またはウォレットID | ウォレットID + 1つ目のパスワード/2つ目のパスワード |
| Trezor / Ledger | 12/24語のシード(+オプションのパスフレーズ) | シード + 宛先アドレス |
知っておくと役立つことがいくつかあります。 もし、先頭が「U2」で終わり、末尾が「=」で、文字数が約240文字のテキストファイルを見つけた場合、それはOpenSSLのAESで暗号化されたブロブです。パスワードさえ分かれば、多くの場合、無料ツールのBTCRecoverを使って復号できます。また、Electrumは独自のシード形式を採用しており、Bitcoin CoreやTrezor(BIP39)とは互換性がありません。Electrumのシードが他の環境で復元できるとは限らない点に注意してください。
ビットコインウォレットを復元するために必要なもの
真の回復には、3つの要素が不可欠です。それぞれの要素が多ければ多いほど、成功の可能性は高まります:
- 暗号化されたウォレットファイル、またはシードフレーズ。これらは鍵が格納されているコンテナです。これらがなければ――公開アドレスのみを持っている場合――誰であっても復元は不可能です。
- パスワードに関するヒント。文字数、数文字、使用した形式、あるいは他の場所で再利用した以前のパスワードなど。たとえ大まかな記憶であっても、すべてが変わってしまう。
- 宛先アドレス。そのウォレットに属していることがわかっている受信アドレスがあれば、候補が正しいかどうかを即座に確認できます。
ビットコインのパスワード復旧は実際にはどのように行われるのか
ウォレットには、パスワードそのものは決して保存されません。ウォレットには暗号化された鍵が保存されており、パスワードはその鍵を解除するための値を導き出すものです。復旧とは、そのパスワードを見つけ出すことを意味します。鍵自体が直接攻撃されることは決してありません。
ありとあらゆる組み合わせを試すという単純なアプローチは、ごく短いパスワード以外では全く役に立ちません。実際の復元は「ヒント」に基づいて行われます。つまり、ユーザーが覚えている情報をもとに、マスクやルールを用いて対象を絞り込んだ候補リストを作成し、それをhashcatやBTCRecoverといったGPUツールに投入して、ウォレットに対して一つずつテストを行い、復号に成功するまで試行を繰り返します。例えば、wallet.datはハッシュ値に抽出され、hashcatのモード11300を用いて攻撃が行われます。
驚くほど多くの「間違った」パスワードは、実際には正しいものですが、入力ミスによるものです。私たちは日常的に、0を Oと書き間違えたもの、1を lや Iと書き間違えたもの、あるいは特殊文字、キーボード配列の入れ替え、Unicodeの正規化の不一致が原因で認証に失敗したパスワードを修正しています。専用のツールが、こうしたバリエーションを自動的に試行します。
Bitcoin Coreによくある落とし穴:Bitcoin Coreが実行中の状態でwallet.datを移動させると、データベースが乱れてしまい、正しいパスワードを入力しても空の状態に見えることがあります。これは復元可能な状態ですので、コインが失われたと決めつけないでください。
紛失または一部しか残っていないシードフレーズを復元する
バックアップが単語のリストである場合、その順序が重要になります。12語または24語からなるニーモニックは、記述された正確な順序でしか秘密鍵のツリーを再構築できません。標準的なシードにはチェックサムも含まれており、これが部分的な復元を可能にしています。つまり、少数の単語が欠落していたり判読不能であったりする場合でも、既知のアドレスに対して有効な組み合わせを試し続けることで解決できます。
単語が欠落している以外に、よく起こる問題として2つあります。1つは単語は正しいものの順序が間違っている場合、もう1つは間違った派生パスでウォレットを検索してしまう場合です(そのため、インポート後に資金が消えてしまったように見えてしまいます)。シード自体が無傷であれば、どちらも解決可能です。もし追加の秘密の単語(パスフレーズ、いわゆる「25番目の単語」と呼ばれることもあります)があれば、シードに加えてそれを用いた別の検索が可能になります。
ウォレットファイルが削除された場合、またはドライブが故障している場合
ファイルがなくなっても、ウォレットがなくなったのとは異なります。回転しているハードドライブ上では、削除されたデータやフォーマットされたデータでさえ、上書きされるまでは通常残っています。無料ツールの「pywallet」を使えば、ディスク全体をスキャンしてウォレットファイルや散在する秘密鍵を探し出すことができ、それだけで「失われた」wallet.datを取り戻せる場合が少なくありません。
ドライブがマウントできない場合、スマートフォンが動作しなくなった場合、あるいはメディアに物理的な損傷がある場合は、フォレンジック作業が必要となります。つまり、デバイスのイメージを作成し、そこからウォレットを抽出する作業です。これは当社で社内対応している作業です。動作しなくなったハードドライブからビットコインを復元する方法については、当社のガイドをご覧ください。ただし、1つ注意すべき点があります。SSDの場合、TRIMコマンドによって削除されたデータが完全に消去されてしまう可能性があるため、SSDからの削除済みファイルの復元は、ハードドライブの場合に比べてはるかに信頼性が低くなります。
自分でやるか、回収サービスに依頼するか
技術に詳しく、パスワードをしっかりと覚えているのであれば、多くの場合、ビットコインウォレットを自分で復元することができます。主な無料ツールとしては、pywallet(ディスクおよびファイルのスキャン)、BTCRecover(多くのウォレットタイプに対応したパスワードおよびシードの復元)、hashcat(GPUによるパスワード解読)などがあります。誰かに依頼して料金を支払う前に、まずはこれらのツールを試してみてください。
パスワードの組み合わせが膨大である場合、ウォレットが破損している場合、保存メディアが故障している場合、あるいは資産価値が高すぎてミスが大きな損失につながる場合は、専門のサービスを利用してください。その際は、自身を守るために注意してください。正規の復旧業者は「復旧できなければ料金は発生しない」という方式を採用しており、 決して前払いを要求することはありません。 Telegram、Facebook、Instagram、Quora、Xなどで、自ら「復旧サービス」と名乗り、最初にDMを送ってくる者や、100%の成功を保証する者は、すべて詐欺師です。盗まれたコインや誤送されたコインは、誰にも取り戻すことはできません。それとは異なる主張をする「復旧」の申し出は、すべて無視してください。
よくある質問
公開鍵やアドレスしか持っていない場合、ビットコインウォレットを復元することはできますか?
いいえ。公開鍵やアドレスだけでは、資金を管理する秘密鍵を逆算することはできません。ビットコインウォレットを復元するには、暗号化されたウォレットファイルまたはシードフレーズに加え、パスワードに関する手がかりが必要です。もし手元にあるのが公開アドレスのみである場合、正当な手段でできることは何もありません。
紛失したBitcoin Coreのwallet.datのパスワードは復元できますか?
通常はそうです。Bitcoin Coreは、wallet.dat内に暗号化されたマスターキーを保存しています。私たちはそのハッシュ値を抽出し、ユーザーから提供されたヒントに基づいて生成されたパスワード候補をそのハッシュ値と照合し、キーが復号された瞬間に確認を行います。秘密鍵そのものに対してブルートフォース攻撃が行われることは決してありません。
パスワードは一部しか覚えていません。それで大丈夫ですか?
それが最良の出発点です。部分的な記憶、長さ、そして既知の断片を活用することで、手探りの総当たり検索ではなく、的を絞ったマスクやルールを構築することができ、それによって不可能だった検索が実現可能なものとなるのです。
シードフレーズの単語をいくつか忘れてしまいました。ウォレットは復元できますか?
よくあります。標準的なシードにはチェックサムが組み込まれており、単語の順序も固定されているため、欠落や転記ミスのある単語が少数であれば、既知のアドレスに対して有効な組み合わせを試し、復元することが可能です。提供いただける単語や構造が多ければ多いほど、成功の可能性は高くなります。
私のウォレットファイルは、削除またはフォーマットしてしまったドライブに保存されていました。もう消えてしまったのでしょうか?
必ずしもハードドライブに限った話ではありません。削除やフォーマットされたデータは、上書きされるまで通常は残っており、pywallet のようなツールを使えば、ディスクをスキャンしてウォレットファイルや鍵を検出することができます。SSD の場合、TRIM コマンドによって削除されたデータを完全に消去できるため、結果はケースバイケースです。弊社では、何かをお約束する前に、事前に評価を行います。
ビットコインウォレットの復旧にはどれくらいの費用がかかりますか?
当社の回収手数料は成功報酬制です。つまり、回収に成功した場合にのみ、回収額の一定割合を手数料としてお支払いいただき、失敗した場合は一切請求いたしません。資金の回収にあたり、前払いを求めることは決してありません。
自分のビットコインウォレットで困っていませんか?
お使いだったウォレットの種類と、覚えていることを教えてください。24時間以内に正直な評価をお知らせします。アクセス権を取り戻せた場合のみ、料金をお支払いいただきます。
