logo
Лекции / Малов / Другие сети от другого Малова / 09) аутентификация

4.6. Протокол для сетей подвижной радиосвязи

В последние годы возникла задача разработки криптографических протоколов для сетей подвижной радиосвязи. Работа в сети осуществляется с помощью портативных приемопере­датчиков, причем ограниченный объем памяти и невысокая производительность процессора не позволяют хранить большое количество ключей и выполнять сложные криптографиче­ские вычисления. Решение, применяемое на практике, заключается в создании центрального сервера, в задачу которого входят установление и поддержка защищенного режима взаимо­действия абонентов сети.

Интересный вариант протокола для сетей подобного типа был предложен в 1989 г. Тате-баяши (М. Tatebayashi), Матцузаки (N. Matsuzaki) и Ньюманом (D.B. Newman) [48]. TMN-протокол разработан исходя из предположения, что персональное устройство абонента сети (например, Smart Card) позволяет выполнять некоторые криптографические вычисления — возводить в куб по модулю двусоставного числа, суммировать по модулю 2, а также вы­полнять шифрование/дешифрование с помощью стандартного криптоалгоритма (например, DES). Известно |40], что арифметическая операция возведения в куб по модулю двусоставно­го числа (произведение двух простых чисел) обладает свойствами однонаправленной функ­ции, то есть функции, которую легко вычислить, но трудно обратить. Таким образом, вы­числение кубического корня по модулю двусоставного числа представляет собой трудоемкую задачу. Однако при известных сомножителях данная задача решается существенно более просто. Следовательно, сложность вычисления кубического корня эквивалентна сложности факторизации двусоставного числа [39].

Рассмотрим взаимодействие Алисы и Боба при условии, что Сэм (сервер) знает сомно­жители модуля N, причем все остальные абоненты знают N, но не знают сомножителей:

Алиса и Боб генерируют случайные числа ra и rb соответственно, возводят их в куб по модулю N и посылают Сэму. Сэм, зная разложение числа N, берет кубический корень и по­лучает числа ra и rb . Далее Сэм суммирует (по модулю 2) полученные числа и возвращает результат Алисе. Теперь Алиса может вычислить rb, так как rb = ra ® (R-A Ф rb)- Боб знает число rb по построению, следовательно, Алиса и Боб имеют общий сеансовый секрет­ный ключ для шифрования/дешифрования конфиденциальной информации. В результате пассивного перехвата криптоаналитик противника получает три шифротекста: зашифрован­ные на открытом ключе сервера одноразовый ключ ra, сеансовый ключ Rв и их сумму по модулю 2. Соответственно имеется две возможности: раскрыть сеансовый ключ методом си­ловой атаки или выполнить факторизацию модуля N, атаковать безусловно секретный шифр Вернама ra ® rb- В работе [48] доказано, что секретность сеансового ключа эквивалентна сложности факторизации числа N.

Тем не менее в 1994 г. Симмонс (G. J. Simmons) показал, что протокол может быть успешно атакован [49]. Любой легальный абонент сети, например Чарли (С), при содействии другого легального абонента, например Дэйва (D), может легко раскрыть сеансовый ключ rb- Для этого Чарли договаривается с Дэйвом о сеансовом ключе, который будет сгенерирован Дэйвом по запросу сервера, то есть сеансовый ключ rd известен Чарли заранее. Тогда протокол будет состоять из следующей последовательности шагов:

№ Отправитель______Получатель Сообщение

На первом шаге Чарли, воспользовавшись шифротекстом, перехваченным при взаимо­действии Боба и Сэма, формирует сообщение Rс3 (R3B mod N) mod N и посылает его Сэму с запросом на установление соединения между ним и Дэйвом. Отметим, что Сэм в силу криптографических свойств преобразования не может контролировать структуру принятого сообщения, даже если сохраняет все предыдущие сообщения других абонентов сети. Далее, следуя дисциплине протокола, Сэм запрашивает сеансовый ключ от Дэйва. Взяв кубический корень и расшифровав тем самым сеансовый и одноразовый ключи, Сэм вычисляет их сумму (по модулю 2) RD RCRB и посылает Чарли. Поскольку Чарли знает RD (в силу предвари­тельной договоренности с Дэйвом), он может легко вычислить RcRв=RD mod2 (RD mod2 RCRВ).Теперь для раскрытия сеансового ключа Боба Чарли сначала должен вычислить RC-1 (всегда может сделать, так как знает rC) и затем RB= RC-1( RCRB)= ( RC-1(RD mod2 ( RD mod2 RCRB))).