Um token Honeypot é uma criptomoeda maliciosa criada por desenvolvedores que intencionalmente inserem restrições ou backdoors no contrato inteligente. Isso permite que usuários comuns comprem o token, mas os impede de vendê-lo (ou torna a venda sujeita a taxas extremamente altas / mecanismos de lista negra), efetivamente prendendo seus fundos em suas carteiras.
À primeira vista, tais tokens podem parecer legítimos — eles podem ter pares de liquidez, logos de tokens e promoção ativa da comunidade — mas, uma vez que um usuário compra o token em uma exchange descentralizada, ele logo descobre que a venda é rejeitada ou que as taxas de transação são tão altas que se torna impossível recuperar seu investimento.
Como Evitar Perdas e Como Verificar
Você pode inserir o endereço do contrato do token em um explorador de blockchain como o OKLINK (conforme mostrado no exemplo abaixo). Se o token for um Honeypot, ele geralmente será marcado de acordo.
Como novos tokens são lançados na blockchain todos os dias, e os exploradores podem não atualizar a tempo, você pode realizar uma auto-verificação manual usando os seguintes métodos.
Verifique na aba Read Contract:owner()— Se retornar um valor diferente de0x000, significa que o proprietário ainda tem controle.totalSupply()ebalanceOf()— Verifique a distribuição inicial do token.Procure por funções ou variáveis como
isExcludedFromFee(address),isBlacklisted(address),maxTxAmount()etradingEnabled()(contratos diferentes podem usar nomes diferentes, mas eles servem a propósitos semelhantes.
Na aba Write Contract (acessível apenas se você tiver permissão):Verifique se existem funções de escrita sensíveis como
setFeePercent,setBlacklist,renounceOwnershipousetTradingEnabled.
Se elas existirem e só puderem ser chamadas pelo proprietário, o token apresenta alto risco.
Procure no código-fonte pelas seguintes palavras-chave (sem distinção entre maiúsculas e minúsculas ou com underscores):
blacklist,isBot,onlyOwner,setFee,maxTx,excludedFromFee,trading,swapAndLiquify,transferFrom,approve,mint,burn,renounceOwnership,liquidity.Preste atenção especial à implementação de
transfer,_transferetransferFrom— verifique se eles tratamto == pairoufrom == pairde forma diferente (para distinguir entre operações de compra e venda).Se encontrar código como
require(!_isBlacklisted[from]); if (to == pair) { fee = 99; }essa é uma bandeira vermelha clara.
Verifique se o contrato chama um router (por exemplo, Pancake/Uniswap Router) e se o processo deswapinclui lógica complexa comolockTheSwapou_tax, que pode impedir o swap normal.

