Security of cryptographic hash functions: Difference between revisions

Content deleted Content added
m Fix section title "Provably secure hash functions", not "Probably secure hash functions"
KommX (talk | contribs)
m Put m_i into math mode
Line 8:
 
* '''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 attack]]s.
* '''Second pre-image resistance''': given an input m1<math>m_1</math>, it should be ''hard'' to find another input, m2<math>m_2</math> (not equal to m1<math>m_1</math>) such that hash(m1<math>m_1</math>) = hash(m2<math>m_2</math>). This property is sometimes referred to as weak collision resistance. Functions that lack this property are vulnerable to [[second pre-image attack]]s.
* '''Collision resistance''': it should be ''hard'' to find two different messages m1<math>m_1</math> and m2<math>m_2</math> such that hash(m1<math>m_1</math>) = hash(m2<math>m_2</math>). 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]].
 
===The meaning of "hard"===