Pular para o conteúdo
ecdsa.com

MD5

A função de hash de 128 bits criada por Ron Rivest em 1991 (RFC 1321), quebrada para colisões desde 2004 e para colisões de prefixo escolhido desde 2007, e insegura para qualquer uso de segurança em que um atacante possa influenciar a entrada.
Também escrito comoMD5 hashmd5sumRFC 1321

Wang e colegas publicaram as primeiras colisões de MD5 em 2004; Stevens, Lenstra e de Weger tornaram práticas as colisões de prefixo escolhido em 2007 e, em 2008, uma equipe as usou para obter um certificado fraudulento de CA intermediária de uma CA comercial que ainda assinava com MD5. O malware Flame (2012) usou uma colisão de prefixo escolhido do MD5 para forjar um certificado de assinatura de código da Microsoft. Hoje as colisões levam segundos em um notebook.

A RFC 6151 (2011) diz que o MD5 não deve ser usado onde a resistência a colisões é necessária; a RFC 9155 removeu as assinaturas MD5 do TLS 1.2. O HMAC-MD5 e o MD5 como checksum não adversarial (detecção de corrupção acidental, chaves de cache) não estão quebrados da mesma forma, mas não há motivo para escolher o MD5 em projetos novos quando o SHA-256 costuma ser mais rápido em CPUs modernas (em um núcleo de Apple M4 Max, o OpenSSL 3.6.5 calcula hashes MD5 a cerca de 0,86 GB/s e SHA-256 a 2,85 GB/s).

Padrões e referências

Todos os termos