Ir para o conteúdo principal
Bethemesh

Gerador de hash

Obtenha os hashes MD5, SHA-1, SHA-256, SHA-384 e SHA-512 de um texto ou de qualquer ficheiro, em hexadecimal e Base64, com cópia num clique. O ficheiro é lido localmente e nunca é enviado.

  • Área de transferência
Automatizar

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.

Origem

Hashes

MD5 e SHA-1 ainda servem como somas de verificação, mas admitem colisões: para segurança, utilize SHA-256 ou superior.

Esta ferramenta foi útil?

Como funciona esta ferramenta?

Este gerador calcula ao mesmo tempo os hashes MD5, SHA-1, SHA-256, SHA-384 e SHA-512 de um texto ou de um ficheiro, cada um em hexadecimal minúsculo e em Base64. Destina-se a quem precisa de verificar uma transferência, confirmar se duas versões de um ficheiro são idênticas ou indicar uma soma de verificação num script ou numa documentação.

Uma função de hash transforma uma entrada de qualquer tamanho num resumo de comprimento fixo: 128 bits para MD5, 160 bits para SHA-1 e 256, 384 e 512 bits para a família SHA-2 definida na norma FIPS 180-4. O mesmo conteúdo dá sempre o mesmo hash, e a menor alteração produz um resultado completamente diferente. Por exemplo, o SHA-256 de «hello» é 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824, enquanto «hello» seguido de uma quebra de linha dá 5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03. O texto é codificado em UTF-8 antes do cálculo, tal como fazem o sha256sum e a maioria das bibliotecas.

Os hashes SHA são calculados com a API Web Crypto do navegador; o MD5, que a Web Crypto não disponibiliza, é calculado por uma implementação local. O navegador lê o ficheiro a partir do seu disco, sem o enviar, e processa os bytes em bruto, pelo que o resultado coincide com sha256sum, certutil -hashfile ou Get-FileHash. Cada hash é apresentado em hexadecimal minúsculo, o formato dos ficheiros SHA256SUMS, e em Base64, o formato dos atributos integrity (SRI) e do cabeçalho Content-Digest (RFC 9530). O MD5 e o SHA-1 são assinalados como inadequados para segurança, porque existem colisões práticas para ambos (a colisão SHAttered do SHA-1 data de 2017).

Como usar esta ferramenta

  1. Introduza um texto ou escolha um ficheiro

    Cole o texto na área de introdução ou selecione um ficheiro de qualquer tipo: o navegador lê-o sem o enviar para lado nenhum.

  2. Leia os cinco hashes

    MD5, SHA-1, SHA-256, SHA-384 e SHA-512 são calculados em simultâneo, cada um em hexadecimal minúsculo e em Base64; o MD5 e o SHA-1 apresentam o aviso «apenas somas de verificação».

  3. Copie o valor de que precisa

    Utilize o botão de cópia do algoritmo e do formato pretendidos e cole o hash na sua comparação, no seu script ou na sua documentação.

Resumo criptográfico

Resumo criptográfico

resumo = HASH(bytes da mensagem)

Casos de uso

Verificar uma imagem ISO transferida

As distribuições Linux e muitos fabricantes publicam um ficheiro SHA256SUMS junto das transferências. Calcule o SHA-256 do ficheiro recebido e compare-o com o valor oficial para detetar uma transferência corrompida ou adulterada.

Saber se um ficheiro mudou após uma transferência

Dois ficheiros com o mesmo SHA-256 são idênticos byte a byte. Compare o hash de uma cópia de segurança, de uma exportação ou de um contrato antes e depois de o copiar para uma pen USB ou de o enviar, para confirmar que não foi alterado.

Indicar uma soma de verificação num script

Uma fórmula Homebrew, um Dockerfile ou um script de instalação pedem frequentemente o SHA-256 de um ficheiro. Gere-o localmente e copie diretamente a forma hexadecimal ou Base64 pretendida.

Exemplos

Hash SHA-256 de « abc »

Entrada

Origem: Texto; Texto a processar: abc; Codificação: Hexadecimal

Resultado

SHA-256: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad

Dicas e boas práticas

  • Um espaço ou uma quebra de linha final alteram todo o hash: se o seu resultado for diferente do do terminal, verifique se o echo não acrescentou uma quebra de linha (utilize echo -n ou printf).
  • Para verificar uma transferência, calcule o hash do próprio ficheiro e não do seu conteúdo copiado e colado: copiar e colar pode alterar as quebras de linha ou a codificação.
  • Nunca guarde uma palavra-passe como um simples MD5 ou SHA-256: utilize uma função lenta e com sal, como Argon2id, scrypt, bcrypt ou PBKDF2, conforme recomenda a OWASP Password Storage Cheat Sheet.

Fontes e referências

Perguntas frequentes

É possível desencriptar ou reverter um hash SHA-256?

Não, uma função de hash é unidirecional e não existe qualquer operação de desencriptação. Os sites que «desencriptam» hashes limitam-se a procurar o valor em tabelas de hashes pré-calculados. Isso funciona com palavras comuns ou palavras-passe fracas, nunca com um conteúdo longo e desconhecido.

O MD5 ainda é seguro?

Para detetar uma corrupção acidental, sim: o MD5 continua rápido e muito usado como soma de verificação. Para qualquer uso de segurança (assinaturas, certificados, integridade face a um atacante, palavras-passe), não, porque é possível criar em segundos dois ficheiros diferentes com o mesmo MD5. O mesmo se aplica ao SHA-1, com um custo maior.

Qual é a diferença entre SHA-256 e SHA-512?

Ambos pertencem à família SHA-2: o SHA-256 produz 256 bits (64 caracteres hexadecimais) e o SHA-512 produz 512 bits (128 caracteres). Os dois são seguros atualmente; o SHA-256 é o mais difundido, e o SHA-512 é muitas vezes mais rápido em processadores de 64 bits. O SHA-384 é uma variante truncada do SHA-512, comum em SRI.

Porque é que o meu hash é diferente do da linha de comandos?

A causa mais frequente é um carácter invisível: uma quebra de linha acrescentada pelo echo, finais de linha do Windows (CRLF) em vez de LF ou um espaço final. A codificação também conta, e a ferramenta processa o texto em UTF-8. Num ficheiro, calcular diretamente o hash dá exatamente o mesmo resultado que sha256sum ou Get-FileHash.

Dois ficheiros diferentes podem ter o mesmo hash?

Em teoria sim, porque o número de hashes possíveis é finito: chama-se colisão. Nunca foi encontrada uma colisão de SHA-256 e produzir uma continua fora de alcance. Para o MD5 e o SHA-1 as colisões são exequíveis na prática, daí o aviso apresentado pela ferramenta.

Posso calcular o hash de um ficheiro grande ou confidencial?

Sim: o navegador lê o ficheiro no seu dispositivo e nunca o envia, o que é adequado a documentos confidenciais. O limite prático de tamanho depende da memória disponível no seu dispositivo. Para imagens de disco com vários gigabytes, um utilitário de linha de comandos continua a ser mais indicado.

Ferramentas relacionadas

Ferramentas semelhantes ou complementares a esta.

Ferramentas semelhantes

Verifique se dois hashes ou somas de verificação coincidem, independentemente de maiúsculas, espaços ou dois-pontos.

Segurança e privacidadeUtilizar 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

Gere o atributo integrity SRI de um script ou folha de estilos a partir de um conteúdo, ficheiro ou URL de CDN.

Segurança e privacidadeUtilizar esta ferramenta