無制限のトークン承認を取り消すには、対象ブロックチェーンの公式承認チェッカーを開き、正しいウォレットを接続し、spenderコントラクトとアローワンスを確認して、オンチェーンの取り消し取引を送信します。取り消しにはネットワーク手数料がかかり、そのアローワンスの将来利用を止めます。Webサイトの接続解除だけでは権限は消えません。
どの権限が危険なのか確認する#
ERC-20承認は、spenderコントラクトに対し、自分のアドレスからアローワンス上限までトークンを移動する権限を与えます。「無制限」は通常、トークン規格の最大値に近い上限を設定し、将来の取引ごとに承認し直す必要をなくすものです。
承認だけで自動的にトークンが移動するわけではありません。承認済みspenderが悪意を持つ、侵害される、危険な方法でアップグレード可能な場合にリスクが生じます。古いアローワンスは、アプリを使わなくなった後も長期間有効なことがあります。
NFT権限ではsetApprovalForAllが使われ、コレクション全体についてオペレーターへ移動権限を与える場合があります。すべての承認が1つのトークン量だけに影響すると考えず、権限の種類を確認してください。
正しいチェーンのチェッカーを使う#
承認はネットワークごとに別です。ウォレットアドレスが同じに見えても、Ethereumのアローワンスと、Base、Arbitrum、BNB Smart Chain、Polygon上の承認は別の記録です。
確認済みドメインから開いたブロックエクスプローラー、または信頼できるエコシステム情報源が案内する実績ある承認管理ツールを使います。Ethereum.orgはEtherscanのToken Approval CheckerとRevoke.cashを案内しています。依頼していないメッセージに含まれる承認用リンクは避けてください。
接続前に次を確認します。
- ウォレットに表示されたネットワーク。
- 確認対象のウォレットアドレス。
- トークンコントラクト。
- spenderコントラクト。
- 現在のアローワンスと最後に使った状況。
アローワンスを1件ずつ取り消す#
身元不明のspender、利用を中止したアプリに関連するコントラクト、価値の高い残高を対象にするアローワンスを優先します。取り消しを選び、ウォレットの確認画面を読み、取引がトークン移動や別権限の付与ではなくアローワンス変更であることを確認してください。
取り消し取引がブロックへ取り込まれるまで、アローワンスは変わりません。手数料を支払えるだけのネットワークのネイティブ資産を残してください。確定後、チェッカーを更新し、アローワンスが0または削除済みになったことを確認します。
Uniswapは、取り消しはネットワーク費用がかかるオンチェーン取引であり、dappの接続解除とは異なると説明しています。次回の正規スワップでは、新たな承認が必要になる場合があります。
取り消しで修復できないことを知る#
取り消しは、その特定権限を使った将来の支出を防ぎます。完了済みの送金を戻したり、盗まれた資産を回収したり、漏えいしたシードフレーズを守ったりはできません。悪意ある署名先やドレイナーが複数の権限を持つ場合、1つだけ消しても別の経路が残ります。
シードフレーズ、秘密鍵、署名端末まで侵害された可能性があるなら、新しいウォレットを作り、残りの資産を移します。既知のアローワンス1件だけが危険なら、最近の活動と他の承認を完全に確認したうえで、取り消しだけで十分な場合があります。
無制限承認を管理された露出へ置き換える#
画面で選択できる場合は、予定する取引に必要な金額だけを承認します。未知のプロトコルには残高を限定した操作専用ウォレットを使ってください。1回限りの操作を終えた後や、プロトコルがセキュリティ事故を公表した際にアローワンスを確認します。
少額アローワンスも、spenderの確認に代わるものではありません。悪意あるコントラクトは承認額を奪えます。また、承認を繰り返すと手数料と署名機会が増えます。
よくある質問#
承認を取り消すとトークンは移動しますか?
いいえ。通常の取り消しはトークンコントラクトに記録されたアローワンスを変更します。偽の取り消し画面は別の要求を出す可能性があるため、取引詳細を確認してください。
取り消しにガス代がかかるのはなぜですか?
アローワンスはブロックチェーンの状態です。更新にはネットワーク取引が必要なため、ネイティブ手数料資産が必要です。
ウォレットを接続せずに取り消せますか?
公開アドレスだけでアローワンスを確認できますが、変更にはそのウォレットを支配する鍵の署名が必要です。
すべての承認を取り消すべきですか?
不要な権限を削除し、不明または無制限のアローワンスを詳しく確認してください。使用中のアプリは再承認が必要になるため、見慣れない取引を大量に盲目的に署名せず、露出額に応じて優先順位を付けます。
情報源#
- Ethereum.org: Revoke Smart Contract Access
- Uniswap: How to Revoke a Token Approval
- Ethereum.org: Scam Help and Reporting
リスクに関する注意: 承認管理ツールではウォレット署名が必要です。取引を送信する前に、ドメイン、チェーン、トークン、spenderを確認してください。
編集方針
本記事は教育目的で、信頼できる情報源に基づいています。セキュリティ対策、取引所のルール、法的要件は変わるため、重要な操作の前に公式情報を確認してください。