﻿---
title: "ウォレット認証"
description: "ウォレット認証は、指定された支出者がユーザーのトークンにtransferFromを呼び出せるオンチェーン許可です。署名との違い、無制限許可の持続、確認と取消しを説明します。"
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ウォレット認証

> 教育目的のみであり、投資助言ではありません。投資により損失が生じる可能性があります。

<a id="answer"></a>

## 直接回答

ウォレット認証（トークン承認）は、トークン所有者から1つの支出者アドレスへ与えるオンチェーンallowanceです。ERC-20のapprove(spender, amount)が記録し、支出者は残額内でtransferFromを呼べます。秘密鍵や他トークンの権限は渡しません。承認は状態変更取引、ログイン署名は通常オフチェーンです。ERC-2612のpermitは署名データで、所有者がガスを払わずにallowanceを作れますが、同じく認証です。ETHはERC-20 allowanceを使いません。トークン、支出者、金額、期間、チェーンを確認し、サイト接続を許可と混同しないでください。

<a id="mechanism"></a>

## 仕組み

1. ユーザーがapproveを送ります。0は残りなし、大きな値は無制限と表示されます。
2. 支出者は後でtransferFromを使います。コントラクトは残高とallowanceを確認し、通常は使用額だけ減らします。
3. allowance変更はオンチェーン遷移です。正の値同士の置換はmempoolで競合し得るため、必要なら確認済みのゼロ先行を使います。
4. ERC-2612 permitは署名メッセージです。トークン、chain ID、nonce、期限、支出者、金額を確認し、第三者送信を想定します。
5. 検証済み支出者と必要額だけを承認し、正確な呼び出しをシミュレーションしてreceipt、イベント、残高、allowanceを確認します。取消しは正しいネットワークで0を送り、確定転送は戻りません。

<a id="example"></a>

## 例

Aliceは100 USDCを持ち、検証済みルーターへ40を承認しました。最大40だけ使え、ETHや別トークンは対象外です。15を交換後は25が残ります。無制限なら後から入金したUSDCも危険なので、契約を確認し有限額を使い、不要時にapprove(router, 0)を送ります。

<a id="risks"></a>

## リスク

- 悪意ある、またはアップグレードされた支出者はallowance内の全トークンを使えます。
- 無制限承認は将来の入金も対象です。
- チェーン、コントラクト、アドレス、小数、calldataの誤りは危険な要求を隠します。
- 保留中の変更や取消しはtransferFromと競合し、確定した0でも実行済み転送を戻せません。
- permit署名は後から送信でき、サイト切断でも無効化されません。
- 非標準、手数料、リベース、停止中、callback型は異なることがあるため最終状態を確認します。

<a id="misconceptions"></a>

## よくある誤解

- **「ウォレット接続で支出権限が与えられる」。権限は承認、permit、確定取引から生じます。**
- **「ガス表示のない署名は安全」。リレイヤーが後で送信できます。**
- **「サイト切断で承認も取消し」。接続とオンチェーンallowanceは別です。**
- **「無制限なら直ちに全額を取られる」。実行呼び出し、残高、互換実装が必要ですが上限はありません。**
- **「シミュレーション成功で安全」。状態依存なのでチェーン、calldata、受取人、コード、receipt、残高を検証します。**

<a id="related"></a>

## 関連トピック

- [ERC-20トークン](/ja/crypto/erc20/)
- [ERC-20承認レース](/ja/crypto/erc20-approval-race-condition/)
- [ERC-2612のnonceと期限](/ja/crypto/erc2612-permit-nonce-deadline/)
- [Permit2署名リスク](/ja/crypto/permit2-signature-risk/)
- [取引シミュレーション](/ja/crypto/transaction-simulation/)

<a id="sources"></a>

## 参考資料

- [ERC-20: Token Standard](https://eips.ethereum.org/EIPS/eip-20) - Ethereum Improvement Proposals (参照日: 2026-08-22)
- [ERC-2612: Permit Extension for EIP-20 Signed Approvals](https://eips.ethereum.org/EIPS/eip-2612) - Ethereum Improvement Proposals (参照日: 2026-08-22)
- [Ethereum security and scam prevention](https://ethereum.org/security/) - Ethereum.org (参照日: 2026-08-22)

Source: https://wiki.fcontext.com/ja/crypto/wallet-approval/index.mdx
