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

LeeMaimaiLeeMaimai
/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

Alertas de golpe. Todas as moedas suportadas.

View details for OneKey SifuOneKey Sifu

OneKey Sifu

Clareza Cripto—A uma chamada de distância.

Continue lendo