Tokens & markets3 min read

ERC-20 Permit: Signatures, Nonces and Deadlines

Understand permit-style token approvals, track nonce and deadline context, and avoid confusing an off-chain signature with an executed allowance change.

Editorial illustration accompanying erc-20 permit: signatures, nonces and deadlines.

Overview

When translating these concepts into an integration, keep the scope described by the wallet history api with the result. The examples in wallet transaction history and smart contract event logs show how the same distinction affects neighbouring data questions.

Permit-style approval allows a signed message to authorise an allowance update under a token’s implementation. Producing a signature and successfully executing that authorisation are separate events.

Verify the signed domain

The domain binds a signature to context such as the verifying contract and chain. The owner nonce and deadline help constrain replay and validity. Implementations differ, so inspect the actual supported interface. A generic typed-data prompt should show which contract, spender, amount and deadline the user is being asked to authorise.

Worked example: a signature that expires

A user signs an approval with a deadline, but the permit transaction is submitted after that deadline. The signature existed, yet the allowance update can fail. Store the signing request separately from the receipt and resulting state. A UI must not report an active permission solely because a signature was obtained.

Model execution and revocation carefully

Check the nonce and allowance at the relevant block after execution. Test wrong-chain domains, reused signatures, deadline boundaries and contract-wallet compatibility where supported. Never log full reusable authorisation material unnecessarily. If a permission is later changed, retain the sequence of observations instead of rewriting the earlier signature record as if it had never existed.

A practical acceptance test

Test a valid signature before its deadline, the same signature after successful nonce consumption and a signature under another chain domain. Keep signing evidence separate from execution outcome. The allowance label should change only after the applicable accepted execution and state check, not when the application merely receives a signature-shaped string.

Questions about the topic

Frequently asked questions

Is a signed permit already an on-chain approval?

No. The authorised operation still needs successful execution.

Are all permit interfaces identical?

No. Validate the token’s actual signature and domain rules.

Standards & technical documentation

Further reading

{{TODO: author name}}

Practical explanations of blockchain data, software integration and the context behind a record.

About Indexbase
← Back to all articles

Build with better context.

Get an update when private beta opens.

Form setup in progress. Nothing entered here is sent or saved. {{TODO: endpoint}} See the full form and email alternative.