Формальный анализ протокола
Объект B получает сообщение 1: B
Ta,Na, , откуда по формуле получают:B
Ta, Na; B.Учитывая предположения B
и B, по правилу значения сообщений для общих секретов получают:B
AH(Ta, Na).Откуда по правилу
получают:B
ATa, Na.Используя полученный результат и предположение B
#Ta, по правилу проверки нонсов получают:B
ANa.Отсюда, используя правило полномочий и предположение B
ANa, получают:B
Na.Таким образом, B аутентифицирует A.
Получив сообщение 2, A узнаёт, что B
Na, поэтому в идеализированном протоколе его следует изменить следующим образом: ANa, Nb, .Из сообщения 2 по формуле
, получают:A
Na, Nb; A.Учитывая предположения A
и A, по правилу значения сообщений для общих секретов получают:A
B(H(Na, Nb), BNa).Откуда по правилу
. получают:A
B(Na, Nb, BNa).Используя полученный результат и предположение A
#Na, по правилу проверки нонсов получают:A
BNb; ABNa.Из выражения A
BNa и предположения ABNb по правилу полномочий получают:A
Nb.Последнее выражение фактически означает аутентификацию объекта B объектом A. Выражение A
BNb означает, что объект A узнаёт, что объект B его аутентифицировал.Получив сообщение 3, B узнаёт, что A
Nb поэтому сообщение 3 в идеализированном протоколе следует изменить следующим образом: BNb, .Из сообщения 3 по формуле
, получают:A
Nb; B.Учитывая предположение A
, по правилу значения сообщений для общих секретов получают:B
A(H(Nb, Na), ANb).Откуда по правилу
получают:B
A(Nb, ANb).Используя полученный результат и предположение B
#Nb, по правилу проверки нонсов получают:B
ANb.Последнее выражение означает, что объект B узнаёт, что объект A его аутентифицировал.