Калькулятор контрольной суммы файла MD4
Вычисляйте контрольную сумму MD4 файла локально, даже большого, и сравнивайте с опубликованным хешем для проверки загрузки. Бесплатно и приватно.
Файл ещё не выбран. Контрольная сумма появится сразу после выбора файла.
Файл читается частями прямо в браузере и никуда не загружается.
Что такое Контрольная сумма файла MD4?
Инструмент вычисляет контрольную сумму MD4 (128-битный дайджест) выбранного файла и сравнивает её с ожидаемым значением. Файл читается блоками по 4 МБ прямо в браузере, поэтому большие файлы работают, а загрузки на сервер не происходит.
Как пользоваться Контрольная сумма файла MD4
- Нажмите на область загрузки или перетащите на неё файл; файл читается блоками, отображается индикатор прогресса.
- Проверьте Имя файла и Размер файла ниже, чтобы убедиться, что выбран нужный файл.
- Вставьте контрольную сумму, опубликованную поставщиком, в Ожидаемая контрольная сумма — вы получите Совпадает или Не совпадает (регистр,
0xи имя файла в конце строки игнорируются). - Выберите Формат вывода, если нужен hex прописными или Base64, затем нажмите Копировать.
Пример
A file named hash-abc.txt containing the 3 bytes "abc" (no newline)
a448017aaf21d8525fc10ae87aa6729d
Если вставить это значение (в любом регистре) в поле ожидаемой контрольной суммы, будет показано «Совпадает».
Когда использовать Контрольная сумма файла MD4
Используйте его, чтобы убедиться в целостности загрузки, резервной копии или скопированного файла, когда издатель указывает контрольную сумму MD4, или чтобы записать контрольную сумму перед передачей файла. Совпадение MD4 доказывает, что файл не был случайно повреждён, но поскольку MD4 взломан, оно не доказывает, что файл никто не подменял — если предлагается контрольная сумма SHA-256 или подпись, выбирайте их. Чтобы хешировать короткую строку, а не файл, используйте текстовый генератор хеша MD4.
Как работает Контрольная сумма файла MD4
Файл нарезается на куски по 4 МБ с помощью File API, и каждый кусок подаётся в инкрементный хешер MD4, поэтому расход памяти остаётся небольшим и можно показывать индикатор прогресса. MD4 дополняет сообщение единичным битом, нулями и 64-битной длиной сообщения в порядке little-endian до длины, кратной 512 битам, затем пропускает каждый 512-битный блок через три раунда по 16 операций над четырьмя 32-битными словами с помощью нелинейных функций F, G и H, сложений и циклических сдвигов влево. Четыре итоговых слова в порядке little-endian образуют 128-битный дайджест. Сравнение с ожидаемой контрольной суммой выполняется по байтам дайджеста, поэтому принимаются и hex в любом регистре, и Base64.
Распространенные Случаи Использования
- Проверить ISO, установщик или образ прошивки по контрольной сумме со страницы загрузки
- Убедиться, что файл, скопированный на USB-накопитель, NAS или в облако, идентичен побитово
- Записать контрольные суммы MD4 артефактов релиза перед публикацией
- Выяснить, совпадает ли содержимое двух файлов с разными именами
- Сверить файлы со старыми списками MD4 из устаревших архивов
Примечание по Безопасности
MD4 полностью взломан. Коллизии находятся вычислениями «на коленке», и он по-прежнему лежит в основе хеша паролей NTLM, поэтому хеши NTLM так легко подбираются. Используйте его только для совместимости (например, ссылки eDonkey/ed2k, исследования NTLM); никогда — для безопасности. Контрольная сумма подтверждает целостность, только если ожидаемое значение получено по доверенному каналу: злоумышленник, способный подменить файл, обычно может подменить и контрольную сумму рядом с ним. Файл не покидает ваш браузер.
Часто Задаваемые Вопросы
Мой файл загружается на сервер?
Нет. Файл читается через браузерный File API и хешируется на вашем устройстве средствами JavaScript/WebAssembly. После загрузки страницы можно отключиться от интернета — всё продолжит работать.
Файл какого размера можно проверить?
Файл обрабатывается блоками по 4 МБ, поэтому ограничение — в основном время, а не память. Файлы в несколько гигабайт работают; скорость зависит от устройства.
Мой MD4 не совпадает с опубликованным значением. Что делать?
Сначала убедитесь, что сравниваете один и тот же алгоритм и один и тот же файл (а не недокачанный). Если значения всё равно различаются, скачайте файл заново из официального источника; устойчивое несовпадение означает, что файл повреждён или это не тот файл, который выпустил издатель.
Что можно вставить в поле ожидаемой контрольной суммы?
Hex-значение в верхнем или нижнем регистре с 0x или без, форму Base64 либо целую строку из файла контрольных сумм вида <hash> filename — сравнивается только первое слово.