Hash & Crypto Helpers

Калькулятор CRCПроверьте байты и параметры модели

Выберите формат входа и точную модель, затем запустите расчёт. Результат сохраняет параметры и оба порядка байтов.

Калькулятор CRC

Текст или байты

Результат расчёта

Запустите расчёт. Пустой текст также допустим.

Текст и содержимое файлов обрабатываются в браузере.

Параметры
Ширина (биты)
32
Полином (hex)
04C11DB7
Начальное значение (hex)
FFFFFFFF
Отражать входные биты
Да
Отражать выходные биты
Да
Финальный XOR (hex)
FFFFFFFF

Своя модель CRC использует прямой полином MSB без старшего члена. Параметры Adler-32 фиксированы.

Введите число из 4 или 8 hex-цифр. Допустимы внешние пробелы и 0x. Это не последовательность байтов little-endian.

Текст: 1 000 000 единиц UTF-16 и 1 MiB после декодирования. Один файл: до 2 GiB, чтение блоками по 1 MiB.

Запустите расчёт. Пустой текст также допустим.

Калькулятор CRC помогает найти причину, по которой ответ устройства отличается от тестового значения. Название CRC16 не задаёт единственную модель: нужны полином, начальный регистр, отражения битов и финальный XOR.

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

Что показывает Калькулятор CRC

Параметры остаются рядом с числом

Калькулятор CRC сохраняет полную модель с каждым результатом. ARC и MODBUS используют один полином, но разные начальные регистры. Сохранённые параметры позволяют воспроизвести расхождение, не вспоминая прежние настройки.

Одна последовательность байтов проходит через две модели с разными параметрами и даёт разные суммы.

Одно состояние на весь файл

Последовательные блоки обновляют один накопитель в исходном порядке. Итог не зависит от границ чтения. Отдельные CRC блоков не объединяются через XOR; можно следить за прогрессом и отменить вычисление.

Последовательные блоки файла обновляют один накопитель до получения общей контрольной суммы.

Три проверки перед сравнением

01

Уточните полное название модели

Для привычного CRC32 в ZIP выберите CRC-32/ISO-HDLC. CRC-32C и MPEG-2 — отдельные модели. Для своего варианта возьмите прямой полином, Init, RefIn, RefOut и XorOut из спецификации протокола.

02

Различайте символы и байты

31 32 33 в режиме hex — три байта. В текстовом режиме цифры и пробелы кодируются в UTF-8. Для другой кодировки передайте исходный файл либо точные байты в шестнадцатеричной записи.

03

Сравните число, затем порядок байтов

Пример 123456789 позволяет проверить Check. CRC-16 MODBUS даёт число 4B37, а в little-endian передаются байты 37 4B. В поле ожидания введите 4B37. После изменений Ctrl/Cmd+Enter запускает новый расчёт.

Явные модели и воспроизводимые результаты

Восемь готовых вариантов

CRC-калькулятор предлагает ARC, MODBUS, IBM-3740 и XMODEM на 16 бит. ISO-HDLC, CRC-32C и MPEG-2 работают на 32 битах. Для собственных параметров доступны ширины 16 и 32 бита.

Независимое отражение битов

RefIn разворачивает биты внутри каждого входного байта, RefOut — биты итогового регистра. Big-endian и little-endian только переставляют байты одного числа, не меняя модель алгоритма.

Отдельные правила Adler-32

S1 начинается с 1, S2 — с 0; обе суммы вычисляются по модулю 65521. Пустой ввод даёт 00000001. Полином и финальный XOR, применяемые к CRC, для Adler не используются.

JSON с условиями вычисления

Отчёт содержит модель, числовые параметры, формат входа, число байтов, ожидаемое значение и сравнение. Сохраняются hex, десятичная и двоичная записи и оба порядка байтов. Исходного содержимого в отчёте нет.

Форматы, ограничения и точность входа

Байты не исправляются автоматически
Hex допускает полные пары цифр и пробельные символы ASCII. Префиксы 0x, запятые, комментарии, другие пробелы и нечётные группы отклоняются. Нули не дописываются, поле CRC в кадре не удаляется и не добавляется.
Разные пределы для текста и файлов
Текст и исходная hex-строка ограничены 1 000 000 единиц UTF-16 и 1 MiB после декодирования. Один файл может занимать до 2 GiB и читается блоками по 1 MiB. Пустой ввод допустим; каталоги и списки сумм пакетно не проверяются.
Текст не нормализуется
Используется UTF-8 с сохранением пробелов, символов BOM и переводов строк. Непарные суррогаты вызывают ошибку. Файл читается как исходные байты, без распаковки и преобразования кодировки.
Модель нужно задать явно
Расчёт контрольной суммы не включает угадывание алгоритма, восстановление полинома, CRC8/64, генерацию кода или корректирующих байтов. Изменение ввода или параметров отменяет текущую работу и блокирует экспорт до пересчёта.
Совпадение не подтверждает источник
CRC и Adler обнаруживают многие случайные повреждения, но возможны коллизии и намеренные изменения с той же суммой. Совпадение не удостоверяет отправителя и не восстанавливает повреждённый файл.

Вопросы: Калькулятор CRC

Почему два CRC-калькулятора дают разные результаты?

Сначала сравните точные байты, затем ширину, полином, Init, RefIn, RefOut и XorOut. Уточните, показывает ли другая программа число или байты в обратном порядке. Даже один перевод строки в конце меняет результат.

CRC-32 и CRC-32C одинаковы?

Нет. Для ISO-HDLC используется 04C11DB7, для CRC-32C — 1EDC6F41. На строке 123456789 получаются CBF43926 и E3069283 соответственно. Одинаковая ширина не означает взаимозаменяемость.

CRC-32 — это то же самое, что MD5 или SHA-256?

Нет. CRC предназначен для случайных ошибок передачи и хранения. MD5 и SHA-256 относятся к криптографическим хешам, однако MD5 не подходит для современных задач с требованием стойкости к коллизиям. Обычный хеш также не удостоверяет отправителя.

Какой вариант CRC-32 использует этот инструмент?

По умолчанию выбран CRC-32/ISO-HDLC: полином 04C11DB7, Init и XorOut FFFFFFFF, оба отражения включены. Калькулятор CRC также позволяет выбрать CRC-32C, MPEG-2 и собственные 32-битные параметры.

В чём разница между CRC-16/CCITT-FALSE и CRC-16/MODBUS?

CCITT-FALSE также называется IBM-3740: полином 1021, Init FFFF, без отражений. MODBUS использует 8005, FFFF и оба отражения. XMODEM с полиномом 1021 и Init 0000 — другая модель, отличная от CCITT-FALSE.

Остался вопрос?

Калькулятор CRC: вернуться к проверке

Калькулятор CRC позволяет начать с известного образца, менять по одному параметру и сохранить отчёт для проверенного значения.