Se llamaría segunda preimagen . Para una función de hash h con una salida de n bits, hay tres tipos de ataques que consideramos; para cada uno, existe un algoritmo genérico con un alto costo, y la función se considera segura si no podemos encontrar ningún método que sea más rápido que el algoritmo genérico. Los ataques son:
-
Preimagen: dada x (una n -bit string), encuentre m tal que h (m) = x . El ataque genérico tiene un costo promedio 2n (expresado en evaluaciones de la función h sobre entradas pequeñas): el ataque genérico funciona al intentar mensajes aleatorios < em> m hasta que golpee x (el ataque "suerte y oración").
-
Segunda preimagen: dada m (una cadena dada), encuentra m ' distinta de m y tal que h (m) = h (m ') . Este es el caso que imaginas aquí. El ataque genérico nuevamente tiene un costo 2n y es similar al ataque de preimagen.
-
Colisiones: encuentre m y m ', distintas entre sí, de manera que h (m) = h (m') . El ataque genérico ha costado 2n/2 (conocido como el ataque de cumpleaños ).
MD5 tiene una salida de 128 bits. Las evaluaciones de 2128 son muy altas y deberían brindar seguridad adecuada (es mil millones de billones de veces más de lo que es tecnológicamente factible en este momento, incluso con un presupuesto similar a Google / Facebook ). Por otro lado, 264 , aunque sigue siendo muy costoso (meses de cómputo con miles de computadoras), ya se ha demostrado una vez (ver distributed.net ).
Además, se han encontrado varias debilidades en MD5, lo que permite un algoritmo muy eficiente para generar colisiones (con mi PC puedo generar una colisión de MD5 en 14 segundos en promedio, usando un solo núcleo). Por esa razón, MD5 ya no se considera seguro como no . Pero actualmente no se conoce ningún atajo para las segundas preimágenes. La existencia de debilidades que conducen a colisiones fáciles muestra que la estructura interna de MD5 no es "lo suficientemente confusa", por lo que tenemos motivos para preocuparnos por los ataques de preimagen que podrían encontrar en un futuro próximo. Pero, en este momento (julio de 2011), no se conoce públicamente tal ataque.
Entonces, la respuesta a tu pregunta es que sería muy difícil enviarte un ISO alterado que terminaría con el mismo hash MD5 que el original. Pero los distribuidores de Ubuntu estarían bien inspirados para comenzar a publicar también hashes SHA-256. Por si acaso.