Gerador de Hash: SHA-256, SHA-512, SHA-1, MD5
Digite um texto ou escolha um arquivo: o gerador de hash calcula na hora os checksums SHA-256, SHA-384, SHA-512 e SHA-1 e, se você quiser, também o MD5. Cole um hash esperado (por exemplo, da página de download) para comparar diretamente. Tudo roda no seu navegador – os arquivos nunca são enviados.
Como o cálculo é feito
Uma função hash transforma dados de qualquer tamanho num valor de tamanho fixo – o hash, digest ou checksum (soma de verificação). A mesma entrada sempre gera o mesmo hash; mudar um único caractere produz um hash completamente diferente. Não dá para voltar do hash à entrada.
Os algoritmos
- SHA-256 (256 bits, 64 caracteres hexadecimais): o padrão atual – para checksums de download, Git, certificados e blockchains. Especificado, assim como o SHA-384 e o SHA-512, na norma NIST FIPS 180-4.
- SHA-384 e SHA-512 (96 e 128 caracteres hexadecimais): membros mais longos da família SHA-2; em máquinas de 64 bits, o SHA-512 costuma ser até mais rápido que o SHA-256.
- SHA-1 (40 caracteres hexadecimais): considerado quebrado desde o primeiro ataque de colisão prático, em 2017. O NIST proibiu seu uso em assinaturas digitais; ele ainda aparece como checksum simples, por exemplo em versões antigas do Git.
- MD5 (32 caracteres hexadecimais): quebrado desde 2004 (RFC 6151). Dois arquivos diferentes com o mesmo MD5 podem ser criados em segundos. Serve apenas como checksum contra erros acidentais de transmissão. Como os navegadores não trazem MD5, a ferramenta usa uma implementação própria, verificada com os valores de teste da RFC 1321.
Como verificar um download
Muitos projetos publicam um checksum SHA-256 ao lado do arquivo. Selecione o arquivo aqui e cole o valor publicado em “Comparar com o hash esperado” – se conferir, o arquivo chegou sem alterações. Maiúsculas, espaços e dois-pontos no valor esperado não fazem diferença. No Windows, você faz o mesmo com certutil -hashfile arquivo SHA256; no macOS e no Linux, com shasum -a 256 arquivo ou sha256sum arquivo.
Por que meu hash é diferente?
Normalmente por causa de caracteres invisíveis: echo texto | sha256sum gera o hash do texto com quebra de linha, echo -n sem. Finais de linha do Windows (CR LF em vez de LF), uma marca de ordem de bytes (BOM) ou uma codificação diferente de UTF-8 também mudam o hash.
Hashes e senhas
Hashes rápidos como SHA-256 ou MD5 não servem para armazenar senhas – atacantes conseguem testar bilhões de tentativas por segundo. Use algoritmos lentos e com salt, como Argon2, scrypt ou bcrypt.
Os hashes são calculados com a Web Crypto API do seu navegador. Seu texto, seu arquivo e o valor de comparação não são enviados, não são armazenados e não aparecem na barra de endereços.
Perguntas frequentes
Como obter o hash SHA-256 de um arquivo?
Escolha o arquivo em “Ou gere o hash de um arquivo” – o valor SHA-256 aparece na hora, no topo do resultado. O arquivo é lido só dentro do seu navegador e nunca é enviado.
Dá para descriptografar um hash?
Não. Um hash não é criptografia, e sim uma função de mão única. Para entradas curtas ou comuns (como senhas fracas), porém, atacantes conseguem achar uma entrada correspondente por tentativa e erro ou com tabelas pré-calculadas.
O MD5 ainda é seguro?
Não. O MD5 está quebrado desde 2004; colisões podem ser geradas num computador comum em segundos. Para segurança, use SHA-256 ou algo mais forte. Como checksum contra erros acidentais de transmissão, o MD5 ainda cumpre o papel.
Por que meu hash não bate com o da linha de comando?
A causa mais comum é uma quebra de linha: echo "texto" | sha256sum acrescenta um \n. Use echo -n ou printf. Finais de linha diferentes (CR LF do Windows) ou outras codificações de caracteres também mudam o hash.
Qual a diferença entre a saída hexadecimal e a Base64?
É o mesmo hash escrito de outra forma: o hexadecimal usa 2 caracteres por byte (SHA-256 = 64 caracteres), o Base64 é mais curto (44 caracteres). O Base64 é usado, por exemplo, no Subresource Integrity (integrity="sha256-…").
Fontes e base legal
- FIPS 180-4: NIST FIPS 180-4 – Secure Hash Standard (SHS)
- NIST – Example values for SHA-1, SHA-256, SHA-384, SHA-512 (test vectors)
- RFC 1321: RFC 1321 – The MD5 Message-Digest Algorithm (Appendix A.5 test suite)
- RFC 6151: RFC 6151 – Updated Security Considerations for MD5 and HMAC-MD5
- NIST – Transitioning away from SHA-1 (SP 800-131A Rev. 2)
- MDN Web Docs – SubtleCrypto.digest()
Última atualização:
Ferramentas relacionadas
- Codificar e Decodificar Base64Codifique e decodifique Base64 e Base64url com UTF-8 correto, além de URL encode/decode (codificação por porcentagem). Erros claros, tudo no navegador.
- Gerador de SenhaCrie senhas aleatórias fortes e frases-senha fáceis de lembrar (em inglês, lista EFF), com a entropia em bits — direto no navegador, sem enviar nem salvar nada.
- Gerador de UUID: gere e valide UUID v4 e v7Gere UUID online: versão 4 (aleatória) ou versão 7 (ordenada por tempo), até 1.000 de uma vez. Valide um UUID e veja versão, variante e data de criação.
- Testador de RegexTeste expressões regulares JavaScript ao vivo: correspondências destacadas, grupos de captura em tabela e cada parte do padrão explicada. Grátis, sem upload.
- Validar e calcular um dígito de LuhnValide números com o algoritmo de Luhn (módulo 10, ISO/IEC 7812-1) ou calcule o dígito verificador – só confere o formato, direto no navegador.
- Calculadora de proporção (aspect ratio)Calcule a proporção a partir de largura e altura (1920 × 1080 = 16:9), descubra o lado que falta, o valor decimal, o formato padrão mais próximo e o CSS.