2012-01-13 4 views

ответ

27

Чтобы получить одно столкновение между ними, вы должны сделать хэш примерно 2^64 значений, если вы не пытаетесь сознательно создавать конфликты. Столкновение хэшей очень похоже на Birthday problem.

Если вы посмотрите на два произвольных значения, вероятность столкновения равна только 2 -128.

Проблема с md5 заключается в том, что относительно легко создавать два разных текста, хеш которых имеет одинаковое значение. Но это требует преднамеренной атаки и не происходит случайно. И даже при преднамеренной атаке в настоящее время невозможно получить простой текст, соответствующий заданному хешу.

Вкратце md5 является безопасным для небезопасных целей, но нарушен во многих приложениях безопасности.

+0

Как вы узнали об этом? –

+1

2^(n/2), как предсказывается проблемой дня рождения. – CodesInChaos

+0

Из-за этой информации, подходит ли для создания идентификаторов документов для системы, содержит миллионы документов на основе их хэша md5 соответствующего контента.? @CodesInChaos – SaidbakR

5

Он генерирует 128-битное значение. Поэтому случайная скорость столкновения должна быть 2 -64 (из-за Парадокса День рождения).

+2

Вероятность столкновения из-за значительных значений около 2^64, но скорость столкновения для двух произвольных значений составляет всего 2^-128. – CodesInChaos

Смежные вопросы