3

特定の文字列に対して一意のハッシュを作成したいのですが、md5 と sha1 の重複ハッシュに違いがあるかどうか疑問に思っていました。

議論のために、次のコードを想定してみましょう。

foo = "gdfgkldng"
bar = "fdsfdsf"
md5(foo)
>>>> "25f709d867523ff6958784d399f138d9"
md5(bar)
>>>> "25f709d867523ff6958784d399f138d9"

sha1 と md5 で発生確率に違いはありますか? また、大きな重複がある文字列 (「blabla1」、「blabla2」) を使用すると、違いはありますか?

ところで。アルゴリズムのセキュリティには興味がありません。できるだけ一意のハッシュを作成したいだけです。

4

1 に答える 1

5

MD5 のダイジェスト サイズは 128 ビットです。SHA-1 のダイジェスト サイズは 160 ビットです。発見された弱点を無視しても、MD5 は、出力スペースが小さいという理由だけで、より多くの衝突を生成します。

代わりに SHA-256 の使用を検討してください。ダイジェスト サイズは 256 ビット (明らかに) で、さらに意味のある方法で壊れていません。

于 2013-02-06T10:36:33.937 に答える