Três Hashes, Um Clique
Introduza qualquer texto e a ferramenta calcula os seus digests SHA-1, SHA-256 e SHA-512 em simultâneo usando a Web Crypto API integrada no navegador — a mesma implementação auditada em que o TLS confia, não uma reimplementação em JavaScript. Cada resultado é mostrado em hexadecimal minúsculo; clique em qualquer hash para o copiar.
Exemplo — o SHA-256 de Hello World:
a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e
Mude um carater (Hello world, w minúsculo) e cada bit da saída se reordena — é o efeito de avalanche, e é por isso que os hashes funcionam como impressões digitais.
Escolher um Algoritmo
| Algoritmo | Saída | Estado | Use-o para |
|---|---|---|---|
| SHA-1 | 160 bits / 40 carateres hex | Quebrado para colisões (2017) | Apenas compatibilidade legada — IDs de objetos git, checksums antigos |
| SHA-256 | 256 bits / 64 carateres hex | Seguro, padrão da indústria | Integridade de ficheiros, assinaturas, impressão digital geral |
| SHA-512 | 512 bits / 128 carateres hex | Seguro | Margem extra; muitas vezes mais rápido que SHA-256 em CPUs de 64 bits |
Use por defeito o SHA-256 a não ser que algo o obrigue a outra escolha. As colisões de SHA-1 foram demonstradas na prática — duas entradas diferentes a produzir o mesmo hash — por isso nunca o use onde um atacante possa beneficiar de forjar uma correspondência. O MD5 está ainda mais degradado e, por essa razão, não é oferecido aqui.
Para Que Servem os Hashes — e Para Que Não
- Verificações de integridade: compare o SHA-256 publicado de um ficheiro descarregado com o seu próprio cálculo; uma correspondência prova que os bytes são idênticos.
- Deduplicação e chaves de cache: faça o hash do conteúdo, use o digest como ID.
- Endereçamento por conteúdo e commits: o git, o IPFS e os registos de contentores identificam todos o conteúdo por hash.
- Não é encriptação: o hash é unidirecional — não há chave nem desencriptação. Não pode recuperar a entrada a partir do digest.
- Não é para palavras-passe, nem mesmo SHA-256: os hashes simples calculam milhares de milhões de tentativas por segundo num GPU. O armazenamento de palavras-passe precisa de um algoritmo deliberadamente lento e com sal — bcrypt, scrypt ou Argon2. Se precisar de uma palavra-passe forte, use o gerador de palavras-passe.
Determinístico, Local, Privado
A mesma entrada produz sempre o mesmo digest — esse determinismo é a própria razão de ser, e significa também que qualquer coisa adivinhável (um número de telefone, uma palavra de dicionário) pode ser revertida por tabelas de consulta de força bruta, que é exatamente porque os hashes sem sal falham para palavras-passe. Todo o hash aqui corre inteiramente no seu navegador via crypto.subtle.digest(); o texto que introduz nunca sai da sua máquina. Para identificadores aleatórios em vez de impressões digitais de conteúdo, use o gerador de UUID.