MD5ハッシュのソルトを見つけることが可能かどうか知りたいですか?たとえば、2つのMD5ハッシュがあります。
helloworld -> fc5e038d38a57032085441e7fe7010b0
goodbyeworld -> b34266c1c9eda200a0ebb833281bb855
ハッシュだけを使用してソルトworld
を検出することはできますか?
ハッシュ出力が与えられると、いつでもラッキーになり、一致が見つかるまでランダムな値を注入することができます。あなたの例では、まともなパスワードクラッカーは非常に古典的なパスワード文字列であるため、「helloworld」と「goodbyeworld」を非常に速く(最初の1秒以内など)試行する必要があります。
より一般的なケース:暗号化ハッシュ関数hと値h(m || x )およびh(m ' || x)m、m'の不明な値の場合およびxの場合、幸運であることを除いて、m、m 'またはxを回復することはできません。前の段落の意味で(攻撃者は入力として正確にm || xを試みます)。これは暗号的に安全なハッシュ関数に当てはまり、衝突に関する弱点(ここでは関係ありません)にも関わらず、MD5はまだ「十分に安全」です。
(もちろん、MD5には「塩」がないことに注意する必要があります。そのため、MD5-s-with-a-saltについての言及は、実際には「MD5と、デザイナーが選択する値を含む、カスタムで自家製の非標準的な構造を意味します。 「塩」と呼びます。一般的に言えば、自家製の構造物は避けます。)