Skip to main content

What is Permit2? The Complete Guide to Next-Generation Token Approvals

Discover Permit2, Uniswap's token approval system that enables gasless signatures and reduces transaction costs for DeFi applications.

Eco avatar
Written by Eco
Updated over a week ago

Token approvals have long been a pain point in the DeFi ecosystem, requiring users to send separate transactions before interacting with new protocols. Permit2 is a token approval contract that can safely share and manage token approvals across different smart contracts, fundamentally changing how we interact with decentralized applications.

Understanding Token Approvals: The Traditional Problem

Before diving into Permit2, it's important to understand the challenges with traditional ERC-20 token approvals. Users were required to initiate an approval transaction for every new application they intended to utilize, creating friction and additional gas costs.

The traditional approval process works like this:

  1. User calls the approve() function on an ERC-20 token

  2. User waits for transaction confirmation and pays gas fees

  3. User can then interact with the DeFi application

  4. The process repeats for every new protocol

This two-step process has several drawbacks. Gas Fees: Every approval is an action on the blockchain, which means it requires a separate transaction – and this leads to additional gas fees. For active DeFi users, these costs add up quickly across multiple protocols.

What is Permit2? A Revolutionary Approach

Permit2 is a token approval contract that iterates on existing token approval mechanisms by introducing signature-based approvals and transfers for any ERC20 token, regardless of EIP-2612 support. Developed by Uniswap Labs and launched in November 2022, Permit2 acts as a universal approval proxy that works with any ERC-20 token.

Unlike EIP-2612 permits, which require token contracts to implement specific functionality, Permit2 works through a standalone smart contract deployed at the same address across multiple networks including Ethereum, Optimism, Arbitrum, Polygon, and Base.

How Permit2 Works: The Architecture

Permit2 is the union of two contracts: AllowanceTransfer and SignatureTransfer. Each component serves different use cases:

AllowanceTransfer Contract: The AllowanceTransfer contract shares and manages approvals with other spenders using a time-bounded expiry. This approach works best for applications that need frequent token access over time.

SignatureTransfer Contract: The SignatureTransfer contract introduces one-time permits for token transfers. These signatures are only valid for the specific transaction, providing tighter security controls.

Key Benefits of Permit2

Universal Token Compatibility

One of Permit2's biggest advantages is backward compatibility. Permit2 was launched by Uniswap Labs in November 2022. It marked a step to improve the safety and speed of token approvals, extending gasless approval functionality to tokens that don't support EIP-2612.

Reduced Gas Costs

Permit2 manages the approval of token transfers via gasless signatures, eliminating the need for separate approval transactions in most cases. Users approve the Permit2 contract once per token, then use off-chain signatures for subsequent interactions.

Enhanced Security Features

Permit2 introduces several security improvements:

  • Expiring Approvals: One additional benefit of Permit2 is that it also adds an expiration time to approvals, reducing risks from hanging approvals

  • Batch Operations: Users can approve multiple tokens or execute multiple transfers in a single transaction

  • Signature Verification: All signatures support EIP-1271, enabling contract-based approvals

Permit2 vs EIP-2612: Understanding the Differences

While both Permit2 and EIP-2612 enable gasless approvals, they work differently:

EIP-2612 Limitations: The downside is this technique lacks backwards compatibility because it is an extension of the ERC-20 standard. Only tokens that implement the permit function can use EIP-2612.

Permit2 Advantages: Permit2 enjoys all the same benefits as EIP-2612, using the permit() concept as a centerpiece, and also addresses backwards compatibility. This makes Permit2 accessible to all ERC-20 tokens.

Real-World Implementation and Use Cases

DeFi Protocol Integration

As more DApps integrate Permit2, a user would no longer need to approve each new DApp contract; they just ensure Permit2 is approved. This creates significant network effects as adoption grows.

Major protocols already leveraging Permit2 include:

  • Uniswap Universal Router

  • 1inch Exchange

  • Various DEX aggregators

  • Lending protocols

Security Considerations and Risks

While Permit2 offers numerous benefits, users should be aware of potential risks:

Phishing Attacks

The Permit2 system is very flexible and allows for granting approvals for multiple tokens at once. Because of this flexibility, it is harder for users to understand what they are approving. Malicious websites may exploit this complexity to trick users.

Signature Verification

Signature Risk: Compared to traditional Approve methods, Permit2 relies heavily on signatures, exposing uninformed users to phishing attacks. Users must carefully verify what they're signing.

Best Security Practices

To stay safe when using Permit2:

  1. Only interact with verified, reputable DeFi protocols

  2. Carefully review signature requests

  3. Use wallets that properly display Permit2 signature information

  4. Regularly audit your approvals using tools like Revoke.cash

Technical Implementation for Developers

Integration Requirements

For each token, users have to submit a one-time traditional approval that sets Permit2 as an approved spender. Developers must handle this prerequisite step in their applications.

Contract Development

When integrating Permit2, developers need to:

  1. Import the IAllowanceTransfer interface

  2. Set up permit verification functions

  3. Handle signature validation

  4. Implement appropriate security checks

Frontend Integration

The Permit2 SDK helps construct signatures on the frontend, providing typed interfaces and helper functions for web applications.

The Future of Token Approvals

Network Effects

Permit2 benefits greatly from network effects. As more teams integrate with Permit2, we'll begin to see network effects. This creates a positive feedback loop encouraging further adoption.

Ecosystem Growth

The Permit2 standard is becoming foundational infrastructure for DeFi. Looking forward, Permit2 could become foundational infrastructure in DeFi and beyond, potentially eliminating most approval friction for users.

Getting Started with Permit2

For Users

  1. First Use: The first time you interact with a Permit2-enabled application, you'll approve the Permit2 contract for specific tokens

  2. Subsequent Interactions: Future interactions only require signing off-chain messages

  3. Monitoring: Use approval tracking tools to monitor your Permit2 permissions

For Developers

  1. Study the Documentation: Review Uniswap's integration guide and technical documentation

  2. Use the SDK: Leverage the official Permit2 SDK for frontend integration

  3. Test Thoroughly: Implement proper testing for signature verification and edge cases

Frequently Asked Questions

Q: Is Permit2 safe to use?

A: Permit2 is generally safe when used with reputable protocols. Permit2 is included in the Bug Bounty initiative of Uniswap Labs, demonstrating ongoing security monitoring. However, users should remain vigilant about phishing attacks.

Q: Do all tokens support Permit2?

A: Yes, Permit2 works with any ERC-20 token, regardless of whether they implement EIP-2612. This universal compatibility is one of Permit2's key advantages.

Q: How much gas does Permit2 save?

A: While the initial approval still requires gas, subsequent interactions using signatures are gasless for users. This can save significant amounts over time for active DeFi participants.

Q: Can I revoke Permit2 approvals?

A: Yes, you can revoke approvals to the Permit2 contract just like any other token approval. Additionally, many Permit2 signatures include expiration times for automatic revocation.

Q: Is Permit2 compatible with all wallets?

A: Most modern wallets support the signature types used by Permit2. However, signature display and verification may vary between wallet providers.

Conclusion

Permit2 represents a significant advancement in token approval mechanisms, addressing long-standing UX and cost issues in DeFi. By enabling gasless signatures and universal token compatibility, it creates a foundation for more accessible decentralized applications.

For protocols building the future of decentralized finance, Permit2 integration provides immediate UX benefits and positions applications for the growing ecosystem of compatible protocols.

As the DeFi space continues to mature, innovations like Permit2 help bridge the gap between the technical complexity of blockchain interactions and the simple, intuitive experiences users expect. While security considerations remain important, the benefits of reduced friction and lower costs make Permit2 an essential component of modern DeFi infrastructure.

Did this answer your question?