Вероятность коллизии в множестве из
элементов, каждый из которых является случайным натуральным числом, равновероятно выбранным из интервала
, где
(предполагаю, что криптографические хеши можно считать такими), равна
Для MD5
Для SHA-1
Для SHA-256
— это число различных хешей, для которых вычисляется вероятность коллизии.
В практических целях мы не можем пользоваться формулой с факториалами, т.к. они уж очень большие. Но и для формулы со скобками тоже нужны вычисления с длинными (256-битными, как минимум) числами, причём если
большое, то и она тоже непригодна. В ряде случаев формула Стирлинга для факториала даёт хорошие приближения:
Во всяком случае, для расчёта квантилей (когда вероятность достигнет
;
;
;
) при не очень большом числе девяток должно хватить.