Gerador de hash (SHA-256)
Digite ou cole um texto e calcule seus hashes SHA-256, SHA-1, SHA-384 e SHA-512 com um clique, em hexadecimal minúsculo ou maiúsculo, com um botão de cópia para cada um. O cálculo usa a Web Crypto API do seu navegador sobre os bytes UTF-8 do texto, então nada é enviado. Gratuito, sem cadastro. Ele calcula hash apenas de texto, não de arquivos.
Como usar o gerador de hash
- 1. Digite seu texto. Qualquer texto, até o limite que o seu navegador aceita em uma caixa de texto.
- 2. Clique em Gerar hashes. Os quatro resumos aparecem juntos, com o SHA-256 destacado como o recomendado.
- 3. Escolha a caixa. Hexadecimal em maiúsculas alterna cada resumo entre minúsculas (a convenção usual) e maiúsculas; os bytes por trás são os mesmos.
- 4. Copie o resumo que você precisa com o botão ao lado dele.
Os quatro algoritmos
SHA-1, SHA-256, SHA-384 e SHA-512 são definidos no Secure Hash Standard do governo dos EUA, FIPS 180-4. Cada um transforma qualquer entrada em um resumo de tamanho fixo. O tamanho é a única diferença visível na saída:
| Algoritmo | Tamanho do resumo | Caracteres hexadecimais | Situação |
|---|---|---|---|
| SHA-1 | 160 bits | 40 | Quebrado para segurança: a primeira colisão prática foi publicada em 2017, e o NIST recomenda eliminá-lo até 2030. Apenas para checksums legados. |
| SHA-256 | 256 bits | 64 | A escolha padrão para verificações de integridade e assinaturas |
| SHA-384 | 384 bits | 96 | Família SHA-2; um SHA-512 truncado |
| SHA-512 | 512 bits | 128 | Família SHA-2; costuma ser mais rápido que o SHA-256 em processadores de 64 bits |
Um hash criptográfico é uma impressão digital de mão única. A mesma entrada sempre gera o mesmo resumo, uma mudança mínima gera um resumo sem nenhuma relação com o anterior, e o texto não pode ser recuperado a partir do resumo. O MD5 não é oferecido porque a Web Crypto API não o implementa.
Exemplo prático
Texto
abc
SHA-256
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
SHA-1
a9993e364706816aba3e25717850c26c9cd0d89d
Esses dois são os vetores de teste publicados nos exemplos do padrão, então você pode conferir a ferramenta com uma fonte confiável. Agora veja o que uma única letra faz. Trocando «dog» por «cog» em The quick brown fox jumps over the lazy dog:
…dog
d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
…cog
e4c4d8f3bf76b692de791a173e05321150f7a345b46484fe427f6acc7ecc81be
Esses dois resumos SHA-256 não têm nada de reconhecível em comum: 123 dos 256 bits são diferentes, perto da metade que se espera de valores não relacionados. Esse é o efeito avalanche, e é por isso que um hash pode mostrar que um arquivo ou mensagem mudou sem revelar o que mudou.
Por que seu hash pode não coincidir
- Quebra de linha no final.
abceabcseguido de uma quebra de linha são entradas diferentes: o SHA-256 deabcmais uma quebra de linha começa comedeaaff3, e não comba7816bf. O comandoecho abc | sha256sumtambém calcula o hash da quebra de linha; useprintfouecho -npara deixá-la de fora. - Maiúsculas e espaços.
Abcgera um hash diferente deabc, e o mesmo vale para um espaço em qualquer uma das pontas. - Codificação. A ferramenta calcula o hash dos bytes UTF-8 do que você digitou. Um texto calculado como UTF-16 ou Latin-1 em outro lugar gera um resumo diferente para qualquer caractere não ASCII.
- Quebras de linha. Textos colados de um arquivo do Windows podem conter retornos de carro que a caixa de texto normaliza.
Para o que esta ferramenta não serve
- Arquivos. Ela calcula hash apenas de texto. Para um arquivo, use
shasum -a 256 arquivono macOS ou Linux, oucertutil -hashfile arquivo SHA256no Windows. - Senhas. O SHA-256 foi projetado para ser rápido, o que ajuda um atacante a adivinhar senhas. Armazene senhas com uma função de hash lenta e com sal, como Argon2id, scrypt ou bcrypt.
- Hashes com chave. Não há opção de HMAC nem de sal.
Qual ferramenta você precisa?
Para a visão hexadecimal do próprio texto, e não de um resumo dele, use o Conversor hexadecimal. Para um identificador aleatório, o Gerador de UUID; para um segredo aleatório, o Gerador de senhas.
Perguntas frequentes
- Meu texto é enviado para algum servidor?
- Não. Cada resumo é calculado no seu navegador com a Web Crypto API (crypto.subtle.digest). Seu texto não é enviado a lugar nenhum, e a ferramenta continua funcionando se você ficar offline depois que a página carregar.
- O que é um hash criptográfico?
- Uma função que transforma uma entrada de qualquer tamanho em um resumo de tamanho fixo. Ela é determinística, de mão única e sensível a cada bit da entrada. Hashes são usados para verificar a integridade de arquivos, em assinaturas digitais e em identificadores de commits, entre outros usos.
- Qual algoritmo de hash devo usar?
- SHA-256 para quase tudo. SHA-384 e SHA-512 dão resumos mais longos da mesma família. Use o SHA-1 apenas quando um sistema antigo exigir, e nunca para segurança.
- O SHA-1 é seguro de usar?
- Não para segurança. O ataque SHAttered, de 2017, produziu dois arquivos PDF diferentes com o mesmo resumo SHA-1, e o NIST recomenda eliminá-lo até o fim de 2030. Ele continua aceitável para checksums sem finalidade de segurança, onde não há preocupação com atacantes.
- Por que não há opção de MD5?
- A Web Crypto API não implementa o MD5, e a ferramenta usa apenas o que o navegador fornece. O MD5 não serve para segurança há muitos anos.
- Posso calcular o hash de um arquivo com esta ferramenta?
- Não, ela aceita apenas texto. Use a ferramenta de linha de comando do seu sistema operacional para arquivos, como descrito acima.
- Por que meu SHA-256 é diferente do de outro site?
- Quase sempre a entrada difere por um caractere invisível, como uma quebra de linha ou um espaço no final, ou por uma codificação de texto diferente. Confira os bytes exatos com o Conversor hexadecimal.