MD5 столкновение для нескольких идентичных файлов - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть сервер, полный книг.Каждая книга состоит из нескольких активов.Но некоторые ресурсы используются для нескольких книг.

book1
| - pic1.png
| - pic2.png
| - pic3.png

book2
| - pic1.png (дубликат)
| - pic4.png
| - pic5.png

Нет гарантии, что они будут одинаковыми.Значение pic1.png, возможно, было переименовано во что-то другое, но это тот же файл, что и раньше.

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

Мое хакерское решение грубой силы - запустить md5 для каждого файла.Коллизия хеша составляет 2 ^ 128, поэтому шансы двух разных файлов, генерирующих один и тот же хеш, крайне низкиОднако я буду повторять этот процесс для всех ресурсов на сервере (более 100 000).Я немного не в себе, но я знаю, что это меняет шансы (парадокс дня рождения?)

Мои вопросы ...

  • Сколько может MD5Я создаю без увеличения вероятности коллизии хеша до допустимых уровней?
  • Есть ли другой недорогой алгоритм хеширования целостности файлов, который я должен использовать вместо этого?
  • Собираюсь ли я сделать это полностьюНеправильный путь?

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...