¿Puedo recuperar una clave AES perdida?

15

He cifrado 2 bases de datos MySQL con AES_ENCRYPT en modo ECB de 128 bits. Ahora olvidé mi clave de cifrado, pero tengo texto simple (tengo una base de datos sin cifrado y lo mismo con el cifrado). ¿Cómo encontrar la clave de cifrado para poder descifrar mi otra base de datos?

Escuché sobre un ataque de texto simple conocido, ¿cómo hacer esto? ¿Hay alguna herramienta en Kali Linux o algún script de Python en GitHub?

    
pregunta hui san ki 17.12.2018 - 07:14
fuente

5 respuestas

35

Realísticamente, no, no puedes. AES es muy resistente a los ataques de texto de quejas conocidas como la mayoría de los cifrados en bloque. Es una suerte que no haya perdido ninguna información y tenga la copia de seguridad de la base de datos original, ya que su única opción real sería probar la fuerza bruta del cifrado, que probablemente lleve más tiempo que la longitud del universo (a menos que pueda reducir las claves posibles) casi recordando su contraseña?)

    
respondido por el Aide 17.12.2018 - 07:25
fuente
11

Lo que está pidiendo es un ataque de texto simple (KPA) conocido. La debilidad que describe en el BCE es que dos bloques cifrados con el mismo texto simple se cifran con el mismo texto cifrado.

Esto simplemente significa que sabes que dos bloques cifrados en el texto cifrado tienen el mismo aspecto, no significa que puedas recuperar el texto simple fácilmente. La respuesta es: no, no podrá recuperar la clave.

    
respondido por el Lucas Kauffman 17.12.2018 - 07:47
fuente
1

En teoría es posible, pero en la práctica no. Pero puedes intentar adivinarlo. Dado un texto plano y un texto cifrado, puede probar cada clave posible para ver cuál funciona. Para AES-128, 340 llaves de un millón.

Como se muestra arriba, incluso con una supercomputadora, se necesitarían mil millones de millones de años para descifrar la clave AES de 128 bits usando un ataque de fuerza bruta. Esto es más que la edad del universo (13,75 mil millones de años).

    
respondido por el Praveen Yadav 18.12.2018 - 18:04
fuente
0

En el momento en que creó su clave o contraseña, probablemente la guardó en un archivo o la escribió en un papel. Consíguete un programa de "eliminación" (los buenos están disponibles de forma gratuita, solo busca) y revisa tus archivos previamente eliminados ... Puedes encontrarlos allí.

    
respondido por el David Spector 17.12.2018 - 15:07
fuente
0

Esto se conoce como un ataque de texto simple conocido contra un cifrado y es una consideración importante del diseño. Se considera que lo que desea hacer no es posible a menos que cualquier revelación importante se convierta en una debilidad en AES. Hay otro Q / A aquí que podría ayudarlo a comprender mejor:

enlace

Los cifrados solo funcionan en una longitud fija de bits, por lo que los modos de encadenamiento se utilizan para cifrar longitudes arbitrarias de datos. El BCE es el más simple, solo encripta un bloque a la vez. La principal debilidad es que los bloques idénticos producen la misma salida encriptada, que es una filtración importante de información. También crea oportunidades para ataques de repetición en los que un atacante simplemente puede reenviar los bloques encriptados que piensan saben de los contenidos. Desafortunadamente, esto no lo acerca a la recuperación de claves con un texto simple conocido.

Un ataque viable para usted podría ser si usó una contraseña para generar la clave, y recuerda, por ejemplo, que tiene exactamente 12 caracteres y tres dígitos. Esto limita en gran medida el espacio de la contraseña y puede permitir que funcione un análisis de fuerza bruta.

    
respondido por el trognanders 18.12.2018 - 07:05
fuente

Lea otras preguntas en las etiquetas