跳到内容

一款代您行动、无需接触您密钥的安全工具

Revoke.cash 的反馈帮助塑造了 MetaMask 的代币授权撤销权限类型——ERC-7715 权限,使自动撤销功能无需持有用户密钥即可运行。

6 分钟
一款代您行动、无需接触您密钥的安全工具

Revoke.cash 是加密行业在出现问题后已广泛推荐使用的工具:它负责管理代币授权——即用户每次进行兑换、质押或出售 NFT 时授予 DeFi 应用和交易市场的持续访问权限。Revoke.cash 使用 MetaMask 的 Smart Accounts Kit 创建了 Auto-Revoking 功能,更进一步,能够自动清理不再需要的授权,且全程无需持有用户的私钥。

Revoke.cash 解决了大多数钱包从未暴露的问题

代币授权是你授予 DeFi 应用转移你代币的权限:授权 USDC 以便 Uniswap 进行兑换,授权 Pudgy Penguin 以便 OpenSea 进行上架。这种访问权限在你完成操作后并不会自动过期,而是无限期地留存在你的钱包中。一旦被授权的应用遭到攻击,每一个休眠的授权都是潜在的安全隐患。

Revoke.cash 于 2019 年 10 月由创始人 Rosco 作为个人项目创立,初衷是解决他自己对众多 DeFi 应用悄然持有其钱包持续访问权限的不安。当时还没有任何方式可以查看或撤销这些权限,于是他自己动手构建了一个。在过去六年里,Revoke.cash 已服务超过 200 万用户,累计撤销超过 2000 万次代币授权。引入 Auto-Revoking 功能的付费套餐 Premium 和 Ultimate 于 2026 年正式上线。

Rosco 表示,Auto-Revoking 的灵感来源于一个反复出现的规律:正确的建议总是来得太晚。每当发生漏洞攻击或用户资金损失时,标准建议都是"去 Revoke.cash 处理"——这是典型的亡羊补牢。

预防才是关键。定期清理授权能防患于未然。但对大多数人来说,持续手动操作并不现实,因此 Revoke.cash 在底层技术条件成熟后,构建了自动化版本。

难题:在从不持有用户私钥的前提下代其执行操作

作为一个行业,我们正在努力让用户能够以非托管方式自主管理自己的钱包。从安全角度来看,托管用户的助记词绝对不是一个选项。

— Rosco,Revoke.cash 创始人

某些链上操作,例如自动再平衡或限价单,已有可行的方式代表用户执行。但撤销他人的代币授权却没有——直到 ERC-7710 和 ERC-7715 的出现。

MetaMask 的 Smart Accounts Kit 和 Delegation Framework 成为了基础架构,而非自行搭建的定制化基础设施。这套 SDK 同时解决了两个层面的问题:为用户提供简洁的 UI 来授予委托,以及能够消费该委托的后端系统。这让 Revoke.cash 得以将自身的工程资源集中在更难、更具创新性的部分:Auto-Revoking 的周边系统,而无需重新发明底层的委托机制。

Revoke.cash 的反馈也推动了代币授权撤销权限类型的具体设计。MetaMask 还协助 Revoke.cash 完善了其冷热钱包委托架构的相关细节。

之前

使用 Auto-Revoking + Delegation Framework 之后

用户只在遭遇攻击或资金损失后才被告知撤销授权

授权按计划主动撤销,在被利用之前提前处理

清理授权需要用户记得手动逐个应用操作

用户在 MetaMask 中一次性授予一个权限即可

无法在不持有用户私钥的情况下操作其授权

经过范围限定的代币授权撤销权限仅授权该特定操作

人工审查无法应对数千个休眠授权

Revoke.cash 的系统持续索引并监控授权状态

一个冷钱包、两个热钱包,一个单一的最小权限

用户在 Revoke.cash 的账户设置页面开启 Auto-Revoking。该操作会请求一个代币授权撤销权限,通过 MetaMask 授予 Revoke.cash 控制的冷钱包。冷钱包被配置为将这些委托转发至运行在 Revoke.cash 自动撤销服务器上的两个热钱包。

此后,Revoke.cash 的系统会根据用户配置的自动撤销规则(例如已过期的授权或被标记为高风险的授权)对用户的代币授权进行索引和监控。当某个授权触发规则时,其中一个热钱包会发送一笔交易,该交易携带委托链中的两个委托——用户到冷钱包的委托以及冷钱包到热钱包的委托——从而在链上授权执行撤销操作。

为何中间需要一个冷钱包: 如果热钱包遭到攻击,冷钱包能防止影响直接波及用户。热钱包可以在冷钱包后面自由添加或移除,而无需更改用户的原始委托。

为何使用两个热钱包而非一个: Revoke.cash 将自动撤销分为两类。常规撤销是普通的清理操作,例如两年前出售 NFT 后遗留的 OpenSea 授权。紧急撤销则由活跃漏洞攻击或新兴风险触发,速度至关重要。为每类操作配置专属热钱包,确保紧急的漏洞触发撤销永远不会被常规清理任务阻塞在队列中。

权限本身通过 MetaMask 的 caveat enforcers 进行范围限定,仅授权撤销操作,不涉及任何更广泛的权限——这正是将委托交给自动化系统的安全保障所在。

技术架构

层级

组件

权限

Advanced Permissions(ERC-7715)代币授权撤销权限类型

委托

用户 → 冷钱包 → 两个热钱包,MetaMask Delegation Framework

执行

两个专属热钱包:常规清理与紧急风险触发撤销

监控

Revoke.cash 的授权索引与规则匹配引擎

撤销授权是每个人都需要执行的重要安全措施,但没有人愿意主动去思考这件事。通过提供由 MetaMask Smart Accounts Kit 驱动的自动撤销功能,我们能够在保护用户安全的同时,免去他们手动管理的心智负担。

— Rosco,Revoke.cash 创始人

Revoke.cash 给开发者的建议

  • 不要自行构建委托层。 Auto-Revoking 中真正困难且具有创新性的部分是周边系统:索引授权、匹配风险规则、区分常规与紧急执行路径。让 MetaMask Smart Accounts Kit SDK 处理权限的授予与消费,避免了重复造轮子。

  • 将执行层与用户信任隔离。 在用户与实际执行交易的热钱包之间设置冷钱包,意味着执行器被攻击后无需波及用户;冷钱包后面的钱包可以自由轮换。

  • 区分常规操作与紧急操作。 当自动化按计划运行时,并非每个触发都同等紧迫。按紧迫程度拆分执行路径,确保缓慢的常规任务永远不会延误快速的高风险操作。

更多信息,请参阅:

AI 翻译。可能包含错误。请务必核实信息。

评价此翻译

本文作者:

  • MetaMask

    MetaMask(前身为 Consensys Software Inc)是全球最大的自托管金融平台,为用户提供一站式服务,涵盖加密资产与传统资产的持有、消费、储蓄与增值。公司正在打造实现上述功能的消费级平台,将支付、储蓄、投资与数字资产整合于一体,带来无缝一体化的使用体验。MetaMask 脱胎于全球使用最广泛的自托管钱包,让用户直接掌控自己的资金与资产,覆盖约 190 个国家和地区。自 2016 年起,MetaMask 在以太坊的发展历程中扮演了举足轻重的奠基角色。如今,MetaMask 处于区块链经济的核心位置,致力于构建「开放货币」的操作系统,让每个人都能全面掌控自己的财务生活。

    阅读所有文章