本文へスキップ
ecdsa.com

permit(EIP-2612 と Permit2)

署名によるトークンの承認です。オフチェーンの EIP-712 署名が spender にトークンの移動を許可し、オンチェーンの 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 を承認し、その後は spender ごとに、有効期限と nonce を含む PermitSingle、PermitBatch、または署名転送用のメッセージに署名します。

署名の時点では何もブロードキャストされないため、ユーザーはアクセスを許可したことに気付かないことがよくあります。ドレイナーキットは、巨大な金額とはるか先の期限を指定した permit や Permit2 の署名を求め、その後それを送信します。ウォレットがこうしたメッセージをデコードすることは増えており、EIP-712 インスペクターでは、署名する前に spender、金額、期限を確認できます。

規格と参考文献

すべての用語