Калькулятор контрольной суммы 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 файла
- Выберите Вариант CRC для сравнения (по умолчанию CRC-32).
- Нажмите на область загрузки или перетащите на неё файл; файл читается блоками, отображается индикатор прогресса.
- Проверьте Имя файла и Размер файла ниже, чтобы убедиться, что выбран нужный файл.
- Вставьте ожидаемый 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.