[HACK] Crypto 2004: colisiones en varias funciones hash

Jaime Suárez jsuarez at ono.com
Fri Aug 27 20:30:33 CEST 2004


Un equipo chino celoso sin duda de los logros deportivos de sus
compatriotas :-) ha anunciado hace pocos días en Crypto 2004 que
pueden encontrar de manera sistemática y en poco tiempo colisiones
en MD4, MD5, HAVAL-128 y RIPEMD. Al parecer ha habido ovaciones en
pie por parte de la audiencia después del anuncio.

MD5 parece aún más enfermo si es que no muerto, hay ataques sobre
SHA-0 bastante mejores que la fuerza bruta... ¿buscamos ya un
sustituto para SHA-1?

El informe de los autores en: http://eprint.iacr.org/2004/199.pdf
Más enlaces y algunas explicaciones adicionales en mi página:
http://mundocripto.come.to/not0408.html

A modo de demostración adjunto un scriptito Python.
Saludos.

-- 
.O.  Jaime Suárez  Linux user #114.688  Clave pública 0x6E90E61B
..O  Criptografía, seguridad, passwords en http://MundoCripto.come.to
OOO  El pasado se perpetúa a sí mismo por la falta de presencia.
-------------- next part --------------
#!/usr/bin/env python
#coding:iso-8859-1
import binascii
import md5
import sha

v1="d131dd02c5e6eec4693d9a0698aff95c2fcab58712467eab4004583eb8fb7f8955ad34\
0609f4b30283e488832571415a085125e8f7cdc99fd91dbdf280373c5bd8823e3156348f5b\
ae6dacd436c919c6dd53e2b487da03fd02396306d248cda0e99f33420f577ee8ce54b67080\
a80d1ec69821bcb6a8839396f9652b6ff72a70"

v2="d131dd02c5e6eec4693d9a0698aff95c2fcab50712467eab4004583eb8fb7f8955ad34\
0609f4b30283e4888325f1415a085125e8f7cdc99fd91dbd7280373c5bd8823e3156348f5b\
ae6dacd436c919c6dd53e23487da03fd02396306d248cda0e99f33420f577ee8ce54b67080\
280d1ec69821bcb6a8839396f965ab6ff72a70"

m = md5.new()
m.update(binascii.unhexlify(v1))
print "md5(v1)=", binascii.hexlify(m.digest())
s = sha.new()
s.update(binascii.unhexlify(v1))
print "sha1(v1)=", binascii.hexlify(s.digest())

m = md5.new()
m.update(binascii.unhexlify(v2))
print "md5(v2)=", binascii.hexlify(m.digest())
s = sha.new()
s.update(binascii.unhexlify(v2))
print "sha1(v2)=", binascii.hexlify(s.digest())


More information about the hacking mailing list