Вероятность коллизии при использовании 32-битного CRC уникального 32-байтового массива - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь выяснить, приведет ли использование 32-битного CRC к конфликту 32-байтового массива.

BackGround

Моя система считывает некоторую конфигурацию при каждой загрузкеот внешней вспышки.Я сохраняю хэш SHA256 последней известной конфигурации, и когда я читаю конфигурацию, я вычисляю хэш SHA256 и сравниваю его.Если два хэша различны, то данные различаются.

Мне нужно взять этот SHA256 и превратить его в 32-битный хеш для другой части системы (из-за некоторых ограничений устаревшего кода).

Вопросы

Будет ли много коллизий, если я вычислю 32-битный CRC для 32-байтового хэша из SHA256?

Я вычисляювероятность столкновения равна 0. Можете ли вы дать мне знать, если это правильно?Количество выборок K всегда равно 2 в моей задаче (я думаю), потому что я вычисляю 32-битную CRC на двух 32-байтовом байтовом массиве (байтовый массив SHA256).

см. Расчет здесь

1 Ответ

0 голосов
/ 27 сентября 2018

Это верно, если под "0" вы подразумеваете это очень маленькое число.Это небольшое число - вероятность того, что вы получите 32-битный CRC из случайных данных, который случайно совпадет с тем, что вы ожидали.Это просто 2 -32 .

...