Возьмем функцию h, обладающую двумя вышеперечисленными свойствами, зафиксируем небольшое по сравнению с длиной входной последовательности значение к. Разобьем входную последовательность S на Su состоящую из первых к бит, и на S2 - оставшуюся часть входной последовательности (S = Si||S2).
Теперь определим функцию ht как ht(S) = St || h (S2). Таким образом, в выходной последовательности первые к бит останутся без изменений. Очевидно, что ht свободна от коллизии, поскольку таковой является функция h. Однако h не унаследовала свойство свободы от корреляции, так как можно легко построить X и Y, при которых значение h(X) отличается от h(Y) на к бит.
Необходимо отметить, что основным способом поиска коллизий у хэш-функций является метод, основанный на «парадоксе дня рождения». Суть его заключается в генерации двух наборов по 2п/2 сообщения в каждом. Согласно парадоксу дня рождения вероятность того, что в этих наборах найдется пара сообщений, имеющих одинаковые хэш-значения, больше 1/2. Из недостатков метода следует отметить значительные временные затраты для генерации данных наборов сообщений, необходимость иметь большой объем памяти для их хранения и наличие быстрых алгоритмов сортировки. Этот метод в случае короткой длины хэш-значения является эффективным как для хэш-функций, построенных с нуля, так и для хэш-функций, построенных на основе известных алгоритмов блочного шифрования. Хотя к хэш-функциям, построенным на основе алгоритмов блочного шифрования, применимы методы криптоанализа алгоритмов блочного шифрования.
criptogrof.ru Криптография: защита информации и информационная безопасность Карты сайта: 1 2 3 4
