Ir para o conteúdo principal
Bethemesh

Comparador de hash

Cole dois hashes: a ferramenta normaliza-os (maiúsculas, espaços, dois-pontos, prefixos como sha256-), indica se coincidem, o algoritmo provável e a posição da primeira diferença.

  • Área de transferência

Integrar este widget

Personalize o resultado, verifique a pré-visualização e copie o código.

Pré-visualização

Tipo de código de integração

Código a copiar

Responsivo e redimensionado automaticamente pela Bethemesh.

Maiúsculas, espaços, dois pontos e prefixos como «sha256-» são ignorados.

Esta ferramenta foi útil?

Como funciona esta ferramenta?

Este comparador verifica se dois hashes são idênticos sem que tenha de os rever carácter a carácter. Serve para confrontar a soma de verificação publicada por um fabricante com a que calculou, ou duas impressões digitais de certificado apresentadas em formatos diferentes.

Antes da comparação, ambos os valores são normalizados: convertidos em minúsculas, sem espaços, quebras de linha nem dois-pontos, e sem um eventual prefixo de algoritmo inicial como «sha256-» ou «sha256=». Assim, «AB:CD:EF» e «abcdef» são considerados iguais, tal como «sha256=2cf24d…» (o formato do GitHub) e «2cf24d…». O comprimento do valor normalizado permite depois estimar o algoritmo: 32 caracteres hexadecimais para MD5, 40 para SHA-1, 64 para SHA-256, 96 para SHA-384 e 128 para SHA-512. Esta deteção é apenas uma probabilidade, pois o SHA3-256 ou o BLAKE2s também produzem 64 caracteres.

A comparação é feita em tempo constante: a ferramenta percorre todos os caracteres em vez de parar na primeira diferença, uma precaução habitual para que a duração não revele onde dois segredos diferem. Quando os valores não coincidem, é indicada a posição do primeiro carácter diferente, o que ajuda a detetar uma cópia truncada ou um erro de seleção. Comprimentos diferentes indicam muitas vezes dois algoritmos distintos, por exemplo um SHA-1 comparado com um SHA-256. Uma correspondência prova apenas que o seu ficheiro é idêntico ao que serviu para produzir a referência: a confiança depende da origem dessa referência, idealmente uma página HTTPS oficial ou um ficheiro assinado.

Como usar esta ferramenta

  1. Cole o valor de referência

    Introduza no primeiro campo o hash oficial ou esperado, com ou sem separadores e prefixo.

  2. Cole o valor a verificar

    Acrescente no segundo campo o hash que calculou ou recebeu.

  3. Leia o resultado

    A ferramenta indica se os dois valores coincidem, o algoritmo provável segundo o comprimento e, em caso de diferença, a posição da primeira discrepância.

Casos de uso

Confirmar uma transferência com o checksum oficial

Cole o valor publicado na página de transferência (Ubuntu, VeraCrypt, Python…) e o obtido com sha256sum ou Get-FileHash. O PowerShell apresenta o hash em maiúsculas e a página em minúsculas: a ferramenta compara sem distinguir maiúsculas.

Comparar impressões digitais de certificado

Os navegadores e o OpenSSL mostram muitas vezes a impressão digital SHA-256 de um certificado no formato «AB:CD:…». Compare-a com um valor sem separadores de um ficheiro de configuração ou fornecido por um colega para confirmar que se trata do mesmo certificado.

Verificar manualmente uma assinatura de webhook

Durante a depuração, compare o cabeçalho X-Hub-Signature-256 do GitHub, com o prefixo «sha256=», com o HMAC que recalculou: o prefixo é ignorado automaticamente.

Exemplos

Impressões digitais hexadecimais iguais

Entrada

Hash de referência: AB:CD:EF; Hash a verificar: abcdef

Resultado

Os hashes coincidem. Valores normalizados: abcdef e abcdef.

Dicas e boas práticas

  • Compare dois valores na mesma codificação: um SHA-256 em hexadecimal (64 caracteres) e o mesmo em Base64 (44 caracteres) nunca coincidirão. O gerador de hash apresenta as duas formas.
  • Se os comprimentos apontarem para dois algoritmos diferentes, recalcule o hash com o algoritmo indicado pelo fabricante antes de concluir que o ficheiro está corrompido.
  • Obtenha o valor de referência de uma fonte distinta do ficheiro, como a página HTTPS oficial: quem substituiu o ficheiro num espelho pode ter substituído também o checksum publicado ao lado.

Fontes e referências

Perguntas frequentes

Como verifico o checksum de um ficheiro transferido?

Calcule o hash do ficheiro com o algoritmo indicado pelo fabricante, por exemplo com sha256sum no Linux, shasum -a 256 no macOS, Get-FileHash no Windows ou com o gerador de hash. Depois cole esse valor e o valor oficial nos dois campos. Se coincidirem, o seu ficheiro é idêntico ao publicado.

As maiúsculas contam num hash?

Não num hash hexadecimal: «A1B2» e «a1b2» representam os mesmos bytes, razão pela qual o PowerShell (maiúsculas) e o sha256sum (minúsculas) dão resultados equivalentes. Em Base64, pelo contrário, maiúsculas e minúsculas codificam valores diferentes. É preferível comparar a forma hexadecimal.

Como sei que algoritmo produziu um hash?

O comprimento é o melhor indício: 32 caracteres hexadecimais para MD5, 40 para SHA-1, 64 para SHA-256, 96 para SHA-384 e 128 para SHA-512. Não é uma certeza, porque outros algoritmos produzem os mesmos comprimentos (o SHA3-256 também dá 64 caracteres). O nome do ficheiro (SHA256SUMS) ou a documentação do fabricante esclarecem a dúvida.

O que significa um hash que não coincide?

O seu ficheiro é diferente do que serviu para calcular a referência: transferência interrompida, ficheiro corrompido, versão errada ou alteração maliciosa. Verifique primeiro se está a comparar o ficheiro certo com o mesmo algoritmo e, depois, volte a transferi-lo da fonte oficial. Não execute um ficheiro cujo hash não coincide.

Porquê comparar em tempo constante?

Uma comparação simples para no primeiro carácter diferente, e o tempo de resposta pode revelar quantos caracteres estão corretos. No servidor, é um risco real para assinaturas HMAC ou tokens, por isso existem crypto.timingSafeEqual ou hmac.compare_digest. A ferramenta aplica a mesma boa prática, ainda que o risco seja insignificante no seu próprio navegador.

Uma correspondência garante que o ficheiro é seguro?

Não, prova que o seu ficheiro é idêntico ao de referência, não que este esteja limpo. Se o site e o respetivo checksum tiverem sido comprometidos em conjunto, os dois valores continuarão a coincidir. Uma assinatura GPG ou Sigstore verificada com a chave do fabricante dá essa garantia adicional.

Ferramentas relacionadas

Ferramentas semelhantes ou complementares a esta.

Ferramentas semelhantes

Calcule de uma só vez os hashes MD5, SHA-1, SHA-256, SHA-384 e SHA-512 de um texto ou ficheiro.

Segurança e privacidadeEm destaqueUtilizar esta ferramenta

Calcule um HMAC SHA-1, SHA-256, SHA-384 ou SHA-512 em hex ou Base64 e verifique uma assinatura de webhook.

Segurança e privacidadeUtilizar esta ferramenta

Descodifique um certificado X.509 ou um CSR em PEM: sujeito, emissor, datas, SAN, chave pública e impressão digital SHA-256.

Segurança e privacidadeUtilizar esta ferramenta