跳到主要内容
ecdsa.com

permit(EIP-2612 与 Permit2)

基于签名的代币授权:用链下 EIP-712 签名授权被授权方转移代币,取代链上的 approve 交易;既可以由每个代币自行实现(EIP-2612),也可以通过 Uniswap 的共享 Permit2 合约实现。
其他写法EIP-2612Permit2permit signaturegasless approval

EIP-2612 为 ERC-20 代币增加了 permit(owner, spender, value, deadline, v, r, s);所有者在该代币的域下对类型化结构体 Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline) 签名。Permit2 把这套机制集中起来:用户对每个代币只需向 Permit2 授权一次,之后为每个被授权方签署 PermitSingle、PermitBatch 或签名转账消息,这些消息带有过期时间和 nonce。

签名时不会广播任何内容,因此用户常常意识不到自己已经授出了访问权限;盗币工具包会索要额度巨大、截止时间远在未来的 permit 或 Permit2 签名,然后把它们提交上链。越来越多的钱包会解码这类消息,EIP-712 查看器也能在签名之前显示被授权方、金额和截止时间。

标准与参考资料

全部术语