Криптографические протоколы    

3.      Анализ асимметричного протокола Нидема-Шрёдера

Проанализируем асимметричный протокол Нидхема-Шрёдера. В рамках этого протокола действует три участника: два абонента А, В и доверенный сервер S. Ka, Kb, Ks – открытые ключи участников A, B и S соответственно, – секретный ключ сервера S, Na и Nb – нонсы.
В рамках протокола происходит следующий обмен сообщениями.

Произведем идеализацию протокола.

Шаги 1 и 4 протокола опущены по свойствам BAN-логики. Без этих шагов идеализированный протокол действует как будто сервер S связывается с участниками А и В спонтанно. Шаги 2 и 5 тривиальны и понятны. Необходимо объяснить разницу между шагами 3 и шагами 6 и 7. На этапе шага 3 участник В ничего не знает о нонсе Na, поэтому нонс не может служить доказательством идентичности А, и просто передается. А на шагах 6 и 7 нонсы Na и Nb используются как секреты, поэтому используется запись
Выдвинем первоначальные предположения:

Каждый участник знает открытый ключ сертификационного сервера S, а также свои собственные ключи. Сервер же знает свой ключ и открытые ключи абонентов А и В. Каждый абонент доверяет сертификационному центру корректно подписывать и передавать свои открытые ключи другим абонентам. Также каждый абонент верит, что нонсы, которые он генерирует, свежие и могут выступать в роли секрета. Значение последних двух предположений станет понятно в ходе анализа протокола.
Приступим к анализу прокола. Рассмотрим шаг 2 идеализированного протокола:

применим правило значения сообщений:

Затем применим правило проверки нонсов:

На этом этапе использовалось первоначальное предположение Это обозначает, что абонент А верит что ключ Kb свежий, то есть, что ключ не скомпрометирован. Данное предположение перекрывает возможность атаки типа «человек посередине» в случае компрометации предыдущего открытого ключа абонента B. Далее применяем правило полномочий:

Получаем, что участник протокола А доверяет открытому ключу участника
На шаге участник B не может сказать ничего о том, что он получил. Он не знает кто прислал ему данное сообщение, абонент может только расшифровать его На следующем шаге идеализированного протокола, когда аналогично шагу 2, после применения правил значения сообщений, проверки нонсов и полномочий получаем:

Здесь используется первоначальное предположение Возникает идентичная шагу 2 ситуация, только по отношению к абоненту В.
На шаге 6 B, используя общий секрет Na доказывает А, что сообщение пришло именно от него, и что сообщение своевременно. Имея соответствующий ключ, участник А может расшифровать сообщение. Применяя правило значения сообщений и проверки нонсов получаем:

Теперь абонент А использует Nb в сообщении 7. Абонент B проверяет нонс и выводит, что Итак, мы имеем финальные верования:

Каждый участник знает открытый ключ другого и знает общий секрет, который может использоваться при последующих сеансах связи и при обмене данными. Участники верят, что этот секрет известен только им.
Следует отметить, что протокол аутентификации достигает своих целей только при указанных выше первоначальных предположений. Два из этих предположений не обеспечиваются средствами протокола. Для этого необходимы средства, которые обеспечат данные предположения еще до начала выполнения протокола.