Ho crittografato un file con la stessa riga di comando con due diverse versioni di openssl: 1.0.1t e 1.1.0e. Quindi provo a decodificare entrambi con la versione 1.0.1t e non riesco a decodificare quest'ultimo.
Puoi dirmi perché e dove mi sbaglio? Come posso crittografare e decodificare in sicurezza senza modificare la riga di comando: openssl enc -d -a -bf -in <infile> -out <outfile> -pass pass:<password>
?
Se vuoi rispondere a più domande: come posso rendere il codice più resiliente?
Ecco come riprodurre la situazione. Sull'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
Sull'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
Copia prova1.enc sull'host con openssl 1.0.1t e quindi nel tipo:
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:
Grazie in anticipo