SomeeLab.tools

Verificador de checksum de arquivos

Calcule o MD5, o SHA-1 ou o SHA-256 de um arquivo e confira com o hash divulgado por quem distribuiu. O arquivo é lido no seu navegador.

ou solte aqui

A pergunta que uma soma de verificação responde

Uma soma de verificação responde a uma coisa só: o arquivo que você acabou de baixar é o mesmo que quem distribui publicou? Basta um byte diferente para o hash mudar por inteiro: valores iguais querem dizer que nada se perdeu no caminho e que ninguém trocou o arquivo. Quando não batem, não abra o arquivo, baixe de novo e, se a segunda cópia também não bater, procure outra origem.

Onde fica o hash publicado

A maioria dos projetos deixa um arquivo SHA256SUMS ao lado do download, com uma linha por arquivo publicado. As releases do GitHub trazem os valores nas notas da versão ou como anexo, as distribuições Linux guardam tudo junto da ISO e os registros de contêiner imprimem um identificador que começa com sha256:.

Um hash tirado do mesmo lugar prova menos

Se o arquivo e o hash vierem do mesmo servidor, quem conseguisse trocar o arquivo trocaria o hash na mesma visita, e os dois bateriam perfeitamente. É por isso que projetos sérios assinam o arquivo de somas: junto de SHA256SUMS fica SHA256SUMS.gpg, assinado com uma chave publicada em separado. Confira a assinatura primeiro e só então confie nas somas. Sem assinatura, um hash vindo de outro canal vale mais do que o que está encostado no arquivo.

Por que MD5 e SHA-1 continuam por aí

Os dois estão quebrados no que interessa à segurança: dá para construir dois arquivos diferentes com o mesmo MD5, e colisões de SHA-1 já foram demonstradas em formatos de documento reais. Nenhum deles prova que ninguém mexeu no arquivo. O que eles ainda pegam são acidentes: um download interrompido, um disco com defeito, um espelho com cópia velha. Muitos projetos antigos publicam apenas o MD5, e comparar isso é melhor do que não comparar nada. Quando houver SHA-256 também, use esse.

Por que cada lugar escreve de um jeito

O resumo é só um número, então cada um escreve do seu jeito. Uns usam minúsculas, outros maiúsculas; aqui tanto faz, porque o valor é o mesmo. Os registros colocam o algoritmo na frente, como em sha256:. O comando sha256sum imprime o hash, dois espaços e o nome do arquivo, enquanto o openssl dgst põe o nome primeiro e o hash depois de um sinal de igual. Cole qualquer uma dessas formas e o hash é retirado da linha para você.