Como revogar permissões de contratos inteligentes
As permissões concedidas a contratos inteligentes – como allowances de tokens ERC‑20 – são fundamentais para a experiência DeFi, mas podem se tornar um ponto de vulnerabilidade se não forem geridas corretamente. Neste guia aprofundado, explicamos passo a passo como revogar essas permissões, quais ferramentas usar e as boas práticas para evitar que terceiros gastem seus fundos indevidamente.
Por que revogar permissões?
Ao interagir com DEXs, plataformas de empréstimo ou yield farms, você autoriza o contrato a movimentar uma quantidade específica de tokens em seu nome. Se a permissão for “ilimitada” (por exemplo, uint256.max
), o contrato poderá gastar todo o seu saldo a qualquer momento, mesmo depois que você deixar de usar o serviço. Revogar ou reduzir essas permissões reduz drasticamente o risco de rug pulls e de phishing que exploram autorizações antigas.
Passo a passo para revogar permissões
- Identifique o token e o contrato autorizado. Use um explorador como Etherscan ou a própria carteira para listar as allowances vigentes.
- Escolha uma ferramenta de revogação. As opções mais populares são:
- Revoke.cash – interface simples, suporta múltiplas redes.
- Etherscan Token Approval Checker – integrado ao Etherscan.
- Conecte sua carteira. Metamask, Trust Wallet ou outra carteira compatível.
- Selecione a permissão que deseja revogar. Você pode reduzir o valor para
0
ou definir um limite menor. - Confirme a transação. Uma taxa de gas será cobrada; escolha um preço de gas adequado ao congestionamento da rede.
Exemplo prático usando Revoke.cash
1️⃣ Acesse https://revoke.cash e clique em “Connect Wallet”.
2️⃣ A lista de tokens aparecerá com os contratos que possuem autorização.
3️⃣ Clique em “Revoke” ao lado da autorização que deseja remover.
4️⃣ Assine a transação na sua carteira e aguarde a confirmação.
Ferramentas avançadas e auditoria de código
Para desenvolvedores, entender como o código do contrato manipula allowance
é essencial. Bibliotecas como OpenZeppelin ERC20 implementam padrões seguros que incluem funções increaseAllowance
e decreaseAllowance
ao invés de redefinir o valor diretamente.
Além disso, a documentação oficial da Ethereum descreve boas práticas para evitar autorizações excessivas.
Boas práticas para evitar permissões perigosas
- Conceda permissões limitadas (ex.: apenas o valor necessário para a transação).
- Revise periodicamente suas autorizações usando os links internos:
O que é uma chave privada? Entenda seu papel essencial na segurança das criptomoedas – protege sua conta contra acessos não autorizados.
Oráculos de blockchain explicados: Guia completo 2025 – entenda como oráculos podem influenciar permissões de contratos. - Utilize wallets que oferecem visualização de permissões nativas, como a nova interface da MetaMask.
- Desconecte contratos que não utilizam mais seu token (ex.: antigos DEXs ou farms).
Quando a revogação pode falhar?
Alguns contratos implementam métodos de permit (EIP‑2612) que permitem autorizações off‑chain. Nesses casos, a revogação requer uma nova assinatura ou a execução de uma função de revoke
específica. Sempre verifique a documentação do token.
Resumo rápido
Etapa | Ação |
---|---|
1 | Listar autorizações (Etherscan, wallet) |
2 | Usar Revoke.cash ou Etherscan Approval Checker |
3 | Revogar ou reduzir allowance |
4 | Confirmar transação e monitorar gas |
Seguindo este guia, você garante que seus ativos permaneçam seguros mesmo em um ecossistema DeFi em constante evolução.