Skip to content
Basis Desk

New from Basis Desk: free Telegram proxies for places where Telegram is blocked or slowed down.Connect in one tap →

Security & Hacks · 5 min read Last reviewed October 31, 2026

What Are Off-Chain Signatures? Permit (EIP-2612) and Permit2 Explained

How gasless approvals allow users to authorize token transfers using cryptography instead of transaction fees, and why reading the signature prompt is critical for security.

Editorial oversight: Julian Mercer, Chief Editor
Neutral

Key points

  • Off-chain signatures allow users to approve token transfers without paying network transaction fees.
  • EIP-2612 (Permit) integrates signature-based approvals directly into token smart contracts.
  • Permit2 acts as a universal router, bringing off-chain signature capabilities to older tokens.
  • Users must carefully read signature prompts, as signing a malicious Permit hands over control of tokens.

Off-chain signatures are cryptographic authorizations that allow users to approve token transfers without paying network transaction fees. By utilizing standards like EIP-2612 (Permit) and Permit2, these protocols decouple the act of granting permission from the act of executing a transaction on the blockchain.

The Problem with Traditional Approvals

Under the original ERC-20 token standard, a user must explicitly approve a decentralized application to spend their tokens. This process requires an on-chain transaction. Because every on-chain action on a network like Ethereum ($ETH) consumes block space, the user must pay a transaction fee, commonly known as gas. If a user wants to trade a token on a decentralized exchange, they first pay gas for the approval transaction, wait for the network to confirm it, and then pay gas again for the actual trade transaction.

This two-step process introduces friction. It requires users to maintain a balance of the native network token solely for paying gas fees, and it forces them to wait for multiple block confirmations before completing a single logical action. Over time, protocols sought ways to streamline this experience without compromising the underlying cryptographic security of the network.

Enter EIP-2612: The Permit Standard

The introduction of EIP-2612 changed the approval paradigm by integrating off-chain signatures directly into token smart contracts. Under this standard, a user signs a message with their private key cryptographically asserting their intent to allow a specific smart contract to spend a designated amount of their tokens.

Because this signature is generated locally on the user's device or hardware wallet, it is an off-chain signature. The user broadcasts this signature to a third party—often the decentralized application itself. The third party then submits the signature as part of the execution transaction. The token contract verifies the signature mathematically. If valid, the contract updates the allowance and executes the transfer in a single on-chain transaction. The user avoids paying the gas for the approval step, shifting that cost or bundling it into the execution step managed by the protocol.

Permit2: Centralized Approval Management

While EIP-2612 provided a standardized way to handle gasless approvals, it required individual token contracts to implement the standard natively. Older tokens lacking this code could not benefit from the Permit function.

Permit2 emerged as a generalized smart contract architecture designed to bring off-chain signature capabilities to any ERC-20 token. Instead of interacting with individual token contracts, a user grants a traditional, infinite approval to the Permit2 smart contract once. From that point forward, the user manages all subsequent application allowances via off-chain signatures routed through the Permit2 contract. This architecture centralizes the approval state, reducing total gas costs over time and standardizing the interface applications use to request token access.

The Anatomy of an Off-Chain Signature

To understand how these approvals work without immediate on-chain execution, it is helpful to look at the data contained within a typical signature payload. A Permit or Permit2 signature relies on an EIP-712 formatted message, which ensures the data is presented to the user in a structured, readable format rather than a blind string of hexadecimal characters.

For example, assume a user signs a Permit2 message allowing a decentralized exchange router (the spender) to move 1,000 tokens (the value) with a deadline of 1793491200 (a UNIX timestamp for Nov. 1, 2026, 00:00:00 UTC) and a nonce of 4.

The nonce ensures the signature can only be used once; if an attacker attempts to replay the same signature later, the smart contract will reject it because the current nonce will have advanced to 5. The deadline ensures the signature expires, mitigating the risk of long-standing dormant approvals being exploited. The user signs this exact combination of data. If the third party alters the amount to 2,000 tokens, the cryptographic hash changes entirely, and the smart contract will reject the signature as invalid.

Reading the Prompt

The security of off-chain signatures relies entirely on the user accurately reading the prompt presented by their wallet. Because the signature does not immediately broadcast to the network, users can sometimes mistake a Permit request for a harmless login or verification prompt.

Malicious actors frequently exploit this misunderstanding in phishing campaigns. A fraudulent website might present a button labeled "Verify Wallet." When clicked, the wallet displays a signature request. If the user fails to notice that the structured data requests approval to spend their entire token balance, they may unwittingly hand over control of their assets. Reading the specific fields—spender address, token amount, and deadline—is the only defense against this type of exploitation. Wallet interfaces have evolved to flag risky signatures, a trend aligned with broader industry movements toward safer architectures, as detailed in the push for Account Abstraction and Smart Wallets (https://basisdesk.news/learn/passkeys-and-account-abstraction).

Common misconceptions

  • Signing costs no gas, so it carries no risk: A signature is legally binding to the smart contract. Handing a signed Permit message to a malicious actor is equivalent to handing them a signed blank check. They can submit it to the network and drain the approved funds at their own expense.
  • Hardware wallets protect against malicious signatures: A hardware wallet secures the private key, ensuring it cannot be extracted. However, if the user authorizes a malicious Permit message on the hardware wallet's screen, the device will generate a valid signature for the attacker to use.
  • Off-chain signatures are completely invisible: While the generation of the signature is off-chain, the eventual execution of the transfer must happen on-chain. The token movement will always be recorded on the public ledger, even if the approval phase was handled via a local signature.

What to watch

The adoption of off-chain signatures represents a critical shift in how users interact with decentralized networks. As decentralized finance protocols strive for parity with traditional finance user experiences, gasless transactions will become the default expectation. Regulatory bodies evaluating consumer protection in digital asset markets are increasingly focused on the clarity of wallet interfaces and the potential for signature-based phishing. The evolution of standards like Permit2 indicates a market-driven approach to standardizing security, but the ultimate responsibility remains with the user interpreting the cryptographic prompt.

Questions this story raises

Do I have to pay gas to sign a Permit message?
No. Generating the signature happens locally on your device and requires no network fee. The fee is paid when the signature is submitted to the blockchain by a third party.
Can I revoke an off-chain signature?
Yes, but revoking a signature requires sending an on-chain transaction to increment your nonce, which invalidates any pending signatures associated with the previous nonce.
Is Permit2 replacing standard ERC-20 approvals?
Permit2 works alongside the ERC-20 standard. It requires an initial standard approval to function, after which it manages subsequent allowances off-chain.

References

  1. [1] EIP-2612: permit – 712-signed approvals — Ethereum Improvement Proposals
  2. [2] EIP-712: Typed structured data hashing and signing — Ethereum Improvement Proposals
  3. [3] Smart Contract Security Guidelines — Ethereum Foundation

Evergreen explainer written by Basis Desk's system and checked by an independent model pass for factual errors and advice language. Figures, fees and rules change — the references above are where to verify current specifics. Market figures marked "at the time of writing" come from live exchange data. Report an error: corrections@basisdesk.news · corrections policy.

The Daily Brief, in your inbox at 07:00 ET

Five stories, the numbers that moved, what to watch. Three minutes. No hype, no advice, unsubscribe in one click.

Not financial advice. Basis Desk publishes information, not recommendations. Crypto assets are volatile and you can lose what you invest.