Md5 имеет проблемы коллизий (два файла с одинаковым md5 могут по-прежнему иметь разное содержимое.)
Если вы выполняете хэш SHA-1 для каждого файла и сравниваете хэши, только файлы с одинаковым содержимым будут иметь одинаковый хеш. Период.
Это также помогает, игнорируя, имеют ли они разные имена, даты изменения и т. Д.
Некоторые люди делают все возможное и используют sha-256, но это действительно не нужно. Большинство коммерческих устройств дедупликации используют SHA-1 (также называемый SHA-160).
Если вы используете SHA-1 для сравнения файлов, вам больше ничего не нужно.
Я знаю это, потому что я работал с различными системами дедупликации и поставщиками в течение ряда лет, и я также написал пример системы дедупликации.