web-dev-qa-db-ja.com

MD5ハッシュの塩を見つけることは可能ですか?

MD5ハッシュのソルトを見つけることが可能かどうか知りたいですか?たとえば、2つのMD5ハッシュがあります。

helloworld -> fc5e038d38a57032085441e7fe7010b0
goodbyeworld -> b34266c1c9eda200a0ebb833281bb855

ハッシュだけを使用してソルトworldを検出することはできますか?

1
FreeMind

ハッシュ出力が与えられると、いつでもラッキーになり、一致が見つかるまでランダムな値を注入することができます。あなたの例では、まともなパスワードクラッカーは非常に古典的なパスワード文字列であるため、「helloworld」と「goodbyeworld」を非常に速く(最初の1秒以内など)試行する必要があります。

より一般的なケース:暗号化ハッシュ関数hと値hm || x )およびhm ' || xmm'の不明な値の場合およびxの場合、幸運であることを除いて、mm 'またはxを回復することはできません。前の段落の意味で(攻撃者は入力として正確にm || xを試みます)。これは暗号的に安全なハッシュ関数に当てはまり、衝突に関する弱点(ここでは関係ありません)にも関わらず、MD5はまだ「十分に安全」です。

(もちろん、MD5には「塩」がないことに注意する必要があります。そのため、MD5-s-with-a-saltについての言及は、実際には「MD5と、デザイナーが選択する値を含む、カスタムで自家製の非標準的な構造を意味します。 「塩」と呼びます。一般的に言えば、自家製の構造物は避けます。)

4
Thomas Pornin