Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

4
  • 1
    In this case, the strength of the hashing function is immaterial. MD5 will absolutely prevent duplicates to a virtual mathematical certainty. Commented May 4, 2010 at 23:03
  • What does "strength of the hashing function is immaterial" mean? The current attacks against MD5 let you generate collisions in a second on a single CPU -- so no, MD5 will not prevent "duplicates" Commented May 4, 2010 at 23:30
  • 1
    As has been said elsewhere MD5 does not prevent duplicates/collisions, though it does make them rather unlikely. Also, MD5 is only "broken" in the sense that its cryptographically insecure - a determined attacker could create a collision if desired. For the purposes of the original question, though, cryptographic security isn't necessary, so that's not a valid reason for dismissing MD5. Commented May 4, 2010 at 23:41
  • A hash function that generates a fixed-length hash is inherently prone to collisions. It's just that we don't want to ever find two distinct texts that hash to the same value. We know the collisions are there, we just don't want to ever find them. Much worse, there's a problem when given any arbitrary text we can generate another distinct text that hashes the same; or when given a hash we can generate a text that hashes to the same hash value. How serious this is for the OP only the OP knows: I think it's a matter of risk assessment. Commented May 5, 2010 at 0:23