Gerador de Hash SHA-1
Digite ou cole o texto para calcular o hash SHA-1 em tempo real. Processamento 100% no navegador — nenhum dado é enviado ao servidor.
O que é SHA-1?
SHA-1 (Secure Hash Algorithm 1) é uma função de hash criptográfica desenvolvida pela NSA e publicada pelo NIST em 1995. Ela transforma qualquer entrada em uma sequência fixa de 40 caracteres hexadecimais (160 bits).
Entrada: "hello"
SHA-1: aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434dDurante anos foi o algoritmo padrão para assinaturas digitais, certificados SSL e controle de versão de código.
Histórico e depreciação do SHA-1
SHA-1 foi considerado seguro por décadas, mas sua fragilidade foi sendo demonstrada progressivamente:
- 2005: pesquisadores da Shandong University descreveram um ataque teórico mais eficiente que força bruta
- 2011: NIST recomendou migração para SHA-2 em todos os novos sistemas
- 2015: Microsoft, Google e Mozilla anunciaram que navegadores parariam de aceitar certificados SHA-1
- 2017: O ataque SHAttered (Google e CWI Amsterdam) gerou pela primeira vez dois arquivos PDF diferentes com o mesmo hash SHA-1 — provando colisões na prática
- 2019: O Git iniciou suporte experimental a SHA-256 como alternativa ao SHA-1 para repositórios novos
Hoje, SHA-1 está formalmente depreciado para qualquer aplicação de segurança.
SHA-1 vs SHA-256
| Característica | SHA-1 | SHA-256 |
|---|---|---|
| Bits de saída | 160 | 256 |
| Caracteres hex | 40 | 64 |
| Colisões | Demonstradas (SHAttered, 2017) | Nenhuma conhecida |
| Status de segurança | Depreciado | Seguro |
| Velocidade relativa | Rápido | Rápido |
| Recomendado para | Checksums legados | Todas as aplicações modernas |
A migração de SHA-1 para SHA-256 é simples na maioria dos sistemas e fortemente recomendada.
Casos de uso legados do SHA-1
Apesar de depreciado para segurança, SHA-1 ainda aparece em contextos específicos:
- Git (versões antigas): o Git historicamente usa SHA-1 para identificar commits, árvores, blobs e tags. Repositórios existentes com milhões de objetos SHA-1 continuarão funcionando
- Compatibilidade com sistemas antigos: APIs legadas e protocolos antiquados que não foram atualizados
- Checksums não-críticos: verificação de integridade em contextos onde segurança criptográfica não é necessária
- Análise forense: examinar hashes de arquivos em investigações que envolvem sistemas mais antigos
O ataque SHAttered (2017)
Em fevereiro de 2017, pesquisadores do Google e do CWI Amsterdam publicaram o primeiro exemplo prático de colisão SHA-1: dois arquivos PDF diferentes com exatamente o mesmo hash SHA-1.
O ataque custou aproximadamente 6.500 anos-CPU e 110 anos-GPU de processamento — computacionalmente caro, mas viável para atores com recursos como estados nacionais ou grandes organizações criminosas. Isso encerrou definitivamente o debate sobre a segurança prática do SHA-1.
Perguntas frequentes sobre SHA-1
Ainda posso usar SHA-1 para verificar integridade de downloads?
Para verificação simples de integridade (garantir que um arquivo não foi corrompido no download), SHA-1 ainda é funcional. Porém, se a questão é autenticidade (garantir que o arquivo não foi substituído por um adversário), use SHA-256 ou SHA-512.
O Git ainda usa SHA-1?
Sim, repositórios Git criados com versões antigas (a grande maioria) usam SHA-1 internamente. O Git 2.29+ suporta SHA-256 para novos repositórios (--object-format=sha256), mas repositórios existentes continuam em SHA-1. A migração de repositórios existentes é um processo complexo.
Qual é o SHA-1 de uma string vazia?
O hash SHA-1 de uma string vazia é: da39a3ee5e6b4b0d3255bfef95601890afd80709
Por que SHA-1 tem 40 caracteres e não 32 como MD5?
SHA-1 gera 160 bits de saída contra 128 bits do MD5. Como cada byte se representa com 2 dígitos hexadecimais: 160 ÷ 8 = 20 bytes × 2 = 40 caracteres. O MD5 com 128 bits: 128 ÷ 8 = 16 bytes × 2 = 32 caracteres.