Поскольку сумма MD5 составляет 128 битов, любая фиксированная точка также обязательно должна быть длиной 128 битов. Если предположить, что сумма MD5 любой строки равномерно распределена по всем возможным суммам, то вероятность того, что любая данная 128-битная строка является фиксированной точкой, равна 1 / 2 128 .
Таким образом, вероятность того, что 128-битная строка не является фиксированной точкой, равна (1 - 1 / 2 128 ) 2 128 , поэтому вероятность наличия фиксированной точки равна 1 - (1 - 1 / 2 128 * * 1030) 2 128 .
Поскольку предел при n стремится к бесконечности (1 - 1 / n ) n равен 1 / e и 2 128 , безусловно, очень большое число, эта вероятность почти точно равна 1 - 1 / e ≈ 63,21%.
Конечно, в действительности нет никакой случайности, & ndash; либо есть фиксированная точка, либо ее нет. Но мы можем быть на 63,21% уверены, что есть фиксированная точка. (Также обратите внимание, что это число не зависит от размера пространства ключей - если бы суммы MD5 были 32 или 1024 битами, ответ был бы таким же, если он больше примерно 4 или 5 бит).