CRC16 является 16-разрядным кодом Контроля циклическим избыточным кодом, используемым главным образом как метод обнаружения ошибок во время передачи данных.

Контроль циклическим избыточным кодом (CRC) является кодом с обнаружением ошибок, наиболее часто используемым в цифровых сетях и устройствах хранения для обнаружения случайных изменений в необработанных данных. Блоки данных, вводящие эти системы, присоединили короткое контрольное число, на основе остатка от полиномиального подразделения их содержания; на извлечении повторяется вычисление, и меры по ликвидации последствий могут быть приняты против предполагаемого повреждения данных, если контрольные числа не соответствуют. Поскольку контрольное число имеет фиксированную длину, функция, которая генерирует его, иногда используется в качестве хеша function.wikipedia

Обычно используемые полиномиальные длины:

  • CRC-8: 9 битов
  • CRC-16: 17 битов
  • CRC-32: 33 бита
  • CRC-64: 65 битов

Действительно превосходное учебное руководство на CRC является "Безболезненным Руководством Ross Williams по Алгоритмам обнаружения CRC", которые могут также быть найдены здесь, здесь, здесь, здесь, и здесь.