Ledgerでビットコインがデバイスに属さないエラーの原因と対処法

Ledger Liveがビットコインの残高を正しく表示しているのに「接続中のデバイスに属していません」といったエラーで送金できない場合、原因はパスフレーズ(25番目の単語)の設定差か、ビットコインの派生パスが合っていないことだ。正しいシードフレーズが残っていれば、Ledger Liveのアカウント種別に合わせてElectrumで接続し、資金を取り出せる。

なぜ「接続中のデバイスに属していない」と表示されるのか

なぜ「接続中のデバイスに属していない」と表示されるのか

Ledger Liveはアカウントごとにxpub(拡張公開鍵)を監視し、ブロックチェーン上の残高や取引履歴を表示している。送金やアドレス確認の際には、実際に接続中のデバイスが秘密鍵を使って署名を試みる。このとき、デバイスが生成するアドレスとLedger Liveが監視しているアカウントが一致しないと、「デバイスに属していない」というエラーになる。

要は、Ledger Liveは残高を「見ているだけ」の状態で、署名に必要な鍵がデバイス側に存在しないということだ。原因は主に3つに絞られる。パスフレーズの有無が違う、デバイス内のシードフレーズが違う、派生パスが違う、の3つだ。

まずパスフレーズ(25番目の単語)を確認する

まずパスフレーズ(25番目の単語)を確認する

最も見落としやすいのがパスフレーズだ。パスフレーズは24語のシードフレーズに追加する「25番目の単語」で、設定すると完全に別のウォレットが生成される。設定した覚えがなくても、Ledger本体の操作中に誤って有効化してしまうケースがある。

パスフレーズが有効な状態だと、デバイスはパスフレーズ込みの別ウォレットを導出する。一方、Ledger Liveにはパスフレーズなしの元のアカウントが表示されたままになる。これが「残高は見えるのに署名できない」状態の典型的なパターンだ。

確認方法は次のとおりだ。Ledger本体の「設定」から「セキュリティ」を開き、「パスフレーズ」の項目を選ぶ。ここで一時パスフレーズが設定されている場合は、解除して元のウォレットに戻れる。パスフレーズを設定していた場合、正しいパスフレーズを入力し直せば該当するウォレットが開く。

ビットコインの派生パスを確認する

ビットコインの派生パスを確認する

派生パス(デリベーションパス)とは、1つのシードフレーズから複数のアドレスを生成するための「経路」のようなものだ。同じシードフレーズでも、派生パスが違えば別々のウォレットになる。ビットコインでは主に4種類のアカウント種別が使われる。

アカウント種別アドレスの先頭派生パス
ネイティブSegWitbc1q ではじまるm/84'/0'/0'
SegWit3 ではじまるm/49'/0'/0'
レガシー1 ではじまるm/44'/0'/0'

Ledger Live上で該当のビットコインアカウントを開き、受け取りアドレスの先頭文字を確認する。それが bc1q ならネイティブSegWit、3 ならSegWit、1 ならレガシーだ。この種別がElectrumで選ぶ派生パスと一致していないと、空のウォレットが開いてしまう。

Electrumで正しい派生パスを選んで接続する手順

Electrumで正しい派生パスを選んで接続する手順

Ledger Liveでエラーが出て送金できない場合、Electrumなどの別のウォレットアプリからLedgerにアクセスすれば資金を回収できる可能性が高い。手順は次のとおりだ。

  1. Electrumを起動し、「新しいウォレットを作成」を選ぶ
  2. 「標準ウォレット」を選択して次へ進む
  3. 「ハードウェアデバイスを使う」を選択する
  4. Ledgerを選び、デバイスのロックを解除してビットコインアプリを開く
  5. Ledger Liveで確認したアカウント種別(ネイティブSegWit / SegWit / レガシー)を選ぶ
  6. ウォレットが開いたら残高が表示されるか確認する
  7. 残高が表示されれば、そのまま送金できる

もし1つ目の派生パスで残高が0だった場合は、ウォレットを作り直して別の派生パスを試す。3種類すべてを試しても残高が出なければ、デバイス内のシードフレーズ自体が違う可能性が高い。

シードフレーズをパソコンに入力した場合の対処

シードフレーズをパソコンに入力した場合の対処

トラブルシューティング中にシードフレーズをパソコンやスマートフォンに入力した場合、そのシードフレーズは侵害されたものとして扱う必要がある。キーロガーやマルウェアが潜んでいれば、いつ資金が盗まれてもおかしくない。

まず、そのシードフレーズからアクセスできる資産のうち、まだ移動できるものをすべて新しいウォレットへ移す。次に、新しいシードフレーズをLedger本体で生成するか、安全な環境で新しいソフトウェアウォレットを作成する。古いシードフレーズは二度と使わない。

該当のビットコインがまだブロックチェーン上に残っている場合も、正しい派生パスでアクセスできたら即座に新しいウォレットへ送金する。復旧と資産の保護は常にセットで考える。

よくある質問

Ledger Liveに残高が見えるのに送金できないのはなぜ?

Ledger Liveはブロックチェーン上の取引履歴と残高をxpubで監視している。表示はできても、署名に必要な秘密鍵がデバイス側から導出できない場合にエラーが出る。パスフレーズやシードフレーズ、派生パスの不一致が主な原因だ。

パスフレーズを設定した覚えがない場合も確認するべき?

確認するべきだ。Ledger本体の設定画面でパスフレーズが有効になっているかどうかを確かめるのが最も早い。無意識に有効化されていたケースは少なくない。設定されていなければ、次の原因として派生パスを調べる。

Electrumで残高が0と表示されたらシードフレーズが違うの?

必ずしも違うとは限らない。シードフレーズが同じでも、派生パスが違えば別のウォレットが開かれる。Ledger Liveで確認したアドレスの種別に合わせて、ネイティブSegWit・SegWit・レガシーの順に試してみる。

シードフレーズをパソコンに入力してしまったが、どうすればいい?

そのシードフレーズは侵害されたものとして扱い、アクセスできる資産を新しいウォレットへ即座に移動する。マルウェアに感染していないかパソコンをスキャンし、可能なら安全な端末で新しいシードフレーズを生成する。

Ledger Liveを再インストールすれば直る?

再インストールだけでは直らない。問題はソフトウェアの表示ではなく、デバイスが導出する鍵とアカウントの不一致にあるためだ。再インストール後もアカウントを追加し直す必要があり、同じデバイスなら同じ結果になる。

この記事のポイント

  • エラー「デバイスに属していない」は鍵の不一致が原因
  • パスフレーズの有無を最初に確認する
  • ビットコインの派生パスをLedger Liveで確認する
  • Electrumで正しい種別を選んで接続する
  • シードフレーズをPCに入力したら新ウォレットへ移す
共有:

コメントする

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)