md5

About Speed Hashing

Hace unos días atrás Jeff Atwood, el autor del famoso blog Coding Horror menciona mi trabajo de de 2005 sobre las colisiones de MD5: Eduardo Diaz has described a scheme by which two programs could be packed into two archives with identical MD5 hash. A special “extractor” program turn one archive into a “good” program and the other into an “evil” one. Aparte de que me honra la mención, y el autobombo :), hay dos cosas que me gustaría comentar sobre ese post.

Seguridad y oportunidad

En 2005 publiqué una prueba de concepto que mostraba lo vulnerable que es MD5 para ser usado como “firma digital”, en 2007 Peter Selinger basándose en mi trabajo crea un mecanimos para automatizar el proceso de generar firmas falsas. En 2009 comenté que la vulnerabilidad seguía ahí. Y estamos en 2012 y aún MD5 está disponible y sigue siendo usado para generar claves y como mecanismo de firma electrónica. Incluso todavía sigue siendo recomendado por instituciones gubernamentales como mecanismo de verificación de integridad de archivos.

MD5: las vulnerabilidades siguen ahí

En 2005 escribí una prueba de concepto aprovechando la vulnerabilidad de MD5 ( Busindre ha explicado mucho mejor que yo, en español, mi prueba de concepto), en realidad la prueba de concepto tomaba las ideas expuestas por Dan Kaminsky en su ahora bastante famoso paper MD5 To Be Considered Harmful Someday. Hace unos días un grupo de investigadores europeos publicaron otra prueba de concepto igual de interesante, en un paper irónicamente llamado: MD5 considered harmful today.

Mi mayor aporte a la seguridad informática

Escribo este artículo con orgullo y preocupación. Orgullo por el impacto que logró mi trabajo y preocupación porque, bueno ya van a ver porque. El año 2005 escribí un artículo en codeproject donde mostré un esquema práctico que explotaba una de las vulnerabilidades encontradas en ese tiempo al algoritmo MD5. El artículo alcanzó notoriedad al ser destacado en Slashdot, y en Kriptópolis. Mi artículo original está en inglés y hay un (muy breve) resumen en este mismo blog.