系统:Linux Mint 18.3 Cinnamon 64 位。
OpenSSL:1.0.2g
通常,我会按如下方式加密文件:
openssl enc -aes-256-cbc -salt -in somefile -out somefile.enc
但我想知道将使用什么算法来散列我的密码以及我是否可以更改它?
答案1
我偶然发现,这里,对于openssl
版本 1.1.0:
-md digest Use the specified digest to create the key from the passphrase. The default algorithm is sha-256.
因此,没有必要为新版本指定消息摘要算法,openssl
因为它已经使用 SHA-256。
但由于我的系统上有openssl
1.0.2g 版本,我进一步挖掘后发现,这里, 那:
... In OpenSSL 1.1.0 we changed from MD5 to SHA-256 ...
本质上,这意味着我openssl
将默认使用旧的和过时的 MD5。
openssl
幸运的是,可以使用1.0.2g 版本将其更改为 SHA-256 :
openssl enc -aes-256-cbc -md sha256 -salt -in somefile -out somefile.enc
如果您拥有的版本比我的旧,则如果上述操作失败,openssl
您可能需要尝试。-md sha1