如何解密在不同的openssl版本和不同的操作系统上加密的文件?

it_*_*ure 1 openssl

我加密服务器A上的文件。

uname -a
Linux hwy 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux

openssl version
OpenSSL 1.1.0f  25 May 2017

key="xxxxxxxx"
openssl enc -des3 -a -salt -in /tmp/wp.sql -k ${key} -out /tmp/wp.sql.asc
Run Code Online (Sandbox Code Playgroud)

将文件推送到服务器B并在服务器B上解密。

uname -a
Linux localhost.localdomain 2.6.32-042stab132.1 #1 SMP Wed Jul 11 13:51:30 MSK 2018 x86_64 x86_64 x86_64 GNU/Linux

openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017
Run Code Online (Sandbox Code Playgroud)

在服务器B上解密。

key="xxxxxxxx"
openssl enc -d -des3 -a -salt -k ${key} -in /tmp/wp.sql.asc -out /tmp/wp.sql
Run Code Online (Sandbox Code Playgroud)

它遇到错误信息:

bad decrypt
139640119146384:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:592:
Run Code Online (Sandbox Code Playgroud)

如何解密服务器B上的文件?我应该将服务器B上的openssl版本从升级1.0.2k-fips1.1.0f吗?

Amo*_*mol 5

1.1中使用的默认哈希值是SHA256,而1.0使用MD5。尝试在解密命令中使用-md sha256标志