Does MD5 map to all possible 128 bit numbers? To put it another way:
For every 128 bit number y
, does there exist at least one x
for which md5(x) = y
?
The answer probably is yes, for arbitrary x
, and probably no proof exists. However, feel free to prove me wrong :)
But what if I impose some kind of limit on x
, e.g. x <= x_max
? Of course, for very small x_max
the answer is no. But what is the minimum value of x_max
for which the answer likely becomes yes? Or the maximum value for which the answer can be shown to be no?
I'm not really interested in the exact value for x_max
, rather in the approximate order of magnitude.