Seguranca de Enderecos EVM: Ethereum, Base, Polygon e Mais
Índice
A Ethereum Virtual Machine tornou-se a plataforma dominante de contratos inteligentes, e seu formato de endereco se estende muito alem do proprio Ethereum. Polygon, Arbitrum, Optimism, Base, BNB Chain e Avalanche compartilham o mesmo sistema de enderecos. Essa universalidade e poderosa, mas introduz nuances de seguranca que todo usuario precisa entender.
Este guia aborda como enderecos EVM funcionam internamente, por que uma unica chave privada controla ativos em todas as cadeias EVM, como checksums protegem voce contra erros de digitacao e os erros mais comuns que levam a perda de fundos.
Enderecos EVM Sao Universais¶
Toda blockchain compativel com EVM usa o mesmo formato de endereco: uma string hexadecimal de 40 caracteres com prefixo 0x. O endereco 0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18 e valido no Ethereum, Polygon, Arbitrum, Optimism, Base, BNB Chain, Avalanche e em todas as outras cadeias EVM que existem ou existirao.
Essa universalidade nao e coincidencia. E uma consequencia direta de como enderecos EVM sao derivados. O processo funciona da mesma forma em todos os lugares:
- Gerar uma chave privada aleatoria de 256 bits.
- Calcular a chave publica usando a curva eliptica secp256k1.
- Obter o hash Keccak-256 da chave publica (excluindo o byte de prefixo 0x04).
- Manter os ultimos 20 bytes (40 caracteres hex) do hash.
- Adicionar o prefixo
0x.
Como toda cadeia EVM segue exatamente essa derivacao, a mesma chave privada sempre produz o mesmo endereco em todas as cadeias. Nao ha elemento especifico da cadeia no endereco em si. O endereco e puramente uma funcao da chave privada e da curva secp256k1.
Isso e fundamentalmente diferente de como enderecos Bitcoin funcionam. O Bitcoin tem multiplos formatos de endereco (Bech32, Base58Check, etc.) que codificam bytes de versao e dados especificos da cadeia. Um endereco Bitcoin mainnet e visual e estruturalmente distinto de um endereco testnet. Cadeias EVM nao tem essa distincao, o que e tanto uma conveniencia quanto uma fonte de risco.
Uma Chave Privada, Muitas Cadeias¶
Quando voce cria uma carteira Ethereum, seja pelo MetaMask, uma carteira de hardware ou o Gerador de Seed Phrase Ethereum do SafeSeed, sua seed phrase da acesso ao mesmo endereco em todas as cadeias EVM simultaneamente. Isso e um recurso, mas tem implicacoes de seguranca importantes.
A vantagem: Voce so precisa proteger uma seed phrase ou chave privada para controlar seus ativos em todas as cadeias EVM. Nao ha necessidade de carteiras separadas para Polygon, Arbitrum ou Base. Entender seed phrases vs chaves privadas ajuda a esclarecer essa relacao.
O risco: Se sua chave privada for comprometida, um atacante ganha acesso aos seus fundos em todas as cadeias EVM de uma so vez. Uma unica seed phrase vazada significa perder seu ETH no Ethereum, seu MATIC no Polygon, seu ARB no Arbitrum e quaisquer tokens em qualquer outra cadeia EVM onde esse endereco detenha valor. O raio de impacto de um comprometimento e muito maior do que seria com chaves especificas por cadeia.
Esse modelo de chave compartilhada tambem significa que caminhos de derivacao importam. O caminho de derivacao Ethereum padrao definido pelo BIP44 e m/44'/60'/0'/0/0. A maioria das carteiras usa esse mesmo caminho para todas as cadeias EVM, razao pela qual seu endereco permanece consistente entre redes. Algumas carteiras oferecem caminhos de derivacao especificos por cadeia (por exemplo, m/44'/137'/0'/0/0 para Polygon usando seu tipo de moeda SLIP44), mas isso e incomum na pratica. Se voce usou um caminho de derivacao nao padrao, certifique-se de documenta-lo. Nossa analise aprofundada de carteiras HD e caminhos de derivacao cobre os detalhes tecnicos.
Implicacao pratica para geracao de chaves: Quando voce gera uma carteira Ethereum, esta gerando uma carteira para todo o ecossistema EVM. Trate a seguranca dessa carteira de acordo. Use entropia adequada de uma fonte criptograficamente segura, gere offline se estiver armazenando valor significativo e siga as melhores praticas de armazenamento frio.
Checksums EIP-55 em Caixa Mista¶
Um dos aspectos mais sutis da seguranca de enderecos EVM e o mecanismo de checksum. Enderecos Ethereum sao hexadecimais, usando caracteres 0-9 e a-f. Como hex nao diferencia maiusculas de minusculas, 0xab12cd e 0xAB12CD representam o mesmo endereco. Isso cria um problema: nao ha forma integrada de detectar erros de digitacao.
O EIP-55, de autoria de Vitalik Buterin, resolveu isso codificando um checksum na capitalizacao do endereco. Funciona assim:
- Pegue o endereco em minusculas (sem o prefixo
0x). - Calcule o hash Keccak-256 desse endereco em minusculas.
- Para cada caractere no endereco: se o nibble correspondente no hash for 8 ou maior, capitalize o caractere. Caso contrario, mantenha-o em minusculo.
O resultado e um endereco como 0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAed onde o padrao de capitalizacao serve como checksum. Se voce alterar qualquer caractere, o padrao de capitalizacao nao correspondera mais, e uma carteira implementada corretamente sinalizara o endereco como invalido.
Isso importa para seguranca porque:
- Malware de sequestro de clipboard pode substituir enderecos copiados pelo endereco de um atacante. Se o endereco substituto tiver um checksum incorreto, uma boa carteira alertara voce.
- Erros de transcricao manual (inserir um endereco a mao) sao detectados antes que fundos sejam enviados para um buraco negro.
- Ataques de envenenamento de endereco, onde um atacante envia transacoes minusculas de um endereco semelhante, sao parcialmente mitigados ja que o checksum torna mais dificil encontrar enderecos de colisao.
Voce pode validar se um endereco EVM tem o checksum EIP-55 correto usando o Validador de Enderecos Ethereum do SafeSeed. Sempre verifique enderecos antes de enviar transacoes significativas. Para uma visao mais ampla das diferencas de formato entre cadeias, veja nosso guia sobre formatos de enderecos cripto.
Uma nota critica: Checksums EIP-55 sao aplicados por carteiras, nao pela blockchain em si. O protocolo Ethereum aceita transacoes para qualquer endereco de 20 bytes independentemente da capitalizacao. Se seu software de carteira nao implementar validacao EIP-55, voce perde essa protecao. Sempre use software de carteira bem mantido que realize verificacao de checksum.
Erros Comuns entre L2s¶
A proliferacao de redes Layer 2 e sidechains EVM introduziu novas categorias de erros de usuario. Entender isso pode evitar erros custosos.
Enviar tokens na rede errada¶
O erro mais comum: voce pretende enviar USDC no Arbitrum mas acidentalmente o envia no Ethereum mainnet (pagando taxas de gas muito maiores), ou pior, voce envia para um endereco em uma rede onde o destinatario nao tem acesso. Como os enderecos sao identicos entre cadeias, as carteiras nem sempre conseguem detectar esse erro.
Prevencao: Sempre confirme o seletor de rede na sua carteira antes de assinar uma transacao. Verifique o chain ID, que e o identificador tecnico que distingue redes EVM umas das outras.
Enviar para um endereco de contrato que nao existe na cadeia de destino¶
Um contrato inteligente implantado no Ethereum no endereco 0xABC... pode nao existir no Polygon. Se voce enviar tokens diretamente para um endereco de contrato em uma cadeia onde nenhum contrato esta implantado, seus tokens vao para um endereco de propriedade externa (EOA) que ninguem controla. Eles sao permanentemente perdidos.
Prevencao: Se enviar para um contrato, verifique se o contrato esta implantado na cadeia especifica que voce esta usando. Exploradores de blocos como Etherscan, Polygonscan e Arbiscan cobrem suas respectivas cadeias.
Perdas relacionadas a bridges¶
Mover ativos entre cadeias EVM requer bridges, e bridges tem sido a fonte de alguns dos maiores exploits na historia das criptomoedas. O formato de endereco compartilhado faz a ponte parecer simples, mas a mecanica subjacente e tudo menos simples.
Prevencao: Use bridges bem estabelecidas com fortes historicos de seguranca. Nunca faca bridge por links encontrados em e-mails, DMs ou sites desconhecidos. Verifique enderecos de contratos de bridge pela documentacao oficial.
Ataques de envenenamento de endereco¶
Um atacante monitora a blockchain em busca de suas transacoes e envia uma quantia minuscula de um endereco que visualmente se assemelha ao seu (coincidindo os primeiros e ultimos caracteres). Mais tarde, quando voce copia um endereco do seu historico de transacoes, pode acidentalmente copiar o endereco semelhante do atacante.
Prevencao: Nunca copie enderecos do historico de transacoes. Sempre use sua lista de enderecos ou gere uma nova copia da sua carteira. Valide qualquer endereco antes de enviar com uma ferramenta como o Validador de Enderecos Ethereum do SafeSeed. Tenha especial cuidado com enderecos que correspondem apenas aos primeiros e ultimos quatro caracteres. Entender golpes comuns de cripto envolvendo seed phrases ajuda a reconhecer padroes de ataque mais amplos.
Ignorar avisos EIP-55¶
Alguns usuarios, particularmente aqueles interagindo com protocolos DeFi por ferramentas de linha de comando ou transacoes brutas, contornam a validacao de checksum. Isso remove uma rede de seguranca critica.
Prevencao: Sempre use enderecos com checksum. Se uma ferramenta fornecer um endereco em minusculas, converta-o para o formato com checksum antes de usa-lo.
Gerando Enderecos EVM com Seguranca¶
Dado que um unico endereco EVM controla ativos em multiplas cadeias potencialmente valendo quantias significativas, o processo de geracao merece atencao seria.
Use aleatoriedade criptograficamente segura¶
A seguranca de cada endereco EVM comeca com a qualidade do numero aleatorio usado para gerar a chave privada. O Gerador de Chave Privada Ethereum do SafeSeed usa a Web Crypto API para obter aleatoriedade do gerador de numeros aleatorios criptograficos do seu sistema operacional, tudo rodando inteiramente no seu navegador sem nada enviado a qualquer servidor. Saiba mais sobre o que entropia significa em cripto e por que importa para geracao de chaves.
Gere offline para carteiras de alto valor¶
Se voce esta criando uma carteira que armazenara valor significativo em multiplas cadeias EVM, gere-a offline. Baixe o SafeSeed, desconecte da internet, gere sua seed phrase, registre-a fisicamente e feche o navegador antes de reconectar. Nosso guia passo a passo para gerar uma carteira Ethereum offline percorre todo o processo.
Derive enderecos corretamente¶
Ao gerar a partir de uma seed phrase BIP39, certifique-se de estar usando o caminho de derivacao correto para Ethereum: m/44'/60'/0'/0/0. Usar o caminho errado produzira um endereco valido, mas um que seu software de carteira regular pode nao encontrar quando voce restaurar a partir da seed phrase. Esta e uma situacao particularmente estressante porque seus fundos nao estao perdidos, mas parecem estar faltando ate voce descobrir o caminho correto.
Valide antes de financiar¶
Antes de enviar qualquer criptomoeda para um endereco recem-gerado, verifique-o com o Validador de Enderecos Ethereum do SafeSeed. Confirme que o checksum EIP-55 esta correto. Considere enviar uma pequena transacao de teste primeiro e depois verificar o recebimento antes de transferir quantias maiores.
Documente sua configuracao¶
Registre qual software de carteira, caminho de derivacao e rede voce usou. Se voce esta armazenando ativos em multiplas cadeias EVM a partir da mesma seed phrase, documente quais cadeias armazenam quais ativos. Essa informacao e critica para herdeiros ou para sua propria recuperacao se precisar restaurar o acesso anos depois.
O modelo de endereco compartilhado entre cadeias EVM e uma das maiores conveniencias do ecossistema. Tambem e um ponto concentrado de falha. Ao entender como funciona, respeitar a validacao de checksum, evitar erros comuns entre cadeias e gerar suas chaves com seguranca, voce pode aproveitar ao maximo o mundo EVM multi-cadeia sem se expor a riscos desnecessarios.