ウォレットのアドレスとトークンコントラクト、追跡するのはどちら?
ウォレットのアカウントとトークンコントラクトは、どちらも0xで始まる場合があります。追跡に必要なアドレスを確認し、資産のコントラクトは別に記録しましょう。
公開アドレスでポートフォリオを追跡する場合は、保有資産を確認したいアカウントのアドレスを使います。 特定のトークンを識別したい場合に使うのが、トークンコントラクトのアドレスです。Ethereumでは、どちらも0xに40桁の16進文字が続く形なので、見た目だけでは役割を判別できません。
この記事はEthereumと、同様のアドレス形式を使うEVMネットワークを対象にしています。読み取り専用の識別手順なので、ウォレットの接続、送金、トークンのインポート、取引への署名は行いません。一次資料は2026年10月20日に確認しました。
一方はアカウントを、もう一方はトークンを指定する
ウォレットは、アカウントを管理するアプリや機器です。複数のアカウントが表示されることもあるため、「自分のウォレットアドレス」だけでは不十分です。どのネットワークの、どのアカウントでしょうか。
トークンコントラクトは、トークンのルールと残高記録を管理します。MetaMaskの説明でも、コントラクトと、自分のトークンを保有するアドレスは区別されています。トークンの詳細からコントラクトをコピーしても、追跡したいアカウントのアドレスにはなりません。
| 識別子 | 指定する対象 | 確認できること |
|---|---|---|
| 公開アカウントアドレス | あるネットワーク上のアカウント | このアカウントの保有資産は? |
| トークンコントラクトアドレス | あるネットワーク上のトークンコントラクト | 保有するのはどのトークン? |
| トランザクションハッシュ | 取引の記録 | この取引で何が起きた? |
アカウントAがトークンTを保有していると仮定します。アカウントAの保有資産を一覧にするなら、アカウントAから始めます。トークンTを調べるなら、そのコントラクトを別に記録します。この名称は説明用であり、実在するアドレスやテスト結果ではありません。
ERC-20規格では、この関係が明確です。balanceOf関数はアカウントのアドレスを受け取り、そのアカウントのトークン残高を返します。つまり「アカウントAにはトークンTがいくら記録されているか」という問いです。保有資産を理解するには、アカウントとトークンを別々に捉える必要があります。
アドレスの見た目だけでは分類できない理由
Ethereumのアカウント資料によると、外部所有アカウントもコントラクトアカウントも、接頭辞0xを含めて42文字のアドレスを持ちます。形式が同じなので、見た目では自分のアカウントとトークンコントラクトを区別できません。省略表示では、さらに情報が失われます。
「ウォレットかコントラクトか」という単純な分け方には、重要な例外もあります。ウォレットはスマートコントラクトのアカウントを管理できます。また、EthereumのEIP-7702では、外部所有アカウントもコードの実行を委任できます。コードやContractタブが表示されるだけで、アカウントの追跡には不適切だとは判断できません。
ここでは、取得元と文脈から役割を確認します。ウォレットのアカウント詳細は、選択したアカウントを示します。トークンのコントラクト詳細は、トークンを示します。見慣れた表示名も、エクスプローラーが検索文字列を受け付けたことも、この違いの証明にはなりません。
追跡したいアカウントを見つける
自分のウォレットを用意し、どのネットワークの保有資産を調べるか決めます。メインネットとテストネットに合ったエクスプローラーを使ってください。この記事では、異なるネットワークを一つの残高記録として扱いません。
- ウォレットで対象のアカウントを選びます。 公開アカウントの詳細や受取アドレスの画面を開きます。「受取」「アカウント詳細」などの表示名はウォレットによって異なります。トークンのインポート画面やコントラクト欄から始めないでください。
- 公開アドレスを省略せずコピーします。 アカウント名とネットワークも控えます。この確認にリカバリーフレーズや秘密鍵は使いません。
- ネットワークの公式資料からエクスプローラーを開きます。 公開アカウントアドレスを検索します。表示されたアカウントページの完全なアドレスを、途中の文字も含め、ウォレットの詳細と照合します。
- アカウントの保有資産を確認します。 トークン一覧から調べたい資産を探します。行が見つからない場合は、ネットワークとデータの対応範囲を確認します。アカウントをトークンコントラクトに置き換える理由にはなりません。
- 確認したアカウントアドレスを、公開アカウントに対応するトラッカーで使います。 貼り付けたら、保存前に全文を再照合します。トラッカーの対応ネットワークと資産の範囲は、別途確認する必要があります。
読みやすい名前を使う場合は、解決先の確認が一段増えます。ENS名からアドレスを確認するガイドで、該当するアドレスレコードを調べてからアドレスを選んでください。名前の所有者と、名前の参照先アカウントは異なる場合があります。
保有トークンのコントラクトは別に調べる
目的のチェーン上で対象のアカウントを開いたら、一つのトークン残高を調べます。EtherscanのToken Holdingsガイドでは、トークンのContract Addressと、アカウントの保有量であるQuantityが区別されています。他のエクスプローラーでは配置が異なる場合があります。
完全なコントラクトアドレスを別のメモにコピーし、発行元がそのネットワーク向けに公開する公式情報と照合します。名前、ティッカー、ロゴは表示上の手掛かりにすぎず、トークンの識別には不十分です。権威ある参照先と一致を確認できなければ、似た名前を選ばず、未識別のままにします。
具体的な識別例として、USDCとUSDC.eの違いのガイドではArbitrum One上のトークンコントラクトを比較しています。この確認は次の段階です。まず調べるアカウントを選び、その後で保有トークンを特定します。
小さな記録を作ると、二つの役割を混同せずに済みます。
| 記録 | 書き留める内容 |
|---|---|
| 追跡するアカウント | ネットワークと完全な公開アカウントアドレス |
| 調べるトークン | 同じネットワークと完全なトークンコントラクトアドレス |
| 根拠 | ウォレットのアカウント画面と発行元のコントラクト情報 |
| 未解決の項目 | 参照情報の不足、ネットワーク違い、対応範囲の不足 |
別の識別子をコピーしてしまったら
アカウント欄にトークンコントラクトをコピーした場合は、ウォレットで選択したアカウントの詳細に戻り、両方の値の取得元を比較します。エクスプローラーはコントラクトの残高や活動も表示できます。結果が埋まっているだけでは、自分のアカウントである証明にはなりません。
トランザクションハッシュをコピーした場合は、それを使って取引の記録を開きます。その後、ウォレットから対象のアカウントを改めて確認します。一つの取引には複数のアドレスが関わることがあるため、最初に表示されたものが自分のアドレスだと決めつけないでください。
アカウントが正しいのにポートフォリオの表示が不完全なら、アカウントアドレスを保ったまま、不足するネットワークや資産を別に調べます。トークンコントラクトに変更すると、検索対象そのものが変わります。確認の最後には、照合済みのアカウント記録と、必要に応じて別の照合済みトークン記録が残る形にしましょう。
よくある質問
ERC-20トークンごとに別のウォレットアドレスが必要ですか?
同じEthereumアカウントが保有する各ERC-20トークンは、同じアカウントアドレスで確認します。各トークンの残高は、それぞれ別のコントラクトに記録されます。どちらの記録にもネットワークを添えてください。同じ資産が別のチェーンでも対応しているという意味ではありません。
ウォレットのアカウント自体がスマートコントラクトの場合もありますか?
はい。ウォレットはスマートコントラクトのアカウントを利用できます。またEthereumでは、EIP-7702により外部所有アカウントもコードの実行を委任できます。コードやContractタブがあるだけでは、コピーしたものがトークンコントラクトだとは判断できません。ウォレットのアカウント詳細で確認してください。
公開アドレスをトラッカーに追加すると、所有者だと証明できますか?
いいえ。公開アドレスの追跡では、署名権限を管理している証明なしにアドレスを調べられます。形式が受け付けられたり残高が表示されたりしても、意図したアカウントを選べた証拠にはなりません。