Hash Functions

<aside> 💡 hash functions being called insecure means it is disqualified according to their security definitions. (e.g collision-resistant, constant output, prevent pre-image discovery, no length extensions)

</aside>

Collision resistance property: States that although there are infinite collisions, they cannot be found

Ideal Hash Function

random mapping from input values to output values.

how much work distinguisher is allowed to perform

Should be more efficient than a generic attack

Generic attack is birthday paradox, which generates collisions. BUT collisions are only relevant to certain uses

Other exploits

Ask yourself, can you get a better result from a generic attack not relying on properties of hash functions. If so, distinguisher between ideal and not is useless.

security bits

512 bit hash function → 128 bits

distinguishers limited to 128 bits