Алгоритмы хэширования
Автор: adm
Убедимся в том, что простая контрольная сумма, вроде той, что применяется в Интернет-протоколах, плохо подходит для вычисления дайджеста сообщения. Вместо того чтобы выполнять арифметические действия в дополнительном коде (как в Интернет-протоколах), мы будем вычислять контрольную сумму, обращаясь с каждым символом как с байтом и суммируя все байты блоками по четыре байта. Пусть Боб задолжал Алисе 100 долларов и 99 центов и отправляет ей долговую расписку в виде текстовой строки: «IOU100.99BOB». В формате ASCII (в шест-надцатеричной нотации) эти символы выглядят следующим образом: 49, 4F, 55, 31,30,30, 2Е, 39, 39, 42,4F, 42.

В верхней части рис.18 показано, что четырехбайтовая сумма для этого сообщения равна В2 Cl D2 АС. Немного отличающееся сообщение (со значительно большей суммой) показано в нижней части рисунка. Однако у сообщений «IOU 100.99BOB» и «IOU900.19BOB» одинаковая контрольная сумма! Таким образом, этот простой алгоритм нарушает два приводившихся ранее требования к дайджесту сообщения. При использовании данного алгоритма нетрудно найти другое сообщение с той же контрольной суммой. Очевидно, что для обеспечения безопасности нам необходима более мощная, нежели контрольная сумма, хэш-функция.
В верхней части рис.18 показано, что четырехбайтовая сумма для этого сообщения равна В2 Cl D2 АС. Немного отличающееся сообщение (со значительно большей суммой) показано в нижней части рисунка. Однако у сообщений «IOU 100.99BOB» и «IOU900.19BOB» одинаковая контрольная сумма! Таким образом, этот простой алгоритм нарушает два приводившихся ранее требования к дайджесту сообщения. При использовании данного алгоритма нетрудно найти другое сообщение с той же контрольной суммой. Очевидно, что для обеспечения безопасности нам необходима более мощная, нежели контрольная сумма, хэш-функция.
Комментарии
Нет комментариев. Вы можете быть первым!