EIP-2612: Como o ERC-20 Permite Aprovações Sem Gás

LeeMaimaiLeeMaimai
/Atualizado em 16 de out. de 2025
EIP-2612: Como o ERC-20 Permite Aprovações Sem Gás

Principais Resultados

• O EIP-2612 permite aprovações sem gás através de assinaturas fora da cadeia.

• A implementação do EIP-2612 melhora a experiência do usuário em dApps e protocolos DeFi.

• A segurança deve ser uma prioridade ao usar assinaturas, com atenção a parâmetros como spender e prazo.

• O Permit2 oferece uma solução para tokens que não suportam o EIP-2612, padronizando aprovações.

As taxas de gás são a maior fonte de atrito em DeFi. Antes de poder trocar, emprestar ou fazer staking de um token ERC-20, você geralmente precisa enviar uma transação de "aprovar" – e pagar gás – apenas para permitir que a dApp mova seus tokens. O EIP-2612 muda isso. Ele introduz "permit", um fluxo de aprovação baseado em assinatura que move a aprovação para fora da cadeia e permite que um contrato inteligente ou relayer patrocine o gás na cadeia. O resultado é uma experiência de usuário mais suave, menos transações e aprovações mais seguras quando implementadas corretamente.

Este artigo explica como o EIP-2612 funciona, por que ele é importante em 2025 e o que usuários e desenvolvedores devem observar.

O Que o EIP-2612 Realmente É

O EIP-2612 estende o padrão de token ERC-20 com uma nova função: permit. Em vez de chamar approve(spender, amount) na cadeia, os usuários assinam uma mensagem tipada fora da cadeia que inclui os parâmetros de aprovação e um prazo. Um contrato inteligente então envia permit na cadeia usando essa assinatura, definindo a permissão sem que o usuário pague gás.

  • Noções básicas do ERC-20: aprovações e transferências seguem o padrão definido na especificação ERC-20.
  • Especificação EIP-2612: o formato da assinatura, nonces e a função permit são formalizados na proposta EIP-2612.
  • Dados tipados: as assinaturas usam dados estruturados de acordo com o EIP-712, o que torna o que você está assinando legível por humanos e vinculado ao domínio.

Em resumo, o EIP-2612 permite "aprovações sem gás" porque o usuário apenas assina fora da cadeia; uma dApp, relayer ou contrato paga para retransmitir o permit na cadeia.

Por Que é Importante em 2025

  • Menos cliques, menos transações: Uma assinatura pode definir a aprovação e executar imediatamente uma ação (troca, depósito, staking) em uma única chamada na cadeia.
  • Experiência de usuário focada em L2: Com as L2 prosperando, muitos protocolos patrocinam o gás para integrar usuários. As aprovações EIP-2612 se encaixam perfeitamente nesses padrões. Veja a visão geral da Ethereum sobre gás e modelos de conta para entender a dinâmica de custos.
  • Abstração de conta e paymasters: Fluxos de carteira impulsionados pelo ERC-4337 facilitam para os serviços patrocinarem o gás ou aceitarem taxas em tokens. O EIP-2612 complementa essas melhorias na experiência do usuário: você aprova via assinatura, e sua transação pode ser patrocinada.
  • Mudanças de protocolo com visão de futuro: Discussões sobre autorização nativa de carteira como EIP-3074 e EIP-7702 destacam uma tendência mais ampla em direção a operações impulsionadas por assinatura. Mesmo com a evolução dessas, o EIP-2612 permanece uma ferramenta prática e amplamente implantada para aprovações hoje.

Como Funcionam as Aprovações Sem Gás (Passo a Passo)

  1. Você inicia uma ação (por exemplo, trocar um token) em uma dApp.
  2. A dApp prepara uma mensagem tipada EIP-712 com os campos: owner, spender, value, nonce, deadline e o separador de domínio do token (nome, versão, chainId, endereço do contrato).
  3. Você assina a mensagem com sua carteira, aprovando parâmetros exatos.
  4. A dApp ou relayer envia permit(owner, spender, value, deadline, v, r, s) na cadeia e, na mesma transação, chama a ação da dApp que usa a permissão.
  5. O contrato do token verifica a assinatura, o nonce e o prazo, e então define a permissão.

A ideia chave: você não paga gás pela aprovação. Você apenas assina.

Permit Nativo vs. Permit2

Nem todos os tokens implementam o EIP-2612. Para resolver interfaces fragmentadas e melhorar a segurança, o Uniswap introduziu o Permit2 – um sistema de aprovação generalizado que padroniza aprovações de assinatura e gerenciamento de permissões entre tokens.

  • Visão geral do Permit2 e implementação de referência: Uniswap Permit2

Quando um token suporta permit nativo, as dApps podem usá-lo diretamente. Quando não suporta, o Permit2 fornece uma interface consistente enquanto restringe as permissões ao contrato Permit2, muitas vezes melhorando o controle e a experiência de revogação.

Considerações de Segurança Que Você Deve Se Importar

Sem gás não significa sem risco. Assinaturas são poderosas; trate-as como transações.

  • Verifique o spender: Sempre verifique qual contrato receberá a permissão. Os dados tipados EIP-712 devem mostrar claramente o endereço do spender. Aprenda como os dados tipados funcionam no EIP-712.
  • Limite a quantidade e defina um prazo razoável: Evite aprovações ilimitadas, a menos que você confie profundamente no protocolo. Prazos reduzem a janela de ataque.
  • Verifique chainId e domínio: As assinaturas são válidas apenas na rede e no contrato de token pretendidos através do separador de domínio. Cuidado com tentativas de replay cross-chain ou phishing.
  • Gerencie nonces: O EIP-2612 usa nonces para evitar replays. Confie em implementações de token respeitáveis, idealmente auditadas e que usam bibliotecas bem testadas como o ERC20Permit da OpenZeppelin.
  • Revogue permissões: Revise e revogue regularmente aprovações não utilizadas na interface da sua carteira ou através do contrato do token.
  • Confiança em meta-transações: Se um relayer enviar seu permit, certifique-se de confiar no backend da dApp. Para padrões de meta-transações, veja o EIP-2771 (Trusted Forwarder).

Boas implementações ajudam a mitigar problemas, mas a vigilância do usuário é essencial. Para práticas recomendadas gerais, a documentação da OpenZeppelin é um ótimo ponto de partida: OpenZeppelin Contracts.

Notas Para Desenvolvedores: Implementando e Usando Permit

  • Use uma implementação testada em batalha: ERC20Permit e draft-EIP712 da OpenZeppelin reduzem erros e se alinham com a especificação. Referência: ERC20Permit.
  • Empacote a execução: Projete sua dApp para aceitar uma assinatura permit e executar a ação na mesma transação para uma experiência de usuário de um clique.
  • Suporte a ambos os fluxos: Prefira permit nativo quando disponível; use Permit2 como alternativa se o token não o possuir. Referência: Uniswap Permit2.
  • Gerencie prazos e nonces de forma robusta: Rejeite assinaturas expiradas e confirme o nonce esperado antes de enviar para a cadeia.
  • Considere o patrocínio: Combine EIP-2612 com paymasters ERC-4337 para criar fluxos verdadeiramente contínuos e patrocinados. Referência: ERC-4337.

Perguntas Comuns

  • Isso é "grátis"? O usuário não paga gás pela aprovação; outra pessoa paga. A dApp ainda pode cobrar taxas através da lógica do seu contrato inteligente.

  • E se um token não suportar EIP-2612? Use Permit2, ou recorra a um fluxo approve padrão com prompts de UX claros.

  • O permit funciona entre cadeias? Não. As assinaturas são escopadas via EIP-712 a um domínio (contrato de token + chainId). Você deve assinar para a rede específica.

  • Carteiras de hardware são compatíveis? Qualquer carteira que suporte dados tipados EIP-712 pode renderizar mensagens permit. Boas carteiras mostram claramente o spender, a quantidade e o prazo.

Considerações Finais

O EIP-2612 é uma daquelas melhorias pequenas, mas cruciais, que fazem a DeFi parecer instantânea. Ao transformar aprovações em assinaturas, ele remove um obstáculo comum na experiência do usuário e se alinha naturalmente com fluxos modernos em L2s e abstração de conta.

Se você depende de fluxos baseados em permit, escolha uma carteira que renderize mensagens EIP-712 de forma transparente e mantenha as chaves offline. As carteiras de hardware OneKey focam em pré-visualizações EIP-712 claras no dispositivo (spender, quantidade, prazo, cadeia), firmware de código aberto e amplo suporte a EVM/L2 – úteis quando você deseja a conveniência de aprovações sem gás sem comprometer a segurança da assinatura.

Proteja sua jornada criptográfica com o OneKey

View details for Comprar OneKeyComprar OneKey

Comprar OneKey

A carteira de hardware mais avançada do mundo.

View details for Baixar aplicativoBaixar aplicativo

Baixar aplicativo

Negocie ativos globais. Comece em poucos minutos, apenas com o seu email.

View details for OneKey SifuOneKey Sifu

OneKey Sifu

Clareza Cripto—A uma chamada de distância.