utilduck
Home · Desenvolvedor · Gerador de Hash

Gerador de Hash

Digite qualquer texto para ver na hora seus digests SHA-1, SHA-256, SHA-384 e SHA-512.

SHA-1
-
SHA-256
-
SHA-384
-
SHA-512
-

Sobre hashes criptográficos

Uma função de hash criptográfica recebe qualquer entrada e produz uma string de dígitos hexadecimais de comprimento fixo. Até uma pequena mudança na entrada altera completamente a saída. Isso torna os hashes úteis para verificar integridade de arquivos, armazenar senhas e assinaturas digitais.

SHA-256 e SHA-512 fazem parte da família SHA-2 e continuam seguros para a maioria dos usos hoje. O SHA-1 é considerado fraco contra ataques de colisão e está incluído aqui apenas para compatibilidade e fins legados. O MD5 não está disponível nesta ferramenta porque as políticas de segurança do navegador o restringem via Web Crypto API.

Como gerar um hash SHA de um texto?

Para gerar um hash SHA, os bytes UTF-8 do texto são passados pelo algoritmo de hash escolhido (SHA-1, SHA-256, SHA-384 ou SHA-512), que processa os dados por rodadas fixas de operações bit a bit e produz um digest de comprimento fixo em hexadecimal. Exemplo: o hash SHA-256 de "hello" é sempre 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824.

Passos para gerar um hash criptográfico

  1. Converta o texto de entrada em bytes usando codificação UTF-8.
  2. Escolha um algoritmo de hash: SHA-1 (saída de 160 bits), SHA-256 (256 bits), SHA-384 (384 bits) ou SHA-512 (512 bits).
  3. Passe os bytes pela função de compressão do algoritmo, que roda em rodadas fixas independentemente do tamanho da entrada.
  4. O algoritmo produz um digest binário de comprimento fixo — 20 bytes para SHA-1, 32 para SHA-256, 48 para SHA-384, 64 para SHA-512.
  5. Converta o digest binário em uma string hexadecimal minúscula para exibição, usando dois caracteres hex por byte.

Comprimentos de saída do hash

SHA-1 = 160 bits (40 caracteres hex) | SHA-256 = 256 bits (64 caracteres hex) | SHA-384 = 384 bits (96 caracteres hex) | SHA-512 = 512 bits (128 caracteres hex)
  • Digest = a saída de comprimento fixo de uma função de hash, mostrada aqui em hexadecimal minúsculo
  • Qualquer alteração na entrada, mesmo um caractere, produz um digest completamente diferente (o efeito avalanche)

Exemplos de hashes do texto "hello"

AlgoritmoHash de "hello"
SHA-1aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
SHA-2562cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
SHA-38459e1748777448c69de6b800d7a33bbfb9ff1b463e44354c3553bcdb9c666fa90125a3c79f90397bdf5f6a13de828684f
SHA-5129b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043

Perguntas frequentes

O SHA-1 é seguro para usar?

O SHA-1 não é seguro para fins de segurança como assinaturas digitais ou validação de certificados, porque pesquisadores demonstraram um ataque de colisão prático em 2017 (duas entradas diferentes produzindo o mesmo hash). Ele está incluído aqui apenas para compatibilidade com sistemas legados e usos não relacionados à segurança, como checksums simples; use SHA-256 ou superior para qualquer coisa sensível à segurança.

Por que o MD5 não é oferecido nesta ferramenta?

Esta ferramenta usa a Web Crypto API embutida no navegador (crypto.subtle.digest), que suporta SHA-1 e a família SHA-2, mas não implementa MD5, já que o MD5 é considerado criptograficamente quebrado e os fabricantes de navegadores não o adicionaram à API padrão.

Posso reverter um hash de volta ao texto original?

Não. Uma função de hash criptográfica é uma função de mão única por design — não existe algoritmo para recuperar a entrada a partir do digest. Ferramentas que parecem "quebrar" hashes na verdade funcionam gerando hash de grandes listas de tentativas e comparando os resultados, e não revertendo a matemática.

Para que serve um hash se ele não pode ser revertido?

Hashes verificam que os dados não mudaram: comparar o hash de um arquivo baixado com um hash publicado confirma a integridade, e comparar hashes de senhas (com salting adequado) permite que um sistema verifique um login sem armazenar a senha em texto puro.

Esta ferramenta gera hash de texto UTF-8 inteiramente no seu navegador usando a Web Crypto API; ela não gera hash de arquivos enviados, não oferece MD5 e não adiciona salt, então um texto de entrada idêntico sempre produz o hash idêntico mostrado aqui.

Sources: FIPS 180-4 — Secure Hash Standard (SHS)