Есть ли лучший алгоритм CRC32 для проверки повреждения данных? - PullRequest
0 голосов
/ 19 ноября 2009

Я получаю пакеты от оконечного устройства, а затем, получив пакеты на стороне хоста, использую алгоритм crc32 для генерации mac для пакетных данных, чтобы я мог проверить, нет ли повреждения данных при передаче пакета от терминала к хосту. Является ли crc32 надежным для этой цели или есть какой-то лучший алгоритм?

Ответы [ 3 ]

1 голос
/ 19 ноября 2009

crc32 - это просто, надежно и быстро. На самом деле TCP использует только контрольную сумму из 16 цифр.

1 голос
/ 19 ноября 2009

Полезность CRC32 зависит от размера проверяемых данных и от того, от чего вы защищаете. Для небольших пакетов и обнаружения сбоев передачи, это, вероятно, просто отлично.

Если вы защищаетесь от активного злоумышленника, возможно, вам нужна безопасная хеш-функция или использование шифра.

Есть много литературы по этому виду вещей; это действительно зависит от того, чего вы пытаетесь достичь. Однако: если вашей основной проблемой является обнаружение ошибок связи на коротких пакетах, CRC32, вероятно, просто в порядке.

1 голос
/ 19 ноября 2009

CRC32 используется такими протоколами, как Ethernet и HDLC . Я бы сказал, что это очень подходит для обнаружения ошибок.

...