Gerador de hash Keccak-256

Gere o hash Keccak-256 de qualquer texto na hora, direto no navegador. Entrada em UTF-8, hex ou Base64; saída em hex ou Base64. Grátis, privado e sem upload.

Keccak-256

Executa totalmente no seu navegador. Seus dados nunca são enviados.

O que é Gerador de hash Keccak-256?

O Keccak-256 é o hash Keccak original (o vencedor da competição SHA-3 tal como foi submetido, em 2011) com saída de 256 bits, antes de o NIST alterar o padding para o FIPS 202. Esta ferramenta calcula o resumo Keccak-256 de 256 bits de um texto ou de bytes brutos (hex ou Base64) enquanto você digita e o exibe como 64 caracteres hexadecimais ou em Base64.

Como usar Gerador de hash Keccak-256

  1. Digite ou cole sua entrada em Texto para gerar o hash — o resumo é atualizado enquanto você digita (com a caixa vazia aparece o hash de uma entrada vazia).
  2. Escolha a Codificação de entrada: Texto (UTF-8) gera o hash dos caracteres em UTF-8; Bytes em hexadecimal ou Base64 geram o hash dos bytes brutos decodificados.
  3. Escolha o Formato de saída (hexadecimal em minúsculas, em maiúsculas ou Base64) e clique em Copiar.

Exemplo

Entrada
abc
Saída
4e03657aea45a94fc7d47ba826c8d667c0d1e6e33a64a036ec44f58fa12d6c45

Keccak-256 dos 3 bytes ASCII "abc" (UTF-8, saída em hex minúsculo), o vetor de teste padrão.

Quando usar Gerador de hash Keccak-256

Use a ferramenta de texto Keccak-256 para gerar hashes de strings: reproduzir um valor de uma documentação ou de um código, montar vetores de teste, comparar a entrada de uma assinatura de API ou conferir o que um programa deveria produzir. Também não a use para conferir um arquivo baixado: copiar o conteúdo do arquivo para uma caixa de texto altera as quebras de linha e a codificação; para isso, use a ferramenta de checksum Keccak-256 de arquivos. Para trabalhos novos baseados em padrões (FIPS, NIST), use SHA3-256.

Como funciona Gerador de hash Keccak-256

O Keccak-256 absorve a entrada no estado Keccak-f[1600] de 1600 bits em blocos de 1088 bits (capacidade de 512 bits) e aplica 24 rodadas de permutação por bloco. Ele usa o padding da regra original do Keccak, pad10*1 (byte 0x01 … 0x80), sem o sufixo de domínio 01 que o FIPS 202 acrescentou. Os primeiros 256 bits do estado são o resumo, e é por isso que Keccak-256 e SHA3-256 diferem para qualquer entrada. O texto é primeiro convertido em bytes (UTF-8 por padrão), então os mesmos caracteres sempre geram o mesmo hash.

Casos de Uso Comuns

  • Conferir o Keccak-256 esperado de uma string em um teste unitário ou fixture
  • Gerar o hash de bytes hex copiados de um depurador, de uma captura de pacotes ou de uma especificação de protocolo
  • Comparar a saída Keccak-256 entre duas linguagens de programação que dão resultados diferentes
  • Gerar identificadores determinísticos ou chaves de cache a partir de texto
  • Obter a forma Base64 de um resumo Keccak-256 para cabeçalhos ou arquivos de configuração

Nota de Segurança

O Keccak-256 não tem ataques práticos conhecidos. Hashes simples também não servem para armazenar senhas: use um hash de senha lento e com salt, como Argon2, scrypt ou bcrypt. Tudo é calculado localmente no seu navegador; nada do que você digita é enviado.

Perguntas Frequentes

Este é o hash que o Ethereum chama de keccak256?

Sim. O keccak256 do Solidity, os endereços Ethereum (os últimos 20 bytes do Keccak-256 da chave pública) e os seletores de função (os primeiros 4 bytes do Keccak-256 da assinatura, por exemplo transfer(address,uint256) → a9059cbb) usam todos este Keccak-256 original, e não o SHA3-256 do FIPS 202.

Como gerar o hash de um valor hex como o Solidity faz?

O Solidity gera o hash de bytes, então keccak256(0x1234) processa dois bytes. Escolha Bytes em hexadecimal como codificação de entrada e cole o hex sem espaços; com Texto, seriam processados os caracteres ASCII.

Por que o hash muda completamente quando altero um único caractere?

É o efeito avalanche que todo hash criptográfico busca: inverter um bit da entrada altera cerca de metade dos 256 bits de saída, então entradas parecidas geram resumos sem nenhuma relação.

Um espaço ou uma quebra de linha no final faz diferença?

Sim. O hash cobre cada byte, então abc e abc seguido de uma quebra de linha geram valores Keccak-256 diferentes. Garanta que a entrada contenha exatamente os bytes que você quer usar.

Explore mais categorias