代币授权让合约可以替你动用代币,而且不会自动过期,合约被黑或本身恶意时,额度内的资产可能被转走。可以用 Revoke.cash 或区块浏览器查看和撤销,撤销要付 Gas。
代币授权是什么,为什么有风险
代币授权是你允许某个智能合约替你动用代币。它的主要风险是长期有效:几年前用过的项目后来被攻破,当年的授权仍然可能被利用。要查看或撤销,可以用 Revoke.cash 或 Etherscan 这类区块浏览器,撤销是一笔链上交易,需要付 Gas。
DEX、借贷协议和 NFT 市场都依赖授权工作。没有它,合约无法替你把代币换走。Revoke.cash 的说明指出,合约被黑或本身恶意时,你的代币可能被盗,并以 2023 年 4 月的 SushiSwap 漏洞事件为例。
断开钱包连接,等于取消授权吗
不等于。断开只结束网站和钱包的连接,授权记录仍然在链上,下图第一段回答的就是这个问题。第二个问题 When will the contract permission expire 的回答是:合约权限没有到期日,几年后仍然可以使用。

项目早就不用了,旧授权还有风险吗
有,而且已经停运的项目并不更安全。Revoke.cash 的漏洞列表里有不少这样的案例,下图每张卡片都标着日期和被盗金额:

- Lien Finance:Revoke.cash 称这个 2020 年的协议早已被弃置,合约却仍在运行且从未修补。2026 年 7 月,流动性提供者授权给交易池的 USDC 被盗约 54.2 万美元。
- BarnBridge:Revoke.cash 称项目已在 2023 年关闭。2026 年 7 月,攻击者买下废弃项目的治理控制权,从仍留有授权的钱包里盗走约 77.7 万美元 USDC。
两起的共同点是项目已经没人维护,用户当年留下的授权却还有效。
哪些授权最容易让人上当
授权有四种形式,影响范围和能不能在列表里看到都不一样:
| 形式 | 怎么产生 | 影响范围 | 能否在授权列表看到 |
|---|---|---|---|
同质化代币 approve | 链上交易,设定额度 | 该代币,直到额度用完 | 能 |
NFT setApprovalForAll | 链上交易 | 该系列的所有 NFT | 能 |
| Permit 签名(EIP-2612) | 链下签名,不花 Gas | 签名指定的代币和数量 | 上链激活后才能 |
| Permit2 | 先给 Permit2 合约一个授权,再签子授权 | 可一次覆盖多种代币 | 上链后能,两层都要查 |
后两种特别容易上当。Permit 签名发生在链下,钱包未必像链上授权那样弹出警告,看起来就像一次普通的网站登录。Revoke.cash 也看不到还没上链的签名,骗子往往很快就会把它激活。Permit2 能一次覆盖多种代币,用户更难看懂自己在批准什么。
另外还有两种变体。假挂单是诱导你在 NFT 市场上签署 0 ETH 的出售;伪装转账是把直接转走资产的交易起名叫 Security Update、Claim 或 Claim Rewards,让你以为只是在领取或升级。
无限授权最多会损失多少
假设你钱包里有 5,000 枚某代币,授权给一个合约。如果这个合约后来被攻破:
| 授权额度 | 当时余额 | 合约最多能转走 |
|---|---|---|
| 无限 | 5,000 | 5,000 |
| 无限 | 之后充值到 20,000 | 20,000 |
| 200 | 5,000 | 200 |
| 0(已撤销) | 5,000 | 0 |
注意第二行:无限授权的风险金额跟着余额走,以后存入同一地址的同种代币也暴露在内。ethereum.org 建议避免无限授权,每次只批准这笔交易需要的数量,有些钱包允许你手动调低额度。代价是下次使用时要重新授权,再付一次 Gas。
如何查看和撤销代币授权
用 Revoke.cash
下图是 Revoke.cash 首页的示例列表,并不是某个真实钱包。每行是一个“代币 + 被授权合约”,最右边是 Revoke 按钮;第一行标着 Exploited,撤销后显示 Revoked。查自己的地址时,实际页面的列可能更多,比如额度和更新时间。

- 输入钱包地址或 ENS。只想查看的话,不需要连接钱包。
- 选择要检查的网络。每个授权只对应一条网络上的一个代币,每条链都要查一遍。
- 看列表。怀疑刚被骗时按“最新到最旧”排序,也可以按授权对象的地址搜索。
- 连接钱包,点 Revoke 撤销。如果以后还要用这个合约,可以点铅笔图标把额度调低。
- 在钱包里确认交易并支付 Gas,等几分钟后刷新,确认它已从列表消失。
ethereum.org 提醒,钱包和工具网站要选同一条网络,否则看不到相关合约。Revoke.cash 称支持 80 多个网络,你的网络是否在内,请看它的网络列表。
用区块浏览器
Etherscan 上的路径是:More 菜单进入 Token Approvals,输入地址,选择 ERC20、ERC721 或 ERC1155,打开 Show all approvals,再点 Revoke,撤销时要连接钱包。菜单名称可能调整,以页面为准。其他链用对应的浏览器,流程类似。
无论用哪个工具,都要从自己保存的书签进入。Revoke.cash 的官网地址是 revoke.cash。搜索结果和私信里的“撤销工具”链接,本身可能就是钓鱼页面。
撤销授权要花多少钱
2026 年 11 月初,Revoke.cash 的 FAQ 写的是查看和逐个撤销只需付网络 Gas,免费用户批量撤销额外收 1.50 美元,部分网络有赞助方承担这笔费用。
撤销本身的 Gas 用量以钱包预估为准。假设用量 50,000,基础费 10 gwei,优先费 1 gwei,ETH 价格 3,000 美元,一次是 50,000 × 11 = 550,000 gwei,即 0.00055 ETH,约 1.65 美元。清理 10 个就约 16.5 美元。这些数字只是举例,计算方法见 Gas 费怎么估算。
哪些授权该撤,哪些可以留
可以按看到的情况来处理:
| 看到什么 | 怎么处理 |
|---|---|
| 不认识的授权对象 | 撤 |
| 刚在可疑网站上操作过 | 立刻撤,骗子通常动作很快,晚了也要撤,防止之后再被利用 |
| 很久不用的项目 | 撤 |
| 常用项目的无限授权 | 考虑调低额度 |
| 常用项目的小额授权 | 可以保留,定期复查 |
| 测试网上的授权 | Revoke.cash 称一般不必撤,测试币没有价值,也不影响主网 |
撤销不会影响已有的质押、流动性或借贷仓位。ethereum.org 的指南说明,你的仓位和收益不受影响,也不会因为撤销而损失资金。Revoke.cash 补充,要往同一仓位追加资金时需要重新授权。实在分不清时,ethereum.org 的说法是可以全部撤销,以后用到再重新授权。
撤销授权能追回被盗的币吗
不能。撤销是预防工具,有几件事它做不到:
- 追不回资金。 Revoke.cash 明确说它不能找回被盗资产,但仍然应该撤销被利用的授权,防止继续被转走。
- 帮不了助记词泄露。 对方已经控制了钱包,撤销没有意义,该做的是立刻迁移。判断和处理见助记词泄露了怎么办。
- 看不到还没上链的签名。 列表里不会显示它。市场签名类骗局依赖你给 OpenSea、Blur、Permit2 等合约的现有授权,Revoke.cash 说明及时撤销这些授权可以让签名失效,只是留给你的时间很短。如果确实签了可疑的签名,把资产转到别的地址,比等着观察更稳妥。
- 有些老 NFT 查不全。 Revoke.cash 提到 CryptoKitties 这类早期系列可能不发出标准授权记录,需要到该系列的页面或区块浏览器查看。
硬件钱包也挡不住这类损失。Revoke.cash 的 FAQ 写明,授权类攻击不需要偷私钥,硬件钱包没有额外保护。
多久检查一次钱包授权
没有固定的周期,养成下面这些习惯更实用:
- 把存放长期资产的地址和日常交互的地址分开。Revoke.cash 的说明提到,真正的冷钱包不应留有代币授权。
- 钱包里留少量原生资产,否则连撤销都发不出去。
- 每次弹出签名窗口时,看清是登录、授权还是出售。
- 每用过一个新项目,就回来检查一次授权。
- 留意“领空投”“验证钱包”这类要求签名的页面,同类手法见常见加密货币骗局有哪些。
这篇文章参考了哪些资料
- What Are Token Approvals? | Revoke.cash ↗
- How to Revoke Token Approvals | Revoke.cash ↗
- What Are Permit Signatures? | Revoke.cash ↗
- What Is Permit2? | Revoke.cash ↗
- Frequently Asked Questions | Revoke.cash ↗
- 授权漏洞与黑客攻击 | Revoke.cash ↗
- You've Been Scammed, Now What? | Revoke.cash ↗
- How to revoke smart contract access to your crypto funds | ethereum.org ↗
- Ethereum security and scam prevention | ethereum.org ↗
规则、费率和可用范围可能变化,也因地区而异,请以你实际看到的官方页面为准。想了解文章怎么写,可以看我们如何查证和更新文章。这里的内容不构成投资、法律或税务建议,数字资产可能损失全部本金。


