Постулаты BAN-логики

       

Описание протокола аутентификации


Описываемый протокол позволяет двум субъектам A и B аутентифицировать друг друга на основе общего секретного ключа аутентификации (СКА) и цифровых идентификаторов (DIa и DIb). До выполнения протокола участники должны знать значения цифровых идентификаторов друг друга и выработать общий секретный ключ аутентификации. Каждый субъект протокола должен иметь датчик случайных чисел для генерации нонсов, синхронизированные часы и алгоритм вычисления хэш-функции с ключом (H). Для защиты от атак повтора сообщений используются случайные последовательности – нонсы (Na и Nb). Отметка времени Ta

необходима для проверки приемлемости первого сообщения протокола. Символ úç в описании протокола означает операцию конкатенации.

1. Объект A:

- генерирует нонс Na;

-          считывает с системных часов отметку времени Ta;

-          вычисляет ha = HСКА(BúçAúçTaúçDIaúçNa);

-          посылает B сообщение [BúçAúçTaúçNaúçha].

2. Объект B:

-          получает от A сообщение [BúçAúçTaúçNaúçha];

-          считывает отметку времени tb;

-          проверяет условие |tb?Ta| < D;

-          получает из базы данных цифровой идентификатор объекта A – DIa;

-          проверяет условие ha 

 HСКА(BúçAúçTaúçDIaúçNa);



-          если хотя бы одно из условий не выполняется, протокол разрывается; при выполнении этих условий B аутентифицирует A;


-          генерирует нонс Nb;
-          вычисляет hb = HСКА(AúçBúçDIbúçNaúçNb);
-          посылает A сообщение [AúçBúçNaúçNbúçhb].
3. Объект A:
-          получает от B сообщение [AúçBúçNaúçNbúçhb];
-          сравнивает полученное значение нонса Na
с переданным;
-          получает из базы данных цифровой идентификатор объекта B – DIb;
-          проверяет условие hb 
 HСКА(AúçBúçDIbúçNaúçNb);
-          если хотя бы одно из этих условий не выполняется, протокол разрывается; в случае выполнения этих условий A аутентифицирует B и узнаёт, что B аутентифицировал A;
-          вычисляет ha2 = HСКА(BúçAúçNbúçNa);
-          посылает B сообщение [BúçAúçNbúçha2].
4. Объект B:
-          получает от A сообщение [BúçAúçNbúçha2];
-          сравнивает полученное значение нонса Nb
с переданным;
-          проверяет условие ha2 
 HСКА(BúçAúçNbúçNa);
-          если хотя бы одно из этих условий не выполняется, протокол разрывается; в случае выполнения этих условий B узнаёт, что A аутентифицировал B.

Содержание раздела