Solana CLI で作成したシードフレーズを Phantom ウォレットにインポートしてもアドレスが一致しないのは、導出パス(derivation path)が異なるためだ。Phantom 側で CLI と同じ導出パスを指定すれば、元のアドレスが表示されるようになる。
なぜシードフレーズをインポートしたのにアドレスが違うのか

シードフレーズからウォレットアドレスが生成される仕組みには、導出パスというルールが深く関わっている。導出パスとは、シードフレーズから実際の秘密鍵を取り出すための「枝番」のようなものだ。同じシードフレーズを使っても、異なる導出パスを指定すれば、まったく別のアドレスが生成される。
Solana CLI(コマンドラインインターフェース)でバニティアドレスを作成した場合、導出パスは通常 m/44'/501'/0'/0' が使われる。一方、Phantom ウォレットがシードフレーズをインポートする際のデフォルトの導出パスは m/44'/501'/0' であることが多い。この違いによって、表示されるアドレスが変わってしまう。
要は、同じ「合言葉」からでも、どの小部屋を開けるかが違うために、別の金庫が開いてしまう状態だ。
Phantom で正しいアドレスを表示させる手順

Phantom ウォレットのUIでは、インポート時の導出パスを手動で切り替えられる。最新の Phantom 拡張機能またはモバイルアプリで、以下の手順を試す。
既存のウォレットを一度削除し、インポートし直す
Phantom に間違ったアドレスが登録されている場合、まずそのウォレットアカウントを削除する必要がある。設定画面から「アカウントの削除」または「ウォレットの削除」を選び、削除を実行する。この操作はブロックチェーン上の資産には影響しない。あくまで端末上の表示を消すだけだ。
インポート時に導出パスを切り替える
- Phantom の初期画面で「ウォレットをインポート」をタップする。
- シードフレーズ(12語または24語)を入力する。
- 次の画面に進むと、画面下部に「詳細設定」または「導出パス」といったオプションが表示される場合がある。ない場合は、上部に小さな歯車アイコンや「カスタムパス」のリンクを探す。
m/44'/501'/0'/0'を入力し、保存する。- インポートを完了すると、CLI で作成したアドレスが表示される。
Phantom のバージョンやデバイスによって UI の文言や導出パスの指定方法が異なることがある。上記の手順で導出パス入力欄が見つからない場合は、公式ドキュメントで最新の操作方法を確認する。
それでもアドレスが合わないときの確認ポイント

CLI で実際に使われた導出パスを再確認する
バニティアドレスを作成する際、solana-keygen grind コマンドなどを使った場合、明示的に --derivation-path を指定していなければデフォルトが使われる。しかし、もしカスタムパスを指定していたなら、その値を Phantom 側でも正確に入力しなければならない。
コマンドラインで実行した履歴を確認し、指定した導出パスをメモしておく。
シードフレーズの入力ミスを疑う
手書きのシードフレーズにスペルミスや順序の誤りがあると、当然ながら異なるアドレスが生成される。Phantom への入力時に、単語の間に余分なスペースが入ったり、似た単語(例: “tag” と “trap”)を取り違えたりしていないか、一字一句を確認する。
CLI から直接秘密鍵をエクスポートする方法

導出パスの指定がうまくいかない場合や、特定のバニティアドレスだけを Phantom で使いたい場合は、秘密鍵を直接インポートする方が確実だ。
CLI でキーペアを復元する
シードフレーズだけが手元にある場合、まず Solana CLI でキーペアを再生成し、秘密鍵をバイト配列として取り出す。
solana-keygen recover 'prompt://?key=0/0' -o recovered-keypair.json
上記のコマンドは、対話式でシードフレーズを入力し、導出パス m/44'/501'/0'/0' に対応するキーペアを recovered-keypair.json として保存する。なお、CLI のバージョンによって prompt:// スキームの動作が異なるため、最新の公式ドキュメントを参照する。
秘密鍵をPhantomにインポートする
生成された recovered-keypair.json には、JSON形式で秘密鍵のバイト配列が格納されている。Phantom ウォレットの「アカウントを追加」または「インポート」から、「秘密鍵」を選び、その配列を貼り付ける。すると、目的のバニティアドレスがそのまま表示される。
この方法なら導出パスの不一致に悩まされることはない。ただし、秘密鍵を扱う際は厳重に取り扱い、インポート後は端末からJSONファイルを安全に削除する。
よくある質問
導出パス m/44’/501’/0’/0′ と m/44’/501’/0′ の違いは何か
どちらも Solana の BIP44 標準に基づくが、末尾の /0' は「アカウントインデックス」の深さを示す。多くのウォレットは最初のアカウントを /0' として扱うが、CLI はデフォルトでさらに一段深い /0' を含むパスを使う。この階層の違いでアドレスが変わる。
Phantom で導出パスの入力欄が見つからない場合はどうするか
一部のバージョンでは、シードフレーズ入力後の画面に「詳細設定」という小さなテキストリンクがある。タップすると導出パスの選択肢が表示される。それでも見つからない場合は、Phantom のサポートページや最新のバージョンアップ情報を確認する。
インポート後に資産が表示されないのはなぜか
正しいアドレスが表示されていても、トークン残高がゼロと表示されるケースは珍しくない。これは単に Phantom がそのトークンを自動検出していないだけのことが多い。トークン一覧画面で「トークンを追加」を選び、該当するトークンのミントアドレスを手動で登録すれば残高が表示される。
CLI で作ったウォレットに資金を送ってしまったが、Phantom で操作できるか
資金はシードフレーズに紐づいているため、上記の手順で正しい導出パスを指定してインポートすれば、そのまま Phantom から送金やステーキングが可能になる。ブロックチェーン上の資産は、どのウォレットソフトを使うかに関係なく、秘密鍵さえ一致すれば操作できる。
この記事のポイント
- アドレス不一致の原因は、CLI と Phantom の導出パスが異なるため
- Phantom インポート時に導出パスを
m/44'/501'/0'/0'に設定すれば解決する - 導出パス入力欄がない場合は、秘密鍵を直接インポートする方法も有効
- シードフレーズのスペルミスや順序違いもアドレス変化の原因になる
- 資産が表示されないときはトークンの手動追加を試す

「エミリーズ・クリプト・インサイダー」のリサーチ担当として、暗号資産の現場で日々生まれる疑問や悩みを丹念に追いかける。
Reddit や海外フォーラムに寄せられる声を読み解き、「初心者がつまずきやすいポイント」「経験者でも見落としがちな落とし穴
」を一つずつ記事として整理している。
専門的な話を誰もが理解できる言葉に置き換えることに全力を注ぐ。情報の正確さと読みやすさの両立を信条としている。
