﻿---
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>

## 直接答案

錢包授權也叫代幣核准，是持有人給一個支出方地址的鏈上 allowance。ERC-20 的 approve(spender, amount)記錄額度，支出方可在餘額內呼叫 transferFrom；不會交出私鑰或其他代幣權限。核准改變鏈上狀態，登入簽名通常是鏈下訊息。ERC-2612 permit 是合約可提交的簽名資料，持有人不用支付該筆 gas，但仍是授權。ETH 不使用 ERC-20 allowance。核對代幣、支出方、金額、期限和鏈；連接網站不是支出許可。

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

## 運作方式

1. 使用者向代幣合約送出 approve；0 表示沒有剩餘額度，大值常顯示為無限
2. 支出方稍後呼叫 transferFrom；合約檢查餘額和 allowance，轉移並通常減少額度
3. 修改 allowance 是鏈上轉換；正值替換可能在 mempool 競態，必要時採用確認後先歸零流程
4. ERC-2612 permit 是簽名訊息，檢查代幣、chain ID、nonce、deadline、支出方和金額，其他人可以提交
5. 只核准已驗證支出方和所需金額，模擬呼叫並檢查 receipt、事件、餘額和 allowance；在正確網路用 0 撤銷，已確認轉帳無法撤回

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

## 例子

Alice 有 100 USDC，給已驗證路由核准 40。它最多花 40，不能花 ETH 或其他代幣；兌換 15 後通常剩 25。無限核准也涵蓋未來存入，因此應核驗合約、使用有限額度，不需要時送出 approve(router, 0)。

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

## 風險

- 惡意或升級後的支出方可使用 allowance 覆蓋的全部代幣
- 無限核准也涵蓋未來存入資金
- 錯誤的鏈、合約、地址、小數位或 calldata 會掩蓋危險請求
- 待處理變更或撤銷可能與 transferFrom 競爭；確認的 0 不逆轉已執行轉帳
- permit 簽名可稍後提交；中斷網站連線不會使其失效
- 非標準、收費、rebasing、暫停或 callback 代幣可能行為不同，應檢查最終狀態

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

## 常見誤區

- **「連接錢包就授予花費權限。」真正權限來自核准、permit 或確認交易**
- **「不顯示 gas 的簽名安全。」relayer 可稍後提交**
- **「中斷網站就撤銷核准。」連線狀態與鏈上 allowance 分開**
- **「無限額度能立即取走全部。」仍需呼叫、餘額和相容實作，但沒有金額上限**
- **「模擬成功證明安全。」仍要核對鏈、calldata、接收方、程式碼、receipt 和餘額**

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

## 相關主題

- [ERC-20 代幣](/zh-tw/crypto/erc20/)
- [ERC-20 核准競態](/zh-tw/crypto/erc20-approval-race-condition/)
- [ERC-2612 的 nonce 與 deadline](/zh-tw/crypto/erc2612-permit-nonce-deadline/)
- [Permit2 簽名風險](/zh-tw/crypto/permit2-signature-risk/)
- [交易模擬](/zh-tw/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/zh-tw/crypto/wallet-approval/index.mdx
