Dado el hash:
491c290affbf5436f0fc0584ccefb2
¿cómo construyo una tabla de arco iris para descifrar esta contraseña?
Dado el hash:
491c290affbf5436f0fc0584ccefb2
¿cómo construyo una tabla de arco iris para descifrar esta contraseña?
Uno no construye una tabla de arco iris para descifrar una contraseña específica. Si desea descifrar una contraseña específica, es más eficiente simplemente forzar la fuerza bruta y luego generar una tabla de arco iris. Uno construye una tabla arco iris para poder descifrar muchas contraseñas que comparten ciertas características, como la función de hash de contraseña y la diccionario de contraseñas del que se toman las contraseñas.
Si alguien ya ha creado una tabla de arco iris para contraseñas con las mismas características que la contraseña que intentas descifrar, entonces puedes usarla. Pero me sorprendería si alguien alguna vez haya creado una tabla de arco iris para un diccionario de contraseñas de seis bytes hexadecimales y una "función hash" en la que la contraseña se rellena con ceros y AES se cifra con una clave de ceros.
Por cierto, escribí la función hash entre comillas porque no es una función hash, es una función de cifrado. Si, por el contrario, la contraseña (rellenada) se usara como clave para cifrar un bloque de ceros de AES, habría sido una función hash.
Para crear la tabla como se describe en el artículo, bueno, simplemente siga la descripción que se encuentra en el artículo. Ese es el punto del ejercicio: aprender a leer un artículo científico e implementarlo. Con un espacio de 24 bits de posibles contraseñas, solo necesitará unas 256 tablas, cada una con 256 cadenas, lo que está totalmente dentro del alcance de una implementación no optimizada. Al igual que lo que se puede esperar razonablemente que un estudiante produzca como parte de la tarea.
Por supuesto, tiene poco sentido construir tablas de este tipo para descifrar una sola contraseña; las tablas precomputadas, incluido el tipo especial que describe Hellman, merecen la pena solo cuando se quieren descifrar al menos dos contraseñas. Además, un espacio de 24 bits es un pedazo de torta y podría romperse con fuerza bruta en menos de un segundo en promedio, si se implementa correctamente (y sustancialmente menos si se implementa adecuadamente con AES-NI
Tenga en cuenta que la compensación de memoria del tiempo de Hellman no es no una tabla de arco iris, sino su predecesora inmediata. Las tablas Rainbow son una optimización diseñada por Oechslin en 2003 . Los invito a leer las primeras partes de este artículo, que recuerdan el compromiso de Hellman y podrían ayudarlo a alcanzar la iluminación (que es la razón por la que hace la tarea en primer lugar).
Lea otras preguntas en las etiquetas passwords cryptography