01
Перед началом
Выбор файлов допускает: text/plain, */*. Содержимое и кодировка тоже должны поддерживаться; одного расширения недостаточно.
02
Чего ожидать
Сравнивайте результат с эталоном, полученным тем же алгоритмом для тех же данных. Изменение байта или перевода строки меняет хеш. Совпадение контрольной суммы не доказывает авторство файла.
MD5 подходит для проверок совместимости, но не для доказательства подлинности или защиты паролей.
03
Ограничения
Большие файлы обрабатываются дольше и могут занять много памяти.
Некоторые метаданные могут быть удалены или перезаписаны в итоговом файле.