私はファイル暗号化のための簡単なプログラムを書いています。主に学問的な練習としてではありますが、今後の深刻な使用の可能性があります。すべての重い持ち上げはサードパーティ製のライブラリで行われますが、安全な方法で一緒にまとめることは、非暗号化者にとってまだ難しい課題です。基本的には、私はそれがすべきだと思うようにすべてのことをしています。MD5を使用してパスワードから暗号化キーを生成しますか?
私は、128ビット鍵長の暗号化に128ビットAESを使用しています。ユーザーが可変長のパスワードを入力できるようにするため、MD5でパスワードをハッシュし、そのハッシュをキーとして使用することにしました。私はこれが受け入れられると考えました - 鍵は常に秘密であると考えられているので、衝突攻撃を心配する必要はありません。
これを実装したので、これは悪い考えであることを示すいくつかの記事を掲載しました。私の質問は:なぜですか?良いパスワードが選択された場合、その暗号は、臨時の(読み込み:現時点では実行不可能な)ブルートフォースの努力以外の場合を除いて、鍵を絶対に公開しないほど強力であると思われます。鍵を生成するためにPBKDF2のようなものを使用すべきですか、それとも最も極端な暗号化アプリケーションを除いてすべてのものに対してちょっと残念ですか?あなたの投稿が一般的であるよう
saltパスワード – helloandre