Decodificador de Hash de Senha

Hashes de senhas armazenam credenciais de forma segura usando funcoes unidirecionais com salts e fatores de trabalho configuraveis. Esta ferramenta detecta e analisa automaticamente hashes no Modular Crypt Format (MCF), PHC String Format e esquemas LDAP, mostrando o algoritmo, parametros, salt, saida do hash e uma avaliacao de seguranca.

Especificacoes

Casos de Uso Comuns

  • Identificar qual algoritmo de hash um banco de dados usa para senhas
  • Auditar a seguranca de hashes de senhas durante testes de penetracao ou revisoes de seguranca
  • Verificar se fatores de custo do bcrypt e parametros do Argon2 atendem as recomendacoes OWASP
  • Entender os esquemas de armazenamento de senhas de diretorios LDAP
  • Depurar problemas de autenticacao inspecionando formato e parametros do hash

Funcionalidades

  • Deteccao automatica de formatos MCF ($1$, $2b$, $5$, $6$, $sha1$, $apr1$), PHC ($argon2id$, $scrypt$, $pbkdf2$) e LDAP ({SSHA}, {SHA}, {MD5})
  • Exibir algoritmo, variante, parametros (custo, rodadas, memoria, paralelismo), salt e saida do hash
  • Avaliacao de seguranca: critico (MD5/sem salt), fraco (SHA-1/custo baixo), moderado (SHA-crypt), forte (bcrypt 12+/argon2/scrypt)
  • Recomendacoes de avaliacao de seguranca com codigo de cores
  • Exibicao do formato de codificacao do hash (base64, hex, etc.)
  • Analisar multiplos hashes de entrada multilinha
  • Mostrar comprimento em bits do hash e formato de codificacao
  • Links para especificacoes relevantes de cada algoritmo

Exemplos

Hash de senha bcrypt

Experimente →

Um hash bcrypt com fator de custo 12 — o minimo recomendado para novas aplicacoes.

$2b$12$LJ3m4ys3Lg2VBe5E5Ij25eNsaDl3JK8i3pg7jBepGQhWcqMpqXA4q

Hash de senha Argon2id

Experimente →

Argon2id com 64 MB de memoria, 3 iteracoes e 4 threads — a melhor pratica atual.

$argon2id$v=19$m=65536,t=3,p=4$c29tZXNhbHQ$RdescudvJCsgt3ub+b+daw

Dicas

  • Fator de custo bcrypt 12+ e recomendado pela OWASP. Cada incremento dobra o tempo de computacao.
  • Argon2id e a melhor pratica atual — combina resistencia a canais laterais (argon2i) e resistencia a GPU (argon2d).
  • LDAP {SSHA} e SHA-1 com salt — melhor que {SHA}, mas ainda e um hash rapido. Migre para bcrypt ou Argon2.
  • Cole a saida do hashing de senha do painel Encode As para decodificar e verificar aqui.

Entendendo Decodificador de Hash de Senha

Hashing de senha e a pratica de armazenar senhas como hashes criptograficos unidirecionais em vez de texto simples. Quando um usuario define uma senha, o sistema faz o hash e armazena o resultado. Durante o login, o sistema faz o hash da senha enviada e compara o resultado com o hash armazenado. Como a funcao de hash e unidirecional, um atacante que obtenha o banco de dados de hashes nao pode recuperar diretamente as senhas.

Algoritmos modernos de hashing de senhas sao intencionalmente lentos e intensivos em memoria para resistir a ataques de forca bruta. O bcrypt usa um fator de custo configuravel onde cada incremento dobra o tempo de computacao. O Argon2 (vencedor da Password Hashing Competition de 2015) adiciona uso configuravel de memoria para resistir a ataques baseados em GPU. O scrypt tambem requer memoria significativa. Esses "hashes lentos" sao fundamentalmente diferentes de hashes rapidos (MD5, SHA-256) que sao projetados para velocidade e sao inadequados para armazenamento de senhas.

Hashes de senhas usam formatos de string padronizados para portabilidade. O Modular Crypt Format (MCF) usa delimitadores $: $2b$12$... para bcrypt, $5$ para SHA-256-crypt, $6$ para SHA-512-crypt. O PHC String Format (usado pelo Argon2) adiciona parametros nomeados: $argon2id$v=19$m=65536,t=3,p=4$salt$hash. Sistemas LDAP usam prefixos de esquema: {SSHA}, {PBKDF2}.

Cada hash inclui um salt — dados aleatorios combinados com a senha antes do hashing para garantir que senhas identicas produzam hashes diferentes. Sem salt, atacantes podem usar rainbow tables pre-computadas para buscar hashes de senhas comuns instantaneamente. O salt e armazenado junto com o hash (nao e secreto) e e gerado aleatoriamente para cada senha.

Para novas aplicacoes, Argon2id e a melhor pratica atual conforme recomendado pela OWASP. Se Argon2 nao estiver disponivel no seu framework, bcrypt com fator de custo 12+ e a proxima melhor opcao, e scrypt tambem e aceitavel. MD5, SHA-1 e SHA-256 simples nunca devem ser usados para senhas — sao rapidos demais e podem sofrer ataques de forca bruta a bilhoes de tentativas por segundo em GPUs modernas. O MD5 em particular foi projetado como um algoritmo de checksum rapido, nao para armazenamento de senhas, e possui vulnerabilidades de colisao conhecidas. Hashes MD5 sem salt tambem sao vulneraveis a ataques de rainbow table.

O fator de custo do bcrypt (o numero apos $2b$) e um expoente que controla o tempo de computacao. Custo 10 significa 2^10 = 1.024 iteracoes, enquanto custo 12 significa 2^12 = 4.096 iteracoes — quatro vezes mais lento que custo 10. A OWASP recomenda custo 12 como minimo. Cada incremento dobra o tempo, entao aumentar de 10 para 12 torna o hashing 4x mais lento tanto para o servidor quanto para qualquer atacante.

Um salt e um pepper desempenham papeis diferentes na seguranca de senhas. Um salt sao dados aleatorios armazenados junto com o hash, unicos por senha, garantindo que senhas identicas produzam hashes diferentes — salts nao sao secretos. Um pepper e uma chave secreta aplicada a todas as senhas (tipicamente via HMAC), armazenada separadamente do banco de dados na configuracao da aplicacao ou em um modulo de seguranca de hardware. Se o banco de dados for comprometido mas o pepper nao, o atacante nao pode quebrar os hashes mesmo com os salts. Usar ambos fornece defesa em profundidade.

← Voltar para todas as ferramentas