Welcome to the Linux Foundation Forum!

Regarding the slide 14: Cryptographic Hashes (Digital Fingerprints)



Regarding the slide in section 14 on Cryptographic Hashes, three bullet points are given.

I understand two of the three. It seems that the third is a dupe. Could someone please elaborate. Here is what's given and what I interpret them as:

The special properties are that it must be infeasible for an attacker to create:

  • Another message with a given hash value (preimage resistance)
  • Another (modified) message with the same hash as the first message (second preimage resistance)
  • Any two messages with the same hash (collision resistance).

collision resistance

Say given buffer "xyz" and buffer "abc", don't use the method such that both hash to result 0x12345...DEF. Ie. two buffers don't have the same hash.

preimage resistance

Say the hacker knows a hash, for example, 0x123...DEF. They can determine what buffer generated that hash. ie. reversable.

second preimage resistance

What is the difference? If it has collision resistance, two buffers always give unique hashes, ie two hashes, how is this any different?

Furthermore, if you know buffer xyz generates has a hash already, how is this any different from preimage resistance?


Upcoming Training