end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

openssl ver.1.1.1 で 「Using -iter or -pbkdf2 would be better.」や「bad decrypt」 error

以前、記載した entry の openssl ver.1.1.1 版.

openssl でファイルの暗号化と復号化 - end0tknr's kipple - 新web写経開発

openssl ver.1.0 で暗号化したファイルを openssl ver.1.1.1 で復号化しようとしたところ、以下のエラー。

$ /usr/local/openssl_1_1_1/bin/openssl \
> aes-256-cbc -d -base64 -k $PASSWD -in $FILE.CSV.EC -out $FILE.CSV
*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.
bad decrypt
139675971123008:error:06065064:digital envelope routines:
   EVP_DecryptFinal_ex:bad decrypt:crypto/evp/evp_enc.c:570:

の2コが原因らしい。

既に openssl ver.1.0 で暗号化したファイルの復号化は、 以下のように「-md md5」を追加すれば、warning は表示されますが、復号化できます。

$ /usr/local/openssl_1_1_1/bin/openssl \
  enc -d -aes-256-cbc -base64 -md md5
  -k $PASSWD -in $FILE.CSV.EC -out $FILE.CSV
*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.

今後、openssl ver.1.1.1での暗号化と復号化するには、 更に「-iter 100」を追加すると、よさそう。

$ /usr/local/openssl_1_1_1/bin/openssl \
  enc -e -aes-256-cbc -base64 -md md5 -iter 100 \
  -k $PASSWD -in $FILE.CSV.EC -out $FILE.CSV


$ /usr/local/openssl_1_1_1/bin/openssl \
  enc -d -aes-256-cbc -base64 -md md5 -iter 100 \
  -k $PASSWD -in $FILE.CSV.EC -out $FILE.CSV

$ 以下、参考url