MD5, SHA-1 ou SHA-256: qual hash usar para downloads
Para verificar um download, use SHA-256 ou SHA-512 sempre que o responsável pelo arquivo oferecer. MD5 e SHA-1 ainda detectam danos acidentais, como um download interrompido, mas pesquisadores mostraram que dois arquivos diferentes podem ser construídos para ter o mesmo hash MD5 ou SHA-1. Uma coincidência com esses algoritmos, portanto, não prova que o arquivo é o que o publicador criou. Um hash é uma impressão digital, não criptografia, e só tem valor quando vem de uma fonte em que você confia.
Gerador de hashMeu download está correto?Use de graçaO que um hash faz e o que não faz
Uma função hash transforma dados de qualquer tamanho em uma impressão digital de tamanho fixo. A mesma entrada sempre gera a mesma impressão, e alterar um único byte gera uma impressão completamente diferente. Isso torna o hash útil para comparação: se a impressão da sua cópia coincide com a publicada, os dois arquivos quase certamente são idênticos.
Um hash não é criptografia. Não pode ser revertido para recuperar o arquivo e não usa chave. Ele não esconde nada e, sozinho, não comprova quem fez o arquivo. Um checksum é simplesmente um hash que o publicador exibe ao lado do download para você comparar.
As quatro opções mais comuns
| Algoritmo | Tamanho da saída | Use para |
|---|---|---|
| MD5 | 128 bits, 32 caracteres hex | Apenas detectar danos acidentais |
| SHA-1 | 160 bits, 40 caracteres hex | Verificações antigas; evite para segurança |
| SHA-256 | 256 bits, 64 caracteres hex | A escolha usual para downloads |
| SHA-512 | 512 bits, 128 caracteres hex | A mesma família, com saída mais longa |
Por que MD5 e SHA-1 não bastam
Uma colisão ocorre quando duas entradas diferentes têm o mesmo hash. Colisões no MD5 são conhecidas desde 2004. Em 2017, pesquisadores publicaram uma colisão prática do SHA-1: dois arquivos PDF diferentes com o mesmo hash.
Em um download, isso importa porque um atacante que controla um arquivo pode produzir uma versão maliciosa com o mesmo hash MD5 ou SHA-1 do original. Se o publicador lista apenas MD5 ou SHA-1, uma coincidência já não prova que o arquivo é autêntico. A própria FAQ do gerador de hash reforça o mesmo ponto: use SHA-256 ou SHA-512 para qualquer coisa relacionada à segurança.
Até a data de redação, não se conhece nenhuma colisão prática do SHA-256, por isso ele é a escolha usual. O guia de checksum SHA-256 mostra os passos.
Escolha o certo
- Se o publicador oferecer SHA-256 ou SHA-512, use esse e deixe MD5 e SHA-1 de lado quando o assunto for segurança.
- Se houver apenas MD5 ou SHA-1, verifique mesmo assim com o gerador de hash. Ele ainda detecta um download corrompido ou incompleto. Trate a coincidência como "não está danificado", e não como "é autêntico".
- Se nenhum hash for oferecido, não é possível verificar a integridade dessa forma. Baixe da página oficial por HTTPS e, quando o projeto publicar arquivos de checksum assinados, verifique a assinatura.
O gerador de hash calcula MD5, SHA-1, SHA-256, SHA-384 e SHA-512 de uma vez, para texto ou para um arquivo. O arquivo é lido no seu navegador e nada é enviado. Cole o hash do publicador em Hash esperado. A ferramenta remove espaços e ignora maiúsculas antes de comparar, então um hash impresso em caixa alta ou em grupos ainda coincide. Arquivos muito grandes podem sobrecarregar a memória do navegador; nesse caso, use uma ferramenta de linha de comando como sha256sum no Linux, ou shasum -a 256 em um Mac.
O que uma coincidência informa
Um hash coincidente significa que a sua cópia é quase certamente idêntica ao arquivo que foi calculado. Isso não diz quem fez o cálculo, nem que o arquivo calculado era o que o publicador pretendia distribuir. Para isso, a origem importa mais que o algoritmo. Se o hash veio da página oficial de lançamentos do publicador e você chegou a ela diretamente, e não por um link em uma mensagem, a coincidência é uma evidência forte. Se o hash veio de um comentário, de um espelho ou de um fórum, trate-o como não verificado até encontrá-lo em uma página confiável.
Um checksum precisa de uma fonte confiável
Um checksum que está no mesmo servidor do arquivo só comprova que a cópia corresponde ao que aquele servidor tem. Se um atacante substituir o arquivo, pode substituir também o checksum ao lado dele. O checksum ajuda quando vem de um lugar separado, como as notas de lançamento assinadas do projeto, ou de uma página que você acessou de forma independente do link de download.
Hashes para senhas são diferentes
O armazenamento de senhas também usa hash, mas exige um hash lento, projetado para senhas, com um salt único para cada uma. Um hash rápido como o SHA-256 é a ferramenta errada nesse caso. Para downloads, o trabalho é comparar, e o SHA-256 faz isso muito bem.
Casos especiais
- Maiúsculas e minúsculas. As letras hexadecimais de A a F são iguais em qualquer caixa, então compare sem se preocupar com maiúsculas.
- Hashes truncados. Alguns sites exibem apenas o início de um hash. Uma coincidência curta prova pouco, então compare o valor inteiro.
- Vários arquivos. Alguns projetos publicam um único arquivo de checksum para uma versão inteira. Encontre a linha com o nome exato do arquivo, pois uma coincidência na linha de outro arquivo não prova nada.
Traduzido do Original em inglês com auxílio de IA.
Comentários
Ainda não há comentários. Seja o primeiro.


