Função de blacklist (Blacklist function)
Em resumo Uma blacklist function é código num smart contract que permite ao proprietário impedir certas carteiras de transferir ou vender os seus tokens.
Uma blacklist function é um bloco de código no smart contract de um token que permite a um endereço privilegiado, geralmente o proprietário, sinalizar carteiras específicas como bloqueadas. Assim que uma carteira entra nessa lista, o contrato rejeita as suas transações, o que na prática a impede de vender, transferir ou, em certos casos, até de receber o token.
Ao nível da lógica de execução, o contrato mantém um mapeamento de endereços associados a um valor booleano (verdadeiro ou falso), e a rotina de transferência valida essa condição antes de autorizar a movimentação de saldo. O proprietário invoca funções como addToBlacklist ou setBots para ativar a restrição. Em redes EVM, trata-se de código Solidity acessível em qualquer contrato verificado, ainda que os nomes das funções sejam muitas vezes camuflados. Existem controlos equivalentes em ativos legítimos: as principais stablecoins centralizadas conseguem congelar endereços associados a sanções ou explorações, e os tokens na Solana podem incluir uma freeze authority que desempenha a mesma função ao nível da conta.
Para os detentores de tokens de baixa liquidez, o risco reside em quem controla esse mecanismo. Uma função de blacklist nas mãos de um criador anónimo pode converter qualquer token num honeypot direcionado a endereços específicos, frequentemente os primeiros investidores a registar lucro. Alguns projetos justificam a sua implementação como defesa contra bots de arbitragem no lançamento, o que pode ocorrer, mas o mesmo mecanismo pode ser ativado a qualquer momento contra compradores comuns.
Analise o código-fonte verificado à procura de mapeamentos que bloqueiem transferências e verifique se a titularidade (ownership) foi renunciada ou se pertence a uma carteira multisig com timelock. Na Solana, certifique-se de que a freeze authority foi revogada. Embora os scanners de segurança identifiquem estas funções de forma automática, variações com nomes ofuscados podem passar despercebidas, e contratos baseados em proxies podem introduzi-las posteriormente através de um upgrade.




