10 月 2 日、NIST は SHA-3 が新しい標準ハッシュ アルゴリズムであると決定しました。
MD5 ユーザーは SHA-3 への移行を開始する必要がありますか? 他の何かに (SHA-3 が推奨されない理由については以下を参照してください)? 暗号化?
{MD5、SHA1、SHA256、SHA512、SHA-3 など} ではないのはなぜですか?
そして、これは本当に重要ですか?パスワードがソルト化されていても?
10 月 2 日、NIST は SHA-3 が新しい標準ハッシュ アルゴリズムであると決定しました。
MD5 ユーザーは SHA-3 への移行を開始する必要がありますか? 他の何かに (SHA-3 が推奨されない理由については以下を参照してください)? 暗号化?
{MD5、SHA1、SHA256、SHA512、SHA-3 など} ではないのはなぜですか?
そして、これは本当に重要ですか?パスワードがソルト化されていても?
パスワードのハッシュに MD5 を使用しない主な理由は、MD5 が深刻に侵害されている、または壊れているとさえ見なされているという事実ではありません。
確かに、MD5 には既知の脆弱性があります。しかし、どれも MD5 の使用に重大な脅威をもたらすものではありません。あなたの場合、唯一の脅威は、攻撃者が既知の(ソルトされた)パスワードハッシュへのパスワードなど、既知のハッシュのプレイメージを見つけようとするプレイメージ攻撃であるためです。また、おそらく知られている MD5 に対するプリイメージ攻撃は理論的なものにすぎず、労力を 2 128から 2 123.4に減らしますが、これは大きな利点ではありません。平均 2 64のブルート フォース攻撃は、さらに有望です。
いいえ、MD5 を使用しない主な理由は、MD5 が速すぎるためです。今日の手頃な価格のコンピューターを使用すると、1 秒あたり 7190M MD5 ハッシュを生成してテストできます。ソルトの有無に関係なく、英数字の 8 文字の組み合わせはすべて、約 8.5 時間で総当たり攻撃できます。
それとは対照的に、ハッシュ関数のようなbcrypt $2a$
ものでは、1 秒あたり 4085 ハッシュしか生成およびテストできないため、MD5 ハッシュの数の 0.00005682 % のみです。同じ試行には 1694年bcrypt $2a$
が必要です。