Web3签名钓鱼解析:授权、Permit与Permit2的风险与防范

robot
摘要生成中

Web3签名钓鱼的底层逻辑:认识授权钓鱼、Permit与Permit2

在Web3领域,"签名钓鱼"已成为黑客最常用的诈骗手段之一。尽管安全专家和钱包公司不断宣传相关知识,但每天仍有许多用户上当受骗。造成这种情况的一个重要原因是,大多数人对钱包交互的底层原理缺乏了解,而对非技术人员来说,相关知识的学习门槛又较高。

为了帮助更多人理解这个问题,本文将尝试用通俗易懂的方式解释签名钓鱼的底层逻辑。

首先,我们需要明白使用钱包时主要有两种操作:"签名"和"交互"。简单来说,签名发生在区块链外(链下),不需要支付Gas费;而交互发生在区块链上(链上),需要支付Gas费。

签名的典型场景是身份验证,如登录钱包或连接DApp。例如,当你想在某DEX上交换代币时,首先需要连接钱包,这时就需要签名以证明你是该钱包的所有者。这个过程不会对区块链产生任何影响,因此无需支付费用。

相比之下,交互涉及实际的链上操作。以在DEX上交换代币为例,你首先需要支付一笔费用,授权DEX的智能合约可以移动你的代币(称为"授权")。然后,你还需要再支付一笔费用来执行实际的交换操作。

白话解读Web3签名钓鱼底层逻辑:授权钓鱼、Permit与Permit2的区别

了解了签名和交互的区别后,我们来看看几种常见的钓鱼方式:授权钓鱼、Permit签名钓鱼和Permit2签名钓鱼。

授权钓鱼是一种经典的诈骗手法,利用了授权(approve)机制。黑客可能会创建一个假冒的网站,伪装成NFT项目或空投活动。当用户点击"领取空投"按钮时,实际上是在授权黑客地址操作自己的代币。虽然这种方法需要支付Gas费,但仍有不少用户会不小心上当。

Permit和Permit2签名钓鱼则更加隐蔽,也更难防范。因为用户习惯了在使用DApp前签名登录钱包,很容易形成"这个操作是安全的"的惯性思维。加上签名不需要支付费用,许多人并不了解每个签名背后的含义,这就为黑客创造了可乘之机。

白话解读Web3签名钓鱼底层逻辑:授权钓鱼、Permit与Permit2的区别

Permit是ERC-20标准的一个扩展功能,允许用户通过签名批准他人移动自己的代币。简单来说,就像在一张"条子"上签名,允许某人移动你的代币。持有这个"条子"的人可以向智能合约证明他有权限移动你的代币。黑客可以利用这一机制,诱导用户签署Permit,从而获取转移代币的权限。

Permit2是某DEX为提升用户体验而推出的功能。它允许用户一次性授权大额度给Permit2智能合约,之后每次交易只需签名即可,无需再次授权。这虽然简化了操作流程,但也为钓鱼创造了条件。如果用户曾经使用过该DEX并授权了无限额度给Permit2合约(这是该DEX的默认设置),那么黑客只需诱导用户签名就可以转移其代币。

总的来说,授权钓鱼是让你直接授权黑客移动你的代币,而签名钓鱼则是诱导你签署一个允许他人移动你资产的"条子"。Permit是ERC-20的授权扩展功能,Permit2是某DEX推出的新功能,两者都是当前签名钓鱼的重灾区。

白话解读Web3签名钓鱼底层逻辑:授权钓鱼、Permit与Permit2的区别

那么,如何防范这些钓鱼攻击呢?

  1. 培养安全意识至关重要。每次进行钱包操作时,都要仔细检查你正在执行的操作究竟是什么。

  2. 将大额资金与日常使用的钱包分开,以降低潜在损失。

  3. 学会识别Permit和Permit2的签名格式。当你看到包含以下信息的签名请求时,要特别警惕:

    • Interactive:交互网址
    • Owner:授权方地址
    • Spender:被授权方地址
    • Value:授权数量
    • Nonce:随机数
    • Deadline:过期时间

白话解读Web3签名钓鱼底层逻辑:授权钓鱼、Permit与Permit2的区别

通过了解这些底层逻辑和防范措施,我们可以更好地保护自己的数字资产,避免成为签名钓鱼的受害者。

DAPP-2.12%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 3
  • 分享
评论
0/400
SignatureDeniedvip
· 16小时前
唉 老韭菜了 还是栽了几次
回复0
稳定币套利者vip
· 16小时前
*调整图表* 又有10.3%的投资组合价值因许可漏洞而损失... 他们什么时候才能学会阅读字节码
查看原文回复0
冷钱包守护者vip
· 16小时前
越怕越被钓呗
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)