New answers tagged

51

This answer is based on the work by AleksanderRas, although my conclusion is different. First, to lay out a definition, a hash is a function that takes an arbitrary length input to a fixed length output. For example, MD5 takes any input and produces a 128 bit output. A cryptographic hash is a hash function which has certain additional security properties. ...


0

MD5 and SHA-1 are badly broken functions. But you can think about an abstract good cryptographic hash function, and pretend it generates a different random number of some length for each different input, and model the collisions you'd expect that way. The XOR of two random hashes is another random number of the same length. So you can generate a random ...


16

There are two answers to this: one practical, and one theoretical. First, the practical one: MD5 is a broken hash function, and we know of collisions for it, and a quick web search turned up a collision with a hamming distance of 6. Second, the theoretical one: Most cryptographic hash functions are designed to be a reasonable approximation of a random ...


22

The answer is 1 bit (Hamming-distance = 1) for any cryptographic hash algorithm. There are definitely collisions, since the digest of the MD5 algorithm is always 128 bits long but there are more than 2128 possible inputs. We can explain this due to the Pigeonhole principle. Mathematical explanation Let's say we take an input message of 3 bits: There are ...


12

An important aspect of cryptographic hash functions is that even the smallest difference in input usually results in different output. But given the unlimited input space compared to the limited output space of the cryptographic hash it is likely that sequences with only small differences (like a single bit) but the same hash value exist. But for a more ...


Top 50 recent answers are included