Генератор хеша CRC-32

Генерируйте контрольные суммы CRC-32 — промышленный стандарт

Поделиться:

Генератор хеша CRC-32

Стандартная циклическая проверка избыточности для целостности данных

CRC-32 — самая используемая некриптографическая функция контрольной суммы в мире. Создаёт 32-битный хеш (8 hex символов) методом полиномиального деления. CRC-32 везде: форматы ZIP и PNG, сети Ethernet, протоколы USB и файловые системы.

Что такое CRC-32?

CRC-32 трактует входные данные как гигантский полином и вычисляет остаток от деления на фиксированный порождающий полином.

✅ Преимущества

  • Аппаратное ускорение: Инструкции Intel CRC32 вычисляют на скорости памяти
  • Надёжное обнаружение: Находит все ошибки в 1, 2 битах и нечётные
  • Универсальный стандарт: Ethernet, USB, ZIP, PNG, MPEG-2
  • Простой и быстрый: Таблицы подстановки для быстрого вычисления

📊 Случаи использования

  • Архивация: Проверка целостности ZIP и gzip
  • Сети: Верификация фреймов Ethernet
  • Хранение: Целостность файловой системы
  • Мультимедиа: Целостность файлов PNG и MPEG

⚠️ Замечание по безопасности

CRC-32 не является криптографической хеш-функцией. Предназначена для обнаружения случайных ошибок, не для защиты от намеренной модификации.

🔄 Сравнение CRC-32

🔵

CRC-32

32 бита, полиномиальная

Обнаружение ошибок, не крипто

🟢

Adler-32

32 бита, арифметическая

Быстрее, слабее обнаружение

🟡

MD5

128 бит, криптографическая

Гораздо медленнее, но безопаснее

❓ Часто задаваемые вопросы

Разница между CRC-32 и CRC-32B?

Они используют разные порождающие полиномы. CRC-32B — это вариант, который PHP вычисляет по умолчанию.

Почему CRC-32 нельзя использовать для безопасности?

CRC-32 линейна и обратима. Злоумышленник может легко создать коллизии.

CRC-32 обнаруживает все ошибки?

Нет. CRC-32 обнаруживает 100% ошибок в 1 и 2 битах, но может пропустить некоторые паттерны ошибок.