¿Por qué es necesario descifrar AES 256 en el mismo entorno donde se genera el texto cifrado?

Sus dos cadenas fueron encriptadas usando dos algoritmos diferentes que solo están marginalmente relacionados entre sí.

El primer algoritmo es AES-256 con bloques de 128 bits en modo CBC utilizando la función de derivación de clave PBKDF2 y el relleno PKCS # 5. Puede descifrar la primera cadena con OpenSSL de la siguiente manera:

$ echo 'U2FsdGVkX1+1k1xUd7Yl7gEpd59kY7y3X7tBGJPYwCc=' | openssl enc -aes-256-cbc -pass 'pass:123456789' -d -base64
Quora

El segundo algoritmo es Rijndael-256 con bloques de 256 bits * en modo ECB ** sin derivación de tecla *** y sin relleno ****. Puede descifrar la segunda cadena con la extensión mcrypt de PHP de la siguiente manera:

$ php -r 'echo mcrypt_decrypt(MCRYPT_RIJNDAEL_256, "123456789", base64_decode("viJ1P4bUxq+kY551oheOfa2au+NOC01DPTUQpdEdhag="), MCRYPT_MODE_ECB);'
Quora

* Esto se llama Rijndael y no AES porque solo Rijndael con bloques de 128 bits se estandarizó como AES. Usar Rijndael con 256 bloques limitará su elección de programas de descifrado. Nunca hagas esto.
** El modo ECB es inseguro. Nunca hagas esto.
*** El uso de una contraseña de texto sin formato como clave sin función de derivación de clave no es seguro. Nunca hagas esto.
**** El cifrado sin relleno es inseguro. Nunca hagas esto.

Uno no lo hace.

Un algoritmo es un algoritmo, independientemente del entorno donde se ejecuta. Ahora, si, por ejemplo, está realizando el cifrado en una máquina big-endian y el descifrado en una máquina little-endian, es evidente que no puede usar exactamente el mismo código en ambos casos, a menos que se escriba ESPECÍFICAMENTE para ser una regla -agnóstico.

Entonces, el problema no es AES, sino que algunas de las suposiciones que se hicieron sobre el entorno al escribir el código tuvieron éxito en un caso y fallaron en el otro (o fallaron en ambos casos, pero de diferentes maneras)

More Interesting

¿Qué es un firewall? ¿Cuáles son los beneficios de usar un firewall?

¿Es posible tener una criptomoneda con un sistema de doble clave privada donde el propietario conozca ambas claves y el legislador solo una de ellas?

¿Podría una persona pagarle a un hacker extranjero para sacar a Quora de la red?

¿Cómo se etiqueta el conjunto de datos de CTU como tráfico de botnet o no?

Si el FBI toma mi computadora por algunas semanas, ¿debo esperar que esté llena de errores o llena de malware troyano cuando la recupere? Si es así, ¿cómo puedo eliminarlo? ¿Debería tirarlo al contenedor de basura más cercano?

Mi sitio web está pirateado, ¿qué debo hacer?

Cómo cambiar mi contraseña de Apple

¿A las corporaciones les gustan los productos antivirus actuales que usan? ¿Cuáles serían las características perfectas del software antivirus que las actuales no ofrecen?

¿Cómo protegerías las tarjetas de memoria de los virus informáticos?

¿Cómo se puede eliminar el virus de acceso directo de la computadora portátil?

¿Qué otros sistemas podría desarrollar para recordar y almacenar contraseñas de forma segura?

¿Qué tan grande es el mercado de seguridad cibernética en India?

¿Cuál es el mejor libro para leer para ser un buen administrador de sistemas Linux para un usuario normal de Linux?

¿Cómo podemos proporcionar control de acceso mediante la intercepción de llamadas del sistema en el sistema operativo?

¿Cómo funcionan los anuncios emergentes de virus falsos?