Los hackers pueden manipular algoritmos obsoletos para darle la misma firma digital a dos documentos muy diferentes.
Los documentos en línea confidenciales, tales como certificados que avalan las páginas bancarias, tienen "huellas digitales" que los identifican, sin revelar su contenido. Las huellas digitales se producen a partir de los contenidos de los documentos mediante algoritmos que, supuestamente, son irreversibles. Pero recientemente, las variedades más viejas de algoritmos se han debilitado. El venerable MD5, por ejemplo, fue descifrado, facilitando que se introduzca una falsificación. Marc Stevens, un estudiante de doctorado en criptografía del Centrum Wiskunde and Informatica en Amsterdam, Países Bajos, ha creado una serie de demostraciones de cómo puede fallar el MD5. Uno se muestra aquí: aunque las dos caras son diferentes, sus huellas digitales son las mismas. Este es un ejemplo inofensivo, pero que tiene implicancias serias para la ciencia forense digital.
A. Dos documentos
La huellas digitales a veces se utilizan para filtrar archivos conocidos de entre los miles en el ordenador de un supuesto criminal, ayudando a los investigadores a centrarse en los archivos que podrían contener pruebas o contrabando. Pero Marc Stevens puede usar el algoritmo de encriptación descifrado del MD5 para darle la misma huella digital a dos archivos (como, por ejemplo, con las dos imágenes que se muestran aquí). Si la huella digital de un archivo manipulado inofensivo figura en una biblioteca de uso común, el hecho de compartir su huella digital podría pasar desapercibido.
B. La adición de datos
Stevens comienza por agregar datos chatarra a cada archivo para que sean del mismo tamaño. (El MD5 controla la extensión del archivo.) A continuación, calcula la diferencia entre las huellas digitales de los dos archivos. Él sigue añadiendo datos a ambos archivos, ahora que calculó la diferencia entre sus huellas digitales. Esta imagen, leída de izquierda a derecha, ilustra el método: los bits coloridos representan las diferencias resultantes en la medida en que el proceso de Stevens se aplica una y otra vez, hasta que finalmente produce huellas digitales idénticas.
C. Huella digital
Una huella digital identifica a un archivo sin revelar su contenido. Aunque es teóricamente posible que dos archivos puedan tener la misma huella digital, un buen algoritmo aritmético criptográfico supuestamente logra que eso sea casi imposible. Stevens puede utilizar su sistema para manipular cualquier par de archivos, para que produzcan la misma huella digital MD5 (una situación llamada "colisión"). Las huellas digitales pueden utilizarse para crear firmas digitales (en la foto), que pueden certificar la identidad y origen de un documento.
Procesamiento rápido
Aunque siempre es técnicamente posible manipular dos archivos para que produzcan la misma huella digital, un algoritmo fuerte no puede descifrarse sin grandes cantidades de tiempo y poder de procesamiento. Pero el sistema de Stevens trabaja con recursos que son fáciles de obtener. El forzó que las imágenes que se muestran aquí produjeran la misma huella digital en sólo un día, utilizando su ordenador portátil y una consola PlayStation 3. Stevens asevera que los múltiples núcleos de procesamiento de la PlayStation permiten que funcione como un conjunto de 40 ordenadores con el fin de completar los cálculos criptográficos.
Crédito: Willie Maldonado