просто прочитать файл линейно? Кажется довольно бессмысленным читать весь файл, вычислять хэш md5, а затем сравнивать хеш.
Чтение файла последовательно, по несколько байтов за раз, позволит вам отбросить подавляющее большинство файлов после чтения, скажем, 4 байтов. И вы сэкономите все накладные расходы на обработку хеш-функции, которая в вашем случае ничего не даст.
Если у вас уже есть хэши для всех файлов в накопителе, имеет смысл сравнить их, но если вам нужно вычислить их на лету, то, похоже, не будет никакого преимущества для хеширования .
Я что-то здесь упускаю? Что хешинг покупает в этом случае?