Security of cryptographic hash functions: Difference between revisions

Content deleted Content added
Line 6:
Generally, the ''basic'' security of [[cryptographic hash functions]] can be seen from three different angles: pre-image resistance, second pre-image resistance and collision resistance.
 
* '''Pre-image resistance''': given a hash h it should be ''hard'' to find any message m such that h = hash(m). This concept is related to that of one way function. Functions that lack this property are vulnerable to [[pre-image attacksattack]]s.
* '''Second pre-image resistance''': given an input m1, it should be ''hard'' to find another input, m2 (not equal to m1) such that hash(m1) = hash(m2). This property is sometimes referred to as weak collision resistance. Functions that lack this property are vulnerable to [[second pre-image attacksattack]]s.
* '''Collision resistance''': it should be ''hard'' to find two different messages m1 and m2 such that hash(m1) = hash(m2). Such a pair is called a (cryptographic) hash collision. This property is sometimes referred to as strong collision resistance. It requires a hash value at least twice as long as what is required for pre-image resistance, otherwise collisions may be found by a [[birthday attack]].