OpenSSL 1.0.1t no se descifra con -bf si está cifrado con OpenSSL versión 1.1.0e

0

He cifrado un archivo con la misma línea de comandos con dos versiones diferentes de openssl: 1.0.1t y 1.1.0e. Luego trato de decodificar ambas con la versión 1.0.1t y no puedo decodificar esta última.

¿Puedes decirme por qué y dónde me equivoco? ¿Cómo puedo cifrar y descifrar de forma segura sin cambiar la línea de comando: openssl enc -d -a -bf -in <infile> -out <outfile> -pass pass:<password> ?

Si desea responder una pregunta más: ¿cómo puedo hacer que el cifrado sea más resistente?

Aquí es cómo reproducir la situación. En el host con openssl 1.0.1t:

user@101t$ openssl version OpenSSL 1.0.1t 3 May 2016 user@101t$ echo "pippo" > prova user@101t$ openssl enc -e -a -salt -bf -in "prova" -out "prova1.enc" -pass pass:pippo

En el host con openssl 1.1.0e:

user@110e$ openssl version OpenSSL 1.1.0e 16 Feb 2017 user@110e$ echo "pippo" > prova user@110e$ openssl enc -e -a -salt -bf -in "prova" -out "prova2.enc" -pass pass:pippo

Copie prova1.enc al host con openssl 1.0.1t y luego escriba:

user@101t$ openssl enc -d -a -bf -in prova1.enc -out x -pass pass:pippo user@101t$ openssl enc -d -a -bf -in prova2.enc -out x -pass pass:pippo bad decrypt 139637189576336:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:516:

Gracias de antemano

    
pregunta fero 23.05.2017 - 12:20
fuente

1 respuesta

1

El resumen predeterminado utilizado para generar la clave a partir de la contraseña modificada en OpenSSL 1.1.0. En las versiones anteriores se utilizó md5, que ahora se considera inseguro. En OpenSSL 1.1.0, el resumen predeterminado es sha256.

Para descifrar un archivo en OpenSSL 1.0.1t generado por OpenSSL 1.1.0, debe agregar "-md sha256" a sus argumentos de la línea de comando. Si eso no es posible, también puede forzar a OpenSSL 1.1.0 a usar md5 como su resumen agregando "-md md5" a los argumentos de la línea de comando de cifrado. Esto es obviamente inseguro pero debería funcionar.

    
respondido por el Matt Caswell 23.05.2017 - 14:21
fuente

Lea otras preguntas en las etiquetas