ファイルを暗号化または復号化すると、*** WARNING : deprecated key derivation used. Using -iter or -pbkdf2 would be better.
が返されます
これが何を意味するのか、手順をどのように変更すればよいのかわかりません。私たちを手伝ってくれますか? openssl des3 <input >output.des3
で暗号化し、openssl des3 -d <input.des3 >output
で復号化します
環境について
Ubuntu 18.10
~$ openssl version OpenSSL 1.1.1 11 Sep 2018
OpenSSLの2つのメインバージョンと最近のバージョンのSynopsysを比較して、manページを引用します。
openssl enc -ciphername [-help] [-ciphers] [-in filename] [-out filename] [-pass arg] [-e] [-d] [-a/-base64] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-S salt] [-salt] [-nosalt] [-z] [-md digest] [-p] [-P] [-bufsize number] [-nopad] [-debug] [-none] [-engine id]
openssl enc -cipher [-help] [-ciphers] [-in filename] [-out filename] [-pass arg] [-e] [-d] [-a] [-base64] [-A] [-k password] [-kfile filename] [-K key] [-iv IV] [-S salt] [-salt] [-nosalt] [-z] [-md digest] [-iter count] [-pbkdf2] [-p] [-P] [-bufsize number] [-nopad] [-debug] [-none] [-Rand file...] [-writerand file] [-engine id]
明らかにいくつかの大きな違いがあります。つまり、この質問を考慮すると、1.1.0には次の2つのスイッチがありません。
pbkdf2
iter
基本的に2つのオプションがあります。警告を無視するか、暗号化コマンドを次のように調整します。
openssl enc -aes-256-cbc -md sha512 -pbkdf2 -iter 1000 -salt -in InputFilePath -out OutputFilePath
これらが切り替わる場所:
-aes-256-cbc
は、最大の保護のために使用する必要があるものです、128ビットバージョン、3DES(トリプルDES)はしばらく前に放棄されましたが、AESは最近のCPU CPUに AES-NI命令セット があるかどうかを簡単に確認できます。たとえば、grep aes /proc/cpuinfo
を使用します。 win、win
-md sha512
SHA-256と比較してSHA-2関数ファミリーのより高速なバリアントです 少し安全ですが、 win、win
-pbkdf2
: PBKDF2 (パスワードベースのキー派生関数2)アルゴリズムを使用
-iter 1000
は、マニュアルページを引用して、パスワードのデフォルトの繰り返し回数を上書きしています。
暗号化キーを導出する際に、パスワードに所定の反復回数を使用します。値を大きくすると、結果のファイルをブルートフォースするのに必要な時間が長くなります。このオプションを使用すると、PBKDF2アルゴリズムを使用してキーを導出できます。