Извините, если это дублирующийся вопрос; большинство из тех, что я нашел, над моей головой, поэтому я, возможно, пропустил ответ.Шанс столкновения хешей
Для данного хэша, скажем MD5 (128 бит), какова вероятность столкновения хэшей с 10^12 из них?
Моей математика не большой, я придумал с этим уравнением (я думаю, что это правильно), но не имею ни малейшего представления о том, как решить эту проблему:
Collision_Chance = 1 - (1 - (1/2^128))^(10^12)
Я предполагаю, что это где-то около 10^-26, звучит ли это правильно?
Благодаря
Edit: Я думаю, что моя оценка очень неправильно. См. Birthday Paradox
«Парадокс дня рождения» - это термин google. И шанс на SQRT (n), в вашем случае 128 бит - >> 64 бит. А 10^12 - менее 64 бит. – wildplasser
@wildplasser «Шанс о SQRT (n)» - что это значит? Шанс должен быть числом от 0 до 1. sqrt (n) - это число значений, для которых вероятность столкновения равна 1/2. –
Небрежная формулировка. Если у вас есть пространство ключей из 128 бит, и вы произвольно выбираете из этого, вероятность столкновения (в кумулятивной выборке) проходит предел .5, когда у вас есть около 2^64 элементов в вашем наборе. У вашей википедии есть правильная формулировка (и формулы) – wildplasser