Описание тега crc16
Циклический контроль избыточности (CRC) - это код обнаружения ошибок, обычно используемый в цифровых сетях и устройствах хранения для обнаружения случайных изменений необработанных данных. К блокам данных, поступающим в эти системы, прикрепляется краткое контрольное значение, основанное на остатке от полиномиального деления их содержимого; при извлечении расчет повторяется, и могут быть предприняты корректирующие действия против предполагаемого повреждения данных, если контрольные значения не совпадают. Поскольку значение проверки имеет фиксированную длину, функция, которая его генерирует, иногда используется как хеш-функция. википедия
Наиболее часто используемые полиномиальные длины:
- CRC-8: 9 бит
- CRC-16: 17 бит
- CRC-32: 33 бита
- CRC-64: 65 бит
Поистине отличный учебник по CRC - это "Безболезненное руководство по алгоритмам обнаружения CRC" Росс Уильямс, которое также можно найти здесь, здесь, здесь, здесь и здесь.