2016-07-11 13 views
0

Я изучаю возможность предотвращения столкновений контрольных сумм CRC, когда они используются в качестве хэшей. Я знаю, как рассчитать вероятность столкновения для хэш-алгоритмов, которые распределены равномерно (что означает возможность получения всех возможных контрольных сумм для случайных входных данных).Распределение контрольных сумм CRC

То, что я не знаю (и я не мог найти в Интернете):

  1. ли CRC контрольная сумма, как правило [не] равномерно распределены?
  2. Распределение зависит от полинома?
  3. Распределение зависит от размера входных данных?

P.S .: Я знаю об ограничениях при использовании CRC в качестве хэшей, поэтому это не является частью этого вопроса.

ответ

3

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