Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>from wikipedia: <a href="http://en.wikipedia.org/wiki/Cryptographic_hash_function">http://en.wikipedia.org/wiki/Cryptographic_hash_function</a></p> <blockquote> <p><em><strong>Properties</em></strong></p> <p>Most cryptographic hash functions are designed to take a string of any length as input and produce a fixed-length hash value. A cryptographic hash function must be able to withstand all known types of cryptanalytic attack. As a minimum, it must have the following properties:</p> <p><strong>Preimage resistance</strong> Given a hash <em>h</em> it should be difficult to find any message <em>m</em> such that <em>h = hash(m)</em>. This concept is related to that of one-way function. Functions that lack this property are vulnerable to preimage attacks.</p> <p><strong>Second-preimage resistance</strong> Given an input <em>m</em><sub>1</sub> it should be difficult to find another input <em>m</em><sub>2</sub> — where <em>m</em><sub>1</sub> != <em>m</em><sub>2</sub> — such that <em>hash</em>( <em>m</em><sub>1</sub> ) = <em>hash</em>( <em>m</em><sub>2</sub> ). This property is sometimes referred to as weak collision resistance, and functions that lack this property are vulnerable to second-preimage attacks.</p> <p><strong>Collision resistance</strong> It should be difficult to find two different messages <em>m</em><sub>1</sub> and <em>m</em><sub>2</sub> such that<br> <em>hash</em>( <em>m</em><sub>1</sub> ) = <em>hash</em>( <em>m</em><sub>2</sub> ). 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 that required for preimage-resistance, otherwise collisions may be found by a birthday attack.</p> </blockquote>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload