MD5

Message Digest 5 — hash de 128 bits, criptograficamente quebrado

Ronald Rivest (1991) · RFC 1321 · colisões triviais hoje

Função de Hash · Obsoleto

De onipresente a inseguro

Hash · Obsoleto
O MD5 gera um resumo de 128 bits e dominou os anos 1990–2000. Hoje é criptograficamente quebrado: encontrar colisões é trivial — questão de segundos em um computador comum.

A queda

2004 → Wang et al. encontram colisões
2008 → CA falsa via colisão MD5
2012 → malware Flame forja
    assinatura Microsoft com MD5

A resistência a colisão (nominal 264) colapsou para esforço praticamente nulo.

Consequência real

Em 2008, pesquisadores criaram uma Autoridade Certificadora falsa explorando colisões MD5; o malware Flame (2012) forjou uma assinatura de código que se passava pela Microsoft. Colisão em hash de assinatura = identidade forjável.

O que (não) fazer com MD5

Nunca use para

  • Assinaturas digitais ou certificados.
  • Verificar integridade contra um adversário.
  • Armazenar senhas (além de quebrado, é rápido demais).

Único uso tolerável

Como checksum não criptográfico contra corrupção acidental (ex.: detectar erro de transmissão ou deduplicar arquivos), onde não há um atacante tentando enganar você.

Substituto correto: use SHA-256 (ou SHA-3) para qualquer finalidade de segurança.
Resumo da ameaça: resistência a colisão = zero, na prática. Resistência a pré-imagem ainda é melhor, mas isso não salva o algoritmo para usos de segurança.

Em resumo

O MD5 está criptograficamente morto: colisões são triviais e já foram usadas para forjar certificados e assinaturas. Aceitável apenas como checksum contra erro acidental; jamais para segurança. Migre para SHA-256/SHA-3.

SHA-256 SHA-1 HMAC Todos os algoritmos
Voltar aos Pilares