Калькулятор контрольной суммы CRC файла

Вычисляйте контрольные суммы CRC-32, CRC-32C, CRC-16, CRC-8 и CRC-64 файла в браузере и сравнивайте с ожидаемым значением. Без загрузки, большие файлы поддерживаются.

Файл ещё не выбран. Контрольная сумма появится сразу после выбора файла.

Файл читается частями прямо в браузере и никуда не загружается.

Что такое Контрольная сумма CRC файла?

Инструмент вычисляет контрольные суммы CRC файла — CRC-32 (zip, PNG, Ethernet), CRC-32C (iSCSI, ext4, SCTP), CRC-32/BZIP2, CRC-32/MPEG-2, CRC-16/ARC, CRC-16/MODBUS, CRC-16/CCITT-FALSE, CRC-16/XMODEM, CRC-16/KERMIT, CRC-8/SMBUS, CRC-8/MAXIM и CRC-64/XZ — за один проход и сравнивает выбранную с ожидаемым значением. Файл читается локально блоками по 4 МБ и никуда не загружается.

Как пользоваться Контрольная сумма CRC файла

  1. Выберите Вариант CRC для сравнения (по умолчанию CRC-32).
  2. Нажмите на область загрузки или перетащите на неё файл; файл читается блоками, отображается индикатор прогресса.
  3. Проверьте Имя файла и Размер файла ниже, чтобы убедиться, что выбран нужный файл.
  4. Вставьте ожидаемый CRC в Ожидаемая контрольная сумма (hex или десятичный), чтобы увидеть Совпадает или Не совпадает; все варианты перечислены в таблице ниже.

Пример

Ввод
A file hash-check.txt containing the 9 bytes "123456789"
Вывод
cbf43926

CRC-32 файла; если ввести в поле «Ожидаемая контрольная сумма» 3421780262 (десятичное) или CBF43926, будет показано «Совпадает».

Когда использовать Контрольная сумма CRC файла

Используйте его, чтобы проверить CRC-32 файла из ZIP-архива, SFV-файла или манифеста прошивки, а также чтобы вычислить CRC для образов обновления встраиваемых устройств. CRC обнаруживает только случайные повреждения; чтобы проверить загрузку на подмену, используйте контрольную сумму SHA-256.

Как работает Контрольная сумма CRC файла

Файл читается срезами по 4 МБ, и каждый срез обновляет сразу все варианты CRC, так что вся таблица получается за одно чтение. CRC рассматривает данные как большой двоичный многочлен и вычисляет остаток от его деления на фиксированный порождающий многочлен (по модулю 2). Каждый вариант задаётся шириной, многочленом, начальным значением, признаком отражения входных и выходных битов и конечным значением XOR (модель Rocksoft). Инструмент использует таблицу из 256 записей для каждого варианта и сверяет каждый вариант с контрольным значением из каталога — CRC от ASCII-строки 123456789 (например, CRC-32 = cbf43926, CRC-32C = e3069283, CRC-16/MODBUS = 4b37). Результат показывается как hex-число в порядке big-endian или в десятичном виде.

Распространенные Случаи Использования

  • Сравнить файл с CRC-32 из списка SFV (Simple File Verification)
  • Проверить образ прошивки по CRC из его манифеста
  • Узнать CRC-32, который ZIP-архив должен записать для файла
  • Вычислить CRC-32C блоба для проверки целостности в облачном хранилище

Примечание по Безопасности

CRC не обнаруживает намеренную подмену: любой может изменить файл и сохранить его CRC. Для проверок, важных для безопасности, используйте SHA-256 или подпись.

Часто Задаваемые Вопросы

Файл загружается на сервер?

Нет. Он читается через браузерный File API и обрабатывается локально блоками, поэтому даже большие файлы работают, не покидая ваше устройство.

Почему мой CRC-32 отличается от результата команды cksum?

POSIX cksum использует другой, неотражённый CRC-32 и добавляет длину файла. Файлы ZIP, gzip, PNG и SFV используют CRC-32, показанный здесь.

Можно ли ввести ожидаемый CRC в десятичном виде?

Да. Поле ожидаемой контрольной суммы принимает hex (в любом регистре, с необязательным 0x) или десятичное число для вариантов CRC.

Другие категории