現在、NodeJSでデータを暗号化しようとしていますが、createCipher
がrecommendedではないというNode APIドキュメントを読みました。Nodejs createCipher vs createCipheriv
crypto.createCipherの実装では、()ダイジェストMD5に設定されたアルゴリズム、 一回の反復、及び無塩と のOpenSSL関数EVP_BytesToKeyを使用してキーを導出します。塩の欠如は辞書攻撃を可能にする 同じパスワードとして常に同じキーを作成します。 回数が少なく、暗号なしで安全なハッシュアルゴリズムを使用すると、パスワード を非常に高速にテストできます。
開発者が独自の使用crypto.pbkdf2(上のキーとIV を導出することをお勧めします代わりに EVP_BytesToKeyのPBKDF2使用するためにOpenSSLのの勧告に沿って)とCipherオブジェクトを作成するためにcrypto.createCipheriv() を使用するには。
createCipher
はまだ安心してデータを暗号化するための実行可能で安全な方法ですか?このメソッドは推奨されなくなりましたか? よく知られた攻撃者が潜在的にデータを復号することは可能でしょうか?
createCipheriv
を使用するソリューションは、常によりも優先される必要がありますか?
他の詳細やお勧めがありがとうございます。
なぜことが好ましいですか? – andrsnn
iv - https://en.wikipedia.org/wiki/Initialization_vectorを表します。 – IvanM