Hash Collision Article Index for
Hash
Shopping
Collision
Website Links For
Hash
 

Information About

Hash Collision




Most hash functions have potential collisions, but with good hash functions they occur less often than with bad ones. In certain specialized applications where a relatively small number of possible inputs are all known ahead of time it is possible to construct a Perfect Hash Function which maps all inputs to different outputs. But in a function which can take input of arbitrary length and content and returns a hash of a fixed length (such as MD5 ), there will always be collisions, because any given hash can correspond to an infinite number of possible inputs.


IN SEARCHING

See Also: Hash table



An efficient method of searching can be to process a lookup key using a hash function, then take the resulting hash value and then use it as an index into an array of data. The resulting data structure is called a '' Hash Table ''. As long as different keys map to different indices, lookup can be performed in constant time. When multiple lookup keys are mapped to identical indices, however, a hash collision occurs. The most popular ways of dealing with this are ''chaining'' (building a Linked List of values for each array index), and ''open addressing'' (searching other array indices nearby for an empty space)...


IN CRYPTOGRAPHY

One desirable property of Cryptographic Hash Function s is that it is computationally infeasible to find a collision. The value of a hash function can be used to certify an input is unchanged by publishing the Signed value of the hash ''if'' it is not feasible to produce a collision. ''Feasible'' in this context refers to any method which is faster than a brute-force Birthday Attack .

The process of finding two arbitrary values whose hashes collide is called a Collision Attack ; the process of finding one arbitrary value whose hash collides with another, given hash is called a Preimage Attack . A successful preimage attack is considered a much more serious break than a successful collision attack.