MD5 (Message Digest 5) é uma função criptográfica que gera um hash de 128 bits a partir de uma entrada de até 2^64 bits. Ele é representado por 32 caracteres hexadecimais, pois cada caractere hexadecimal codifica 4 bits. O resultado funciona como uma impressão digital de um arquivo ou texto e pode ser usado em verificações de integridade. O MD5 foi criado em 1991 como substituto do algoritmo MD4, que também gera 128 bits, mas apresentou falhas de segurança desde cedo, especialmente colisões. Em 1996 foram publicadas vulnerabilidades práticas do MD5 e, desde então, ele é considerado inseguro; novas colisões foram demonstradas em 2004. Saiba mais sobre colisões aqui.
Apesar de inseguro, o MD5 ainda é muito usado como impressão digital de arquivos, assim como SHA-1, e alguns administradores pouco informados sobre segurança ainda o usam para armazenar senhas.
Um hash MD5 busca identificar uma entrada de forma quase única, embora não possa ser matematicamente único porque o espaço de 128 bits é finito. Por exemplo, a palavra “Password” com P maiúsculo gera este hash:
Como o MD5 é uma função hash, ele não é reversível. Não é possível calcular o texto original apenas observando o hash. Funções hash permitem comparar dados sem guardar seu conteúdo original. No entanto, sistemas modernos de senhas não devem usar MD5; eles utilizam funções de hash de senha com salt e deliberadamente lentas.
Então, se o MD5 é uma função unidirecional, como ele é “descriptografado”? Na verdade, o MD5 não é descriptografado; usamos essa palavra porque ela é fácil de entender. Um possível texto original só pode ser identificado calculando candidatos e comparando seus hashes com o valor enviado, ou encontrando uma correspondência já calculada em um banco de hashes e textos. É isso que este site oferece. Nosso banco contém bilhões de hashes. Quando você informa um hash, procuramos uma correspondência e, se ela existir, mostramos o texto associado. O banco reúne dicionários públicos e listas próprias criadas a partir de análises estatísticas de senhas realmente usadas. Hashes não encontrados são testados novamente periodicamente com novos candidatos, por isso pode valer a pena voltar mais tarde. Também existem serviços pagos de força bruta, como hashes.com ou onlinehascrack.comOu, se você tiver uma boa GPU, pode baixar Hashcat e usá-lo para testar hashes MD5 por conta própria.
Não. O MD5 é rápido demais e possui vulnerabilidades de colisão conhecidas. Ele ainda pode ser útil para reconhecer um resumo legado ou verificar um arquivo antigo quando um valor MD5 já foi publicado, mas não deve ser escolhido para novas assinaturas de segurança nem para armazenar senhas.
Senhas devem ser protegidas com um algoritmo de hash criado especificamente para esse fim, como Argon2id, scrypt ou bcrypt. Esses sistemas usam um salt aleatório para cada senha e um fator de trabalho ajustável. Não invente um método próprio para misturar salt e senha: construções criptográficas caseiras são difíceis de revisar e não oferecem a proteção de um algoritmo reconhecido.
Um pepper protegido separadamente pode adicionar uma camada extra em alguns sistemas, mas não substitui um algoritmo adequado, o gerenciamento seguro de chaves nem um plano de migração para hashes legados.
Um resumo MD5 contém 32 caracteres hexadecimais, que representam 128 bits.
Não. O serviço procura uma correspondência previamente calculada entre o hash e o texto; ele não inverte o MD5 matematicamente.
Uma pontuação de complexidade combina a estrutura do texto e o tipo de transformação. A maior parte do banco continua gratuita, enquanto as correspondências mais raras podem ser desbloqueadas uma única vez.
O texto pode não estar no corpus, ter salt, estar codificado de outra forma, ser muito longo ou aleatório. Não encontrá-lo não significa que o hash seja inválido.
Não. O MD5 é rápido demais e não deve ser usado em novos sistemas de senhas. Prefira Argon2id, scrypt ou bcrypt.
We have found 46,684,833 hashes since 2015, with an overall match rate of 59.7%.
Uma busca no Md5Decrypt compara um resumo com correspondências já indexadas. Ela não torna uma função hash reversível.
O banco de dados só pode recuperar texto já indexado. Salts, sequências raras e valores aleatórios reduzem bastante a chance de correspondência.
Não. O site procura um valor conhecido que produza o mesmo resumo.
Use Argon2id, scrypt ou bcrypt com um salt exclusivo e um custo adequado; nunca uma construção própria.