Научная статья на тему 'Формализованный анализ протоколов аутентификации'

Формализованный анализ протоколов аутентификации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
322
55
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АУТЕНТИФИКАЦИЯ / AUTHENTICATION / УЯЗВИМОСТИ ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ / БЕСКЛЮЧЕВЫЕ ХЕШ-ФУНКЦИИ / BAN-ЛОГИКА / BAN LOGIC / ЛОГИКА АУТЕНТИФИКАЦИИ / AUTHENTICATION PROTOCOL VULNERABILITIES / KEYLESS HASH FUNCTION / AUTHENTICATION LOGIC

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Юркин Д. В., Уткина А. А., Первушин А. О.

Введение: для уменьшения времени доступа к защищенному каналу связи разработчики телекоммуникационных систем всегда стремятся улучшить алгоритмическую реализацию протоколов аутентификации. При этом наряду с временными характеристиками всегда необходимо получать оценки защищенности, эффективности и надежности криптографических протоколов, что обеспечивается методами формализованного анализа. Цель: поиск типовых уязвимостей, наличие которых может скомпрометировать процесс аутентификации. Методы: на основе предикатов и постулатов формализованной логики проведен анализ протокола аутентификации Никитина Юркина, использующего бесключевые хеш-функции. Результаты: по результатам анализа, проведенного с помощью механизмов BAN-логики, в исследуемом протоколе выявлены недостатки, которые накладывают ограничения на область его применения, а именно: отсутствие знания о свежести сообщения от центра распределения ключей у участников процесса аутентификации, а также невозможность использовать данный протокол для того, чтобы уникально идентифицировать трех и более участников. Приведена модификация исходного протокола аутентификации, в результате которой выявленные ограничения его применения были нивелированы. Сформулированы обоснованные выводы, что данные исследования являются эффективным и востребованным способом описания криптографических протоколов в силу того, что, пользуясь им, можно определить, какие действия выполняет тот или иной протокол, а также выявить его типовые недостатки. Практическая значимость: результаты исследований позволяют повысить безопасность существующих распределенных сетей радиодоступа.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Formalized Analysis of Authentication Protocols

Introduction: Telecommunication system developers always try to reduce the time of authentication protocol execution using algorithmic implementation of authentication protocols. However, along with the temporal characteristics, it is always important to estimate the security, efficiency and reliability of cryptographic protocols. This can be provided by formalized analysis methods. Purpose: Search for typical vulnerabilities whose presence can undermine the authentication. Methods: On the base of predicates and postulates of formalized logic, Nikitin-Yurkin authentication protocol with keyless hash functions was analyzed. Results: BAN logic analysis revealed certain shortcomings in the studied protocol, which impose limitations on its application scope; namely: the lack of knowledge about how fresh a message for the authentication participants from the key distribution center is, and also the impossibility to use this protocol to uniquely identify three or more participants. The paper presents a modification of the initial authentication protocol which removed the limitations of its application. Well-founded conclusions are formulated that these studies are an effective and much-needed way of describing cryptographic protocols because they can help you determine what actions are performed by a certain protocol, and also to identify its typical shortcomings. Practical relevance: The results of this research allow you to improve the security of distributed radio access networks.

Текст научной работы на тему «Формализованный анализ протоколов аутентификации»

КОДИРОВАНИЕ И ПЕРЕДАЧА ИНФОРМАЦИИ ^

УДК 004.05

с1ок10.15217/155п1684-8853.2018.2.76

ФОРМАЛИЗОВАННЫЙ АНАЛИЗ ПРОТОКОЛОВ АУТЕНТИФИКАЦИИ

Д. В. Юркин3, канд. техн. наук, доцент, [email protected] А. А. Уткинаа, магистрант, [email protected] А. О. Первушин6, магистрант, [email protected]

аСанкт-Петербургский государственный университет телекоммуникаций им. проф. М. А. Бонч-Бруевича, Большевиков пр., 22-1, Санкт-Петербург, 193232, РФ

6Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, Кронверкский пр., 49, Санкт-Петербург, 197101, РФ

Введение: для уменьшения времени доступа к защищенному каналу связи разработчики телекоммуникационных систем всегда стремятся улучшить алгоритмическую реализацию протоколов аутентификации. При этом наряду с временными характеристиками всегда необходимо получать оценки защищенности, эффективности и надежности криптографических протоколов, что обеспечивается методами формализованного анализа. Цель: поиск типовых уязвимостей, наличие которых может скомпрометировать процесс аутентификации. Методы: на основе предикатов и постулатов формализованной логики проведен анализ протокола аутентификации Никитина — Юркина, использующего бесключевые хеш-функции. Результаты: по результатам анализа, проведенного с помощью механизмов ВАЫ-логики, в исследуемом протоколе выявлены недостатки, которые накладывают ограничения на область его применения, а именно: отсутствие знания о свежести сообщения от центра распределения ключей у участников процесса аутентификации, а также невозможность использовать данный протокол для того, чтобы уникально идентифицировать трех и более участников. Приведена модификация исходного протокола аутентификации, в результате которой выявленные ограничения его применения были нивелированы. Сформулированы обоснованные выводы, что данные исследования являются эффективным и востребованным способом описания криптографических протоколов в силу того, что, пользуясь им, можно определить, какие действия выполняет тот или иной протокол, а также выявить его типовые недостатки. Практическая значимость: результаты исследований позволяют повысить безопасность существующих распределенных сетей радиодоступа.

Ключевые слова — аутентификация, уязвимости протоколов аутентификации, бесключевые хеш-функции, ВАЫ-логика, логика аутентификации.

Цитирование: Юркин Д. В., Уткина А. А., Первушин А. О. Формализованный анализ протоколов аутентификации// Информационно-управляющие системы. 2018. № 2. С. 76-83. doi:10.15217/issn1684-8853.2018.2.76

Citation: Yurkin D. V., Utkina A. A., Pervushin A. O. Formalized Analysis of Authentication Protocols. Informatsionno-upravliaiushchie sistemy [Information and Control Systems], 2018, no. 2, pp. 76-83 (In Russian). doi:10.15217/issn1684-8853.2018.2.76

Введение

В настоящее время в зависимости от различных требований к автоматизированным системам в защищенном исполнении средства защиты информации используют большое множество различных криптографических протоколов аутентификации [1, 2]. Высокой актуальностью обладает вопрос поиска уязвимостей в системах управления доступом к защищаемым информационным ресурсам, по причине чего возникает необходимость формализованного анализа самой модели работы криптографического протокола методами, инвариантными к его алгоритмической и программной реализации [3]. Нередко в области стандартизации и сертификации требуется формально изложить работу различных криптографических протоколов, чтобы понять и оценить, в какой степени они достигают нужных результатов, а также выявить их недостатки [4].

В данной статье рассмотрено применение аппарата логики формализованного анализа про-

токолов аутентификации — ВЛМ-логики. С помощью механизмов формализованной логики проанализирован протокол аутентификации с использованием бесключевых хеш-функций с целью выявить в нем недостатки в различных схемах функционирования.

ВЛМ-логика — это формализованный метод анализа криптографических протоколов, по результатам применения которого может быть получен резюмирующий ответ на ряд вопросов, например:

— какие фактические задачи выполняет этот протокол;

— присутствуют ли в этом протоколе избыточные действия, которые можно не выполнять без снижения защищенности;

— обеспечивает ли должную конфиденциальность передаваемых данных этот протокол, и могут ли скомпрометировать отправленные в открытом явном виде данные ход его работы [5-9].

Важнейшей целью разработки метода является объяснение основных концепций при провер-

ке подлинности, так как ВЛМ-логика большей частью построена на парадигме доверия [10-12].

Основные предикаты и их обозначения

Протоколы аутентификации, как правило, описываются формализованным перечислением сообщений, передаваемых между участниками (корреспондентами), при этом указываются отправитель, получатель и содержимое каждого сообщения [10, 13-15]. Обычные неформально-описательные обозначения неудобны для операций в формализованной логике, так как на стадии описания требуется однозначное указание предопределенных значений полей каждой части каждого сообщения, и эти значения не всегда очевидно следуют из данных, содержащихся непосредственно в самих сообщениях. Для того чтобы ввести точное обозначение и обеспечить однозначное соответствие оригинальному описанию протокола, каждое сообщение преобразуется в логическую формулу, и эта логическая формула является модифицированной версией исходного описания сообщения. После чего логические формулы связываются утверждениями [15, 16].

ВЛМ-логика оперирует несколькими видами объектов, таких как участники (корреспонденты), ключи шифрования и формулы (утверждения). Сообщения протокола идентифицируются как утверждения. Идентификаторы А, В и 5 ассоциируются с участниками; идентификаторы КаЬ, Ка8 и КЬ8 обозначают парные ключи для

симметричных криптографических методов; Ка,

—1 —1 —1 ^ Кь и Кв — открытые ключи; Ка , Кь и Ка —

секретные ключи для криптографических преобразований с открытым ключом, а Ыа, Ыь и Ыс обозначают утверждения [11, 17, 18].

Единственной логической операцией, применяемой в данном математическом аппарате, является конъюнкция, которая обозначается запятой. Также применимы такие свойства конъюнкции, как ассоциативность и коммутативность. Аппаратом, помимо логической операции, используется следующая конструкция:

1) А X — корреспондент А верит в высказывание X;

2) А < X — корреспондент А видит высказывание X;

3) А |~ X — корреспондент А в определенное время отправил сообщение, содержащее X;

4) А | ^ X — корреспондент А обладает юрисдикцией над X, т. е. участник А обладает авторитетом по высказыванию X;

5) #X — высказывание X является свежим, т. е. X не было отправлено в сообщении ранее до момента текущего выполнения итерации протокола;

6) кеу(К, А ^ В) — корреспонденты А и В могут использовать общий ключ К для взаимодействия, который никогда не может быть получен какими-либо другими корреспондентами, помимо А или В, или доверенными корреспондентами от А или В;

7) {X}K подразумевает, что данные X зашифрованы ключом К;

8) Н2) — сравнение значений хеш-функций; истинно только тогда, когда Н1 полностью совпадает с Н2 [19].

Логические постулаты

Перед описанием логических постулатов необходимо отметить нижеприведенные положения ВЛМ-логики.

В процессе аутентификации существует два условных временных интервала: прошлое и настоящее. Настоящий временной интервал начинается с момента выполнения рассматриваемого протокола. Все сообщения, отправленные до времени выполнения протокола, попадают в интервал прошлого [1, 20].

Все убеждения, принятые в настоящее время, являются действительными на протяжении всей работы протокола. Кроме того, предполагается, что когда участник А высказывает X, то он априори верит в истинность X.

Зашифрованное сообщение представляется как связанное логическое утверждение, зашифрованное ключом шифрования. Предполагается, что шифрование выполняется таким образом, что обрабатывается сразу все сообщение. Если в одно сообщение включены две части одного и того же исходного сообщения, зашифрованные отдельно, то считается, что обе части пришли в разных сообщениях.

Ниже приведено описание логических постулатов.

1. Правило назначения сообщения объясняет, как получить представление о происхождении сообщений.

Правило для общих ключей выглядит следующим образом:

А |= кеу(К, А ^ В),А< {Х}к А \= В |~ X

(1)

Если корреспондент А считает, что у него есть общий ключ К с корреспондентом В, и А видит сообщение Х, зашифрованное на ключе К, то А верит в то, что В высказал Х.

2. Правило проверки уникальности меток

А |= # X, А |= В |~ X А \= В \= X

(2)

То есть, если корреспондент А полагает, что сообщение X было высказано недавно и что корреспондент B однажды высказал X, то А считает, что B верит в X.

3. Правило юрисдикции

А \= В ^ X, А\= В \= X А \= X

(3)

Правило говорит о том, что если корреспондент А считает, что корреспондент В имеет юрисдикцию над X, и А верит тому, что B верит в истину X, то А верит в истину X.

С учетом вышеописанных постулатов строится система доказательств. Формула X выводима из формулы Y, если существует последовательность формул £0; .. ; Zn, где Z0 = Y, Zn = Х и каждая Zi + 1 может быть получена из предыдущих путем применения вышеописанных правил [1].

Протокол аутентификации с использованием бесключевых хеш-функций

Рассмотрим в данной работе протокол аутентификации с использованием бесключевых хеш-функций, который был разработан В. Н. Никитиным и Д. В. Юркиным. Данный протокол предусматривает двухстороннюю аутентификацию корреспондентов путем передачи всего двух сообщений. Для однонаправленного преобразования информации используются бесключевые хеш-функции, а общий секрет используется в качестве входной переменной хеш-функции [21].

В данном протоколе А и В являются корреспондентами; 5 — центр распределения ключей; H(X) = Н, где Н^) — функция хеширования; X — некое высказывание; Н — отображение высказывания X; || — операция конкатенации строк [20, 21].

До начала работы протокола доверенная сторона (центр распределения ключей) генерирует случайную секретную последовательность КаЬ, на основании которой корреспонденты аутенти-фицируют друг друга. По защищенному каналу осуществляется передача секретной последовательности обеим сторонам:

1) в ^ А : {КаЬ }Кае;

в ^ В : {КаЬ} Кы.

Корреспонденты А и В принимают общий секрет КаЬ от центра распределения ключей.

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

ванного с общим секретом: Н5 = й(Ка6||С), а также хеш-функцию предыдущей хеш-функции Н(х) случайного числа и общего секрета Н5 = Н(КаЬ||С), конкатенированной со значением общего секрета: Нк = Н(Н8\\КаЬ) =Н(КаЬ\\Н8(КаЬ\\С)). После того как корреспондент А выполнил все вычисления, он отправляет корреспонденту В сообщение, содержащее случайное число С и значение бесключевой хеш-функции Нв:

2) А ^ В : С, Нн.

Корреспондент В принимает сообщение (С, Нв) от корреспондента А и далее производит вычисление значения хеш-функции от случайного числа С, принятого от инициатора, и общего секрета КаЪ: = Н(КаЪ \\ С). На основе этого вычисленного значения он вычисляет НЕ как значение бесключевой хеш-функции предыдущей хеш-функции случайного числа и общего секрета = Н(КаЪ \\ С), конкатенированной с общим секретом:

h

= Н(КаЬ \\ hs) = Н(КаЬ \\ Н(КаЬ)\\ С).

После выполнения вычислений корреспондент В сравнивает полученное значение Ъ^ и принятое от корреспондента А значение Нп. Если эти значения совпадают, то это значит, что А

Инициатор Предварительные Респондент

вычисления Распределение

общего секрета Активные

Вычисление: C hs = H(Kab\\C) hR = H(Kab\\hs)

вычисления

Передача: C, hR Прием: C, hR

Вычисление: hs = H(Kab \\ C) hR = H(Kab\\hs)

Верификация: hR

Прием: hs Передача: C, hs

Верификация: hs

■ Выполнение корреспондентами протокола двусторонней аутентификации

■ Execution of the protocol of reciprocal authentication by correspondents

успешно аутентифицирован, и корреспондент B отправляет корреспонденту A

3) В о А: к8.

Далее корреспондент A принимает отправленное корреспондентом Б значение и сравнивает его со значением бесключевой хеш-функции, вычисленной им ранее: = Если значения этих хеш-функций совпадают, то протокол завершен успешно [21].

Схема работы протокола представлена на рисунке.

В результате после идеализации протокола шаги его работы выглядят следующим образом:

1) Я о А : { Аеу (КаЬ, А о В)};

2) Я о А : { кеу(КаЬ, А о В;

3) А о Б : С, Нп = И(Ка^\Н8(КаЦс)У,

4) В о А :к8 =Н(КаЬ || С).

На основании приведенного формального описания получен идеализированный протокол двусторонней аутентификации.

Анализ протокола аутентификации с использованием бесключевых хеш-функций

Запишем цели протокола аутентификации в терминах ВЛМ-логики, т. е. укажем, какие логические утверждения должны быть выведены из предположений протокола с учетом последовательности шагов, выполняемых в данном протоколе [8, 15, 16]. Таким образом, аутентификация корреспондентов А и Б считается выполненной, если существует такое К, что:

А И кеу(К, А оБ) =А \=КаЬ\

Б \= кеу(К, А о Б) = Б И^.

Или, сказав иначе, оба корреспондента А и В должны поверить в то, что они используют для обмена сообщениями один и тот же секретный ключ КаЬ. Однако для анализируемого протокола требуется большее:

А \=Б \= кеу(К, А о Б) =А И Б И К^;

Б \=А \= кеу(К, А о Б) = Б |=А И КаЬ.

Таким образом, можно сказать, что каждый корреспондент должен верить в то, что другой корреспондент верит в то, что для обмена сообщениями они используют один и тот же секретный ключ КаЬ [1].

Для того чтобы гарантировать успешное выполнение протокола, необходимо сделать начальные предположения:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1) А \= кеу(Кш, А о 5); Б \= кеу(Кы, Б о 5); 5 И кеу(Кав, А о 5); 5 И кеу(Кы, Б о 5);

2) 5 \=кеу(КаЫ А о Б);

3) А (5 \ ^ кеу(К, А о Б)); Б (5 \ ^ кеу(К, А о Б));

4) А #С;

5) А \= #кеу(К, А о Б); Б\= #кеу(К, А о Б).

В первой группе выведены четыре формулы, обозначающие общие ключи для взаимодействия между клиентами А и Б и сервером 5. Формула 5 кеу(КаЬ, А о Б) означает, что сервер изначально знает ключ, который должен стать общим секретом между А и Б.

Третья группа из двух формул указывает на то, что корреспонденты А и Б полагаются на 5 при генерации криптографического ключа.

Предположение А #С указывает на то, что корреспондент А сгенерировал случайное число С и верит в его свежесть.

Последние два предположения в пятой группе кажутся необычными, но в дальнейшем анализе протокола будет показано, зачем они необходимы.

Перейдем непосредственно к анализу протокола аутентификации.

Предварительные вычисления.

1. Корреспондент А получает по защищенному каналу первое сообщение от центра распределения ключей 5, на основе которого можно сделать следующий вывод:

А < {КаЬ — А видит сообщение, зашифрованное ключом Ка8, и делает вывод, что оно было послано 5 (1).

Однако А не может продолжать выполнять протокол, так как невозможно сделать вывод о том, что А поверил в полученный от 5 ключ по следующим причинам:

1) в тот момент, когда 5 отправляет сообщение А, то А не может знать, в какой момент времени это сообщение было отправлено. Так как вера в свежесть сообщения является необходимым условием в правиле проверки уникальности числовых вставок (2), следовательно, невозможно сделать вывод о том, что центр распределения ключей верит в отправленное им сообщение;

2) вследствие того, что невозможно точно утверждать, что 5 верит в посланное им сообщение, нельзя сделать вывод о том, что А поверил в принятый им ключ для обмена сообщениями с корреспондентом Б от 5 на основе правила юрисдикции (3).

Поэтому А предполагает, что сообщение от 5 является новым.

Если делается необходимое предположение о том, что 5 является доверенным источником и канал связи с ним обладает гарантированной имитозащитой, то вся остальная активная

часть протокола формализуется. Получается А кву(КаЬ, А ^ В) с помощью (2) и (3).

2. Корреспондент В получает по защищенному каналу первое сообщение от центра распределения ключей в, на основе которого можно сделать следующий вывод:

В < {КаЬ — В видит сообщение, зашифрованное ключом КЬв, и делает вывод, что оно было послано в (1).

Так же, как и в случае с корреспондентом А, невозможно сделать вывод о том, что В поверил в полученный от в ключ по аналогичным причинам. Следовательно, В просто предполагает, что сообщение от в является новым. Сразу получается, что В кеу(КаЬ, А-^В) с помощью (2) и (3).

Активные вычисления. 1. А \= #С.

Корреспондент А генерирует случайное число С, следовательно, он верит в его свежесть.

2 А\^КаЬ, А <С,Н8 =Н(КаЬ || С)

. А М Ь8 '

Корреспондент А верит в общий ключ для обмена сообщениями с В и видит сгенерированное им случайное число С. На основе этих значений он генерирует хеш Нв = Н(КаЬ||С), в который он верит.

А КаЪ, А<к8, кв =Н{КаЪ ||Н3)

3.

■Е

А верит в общий с В секрет и видит сгенерированный им хеш Нв. На основе этих значений он вычисляет новый хеш НЕ = Н(КаЬ\\Н8), в который он верит.

4. А ^ В : {С, НЕ}.

Корреспондент А отправляет В сообщение, которое содержит в себе сгенерированное им случайное число С и вычисленный им хеш НЕ.

5. В< {С, НЕ}.

Корреспондент В видит полученное от корреспондента А сообщение, содержащее случайное число С и хеш Н

Е-

6.

В \=КаЬ ,В <С,Ь8 =Н(КаЬ II С)

в Мз

В верит в общий с корреспондентом А секрет и видит случайное число_С. На основе этих значений он вычисляет хеш , в который он верит.

7 в \=каЬ, в < Й8, Яд =щкаь IIК8) . в М нк ■

Корреспондент В верит в общий с А секрет, видит сгенерированный хеш . На основе этих значений он вычисляет хеш , в который он верит.

8.

В < Ед(кв, Нк) В N А \~ Нк "

Корреспондент В сравнивает хеш НЕ, полученный от А, и хеш йд, сгенерированный им самим. Если они равны, то В может сделать вывод о том, что А когда-то мог сгенерировать такой хеш.

В М А \~ КЕ ,В \= #(С)

9.

В М А М к

Е

Если В не получал прежде числовую метку С, то он верит, что метка свежая. А это значит, что хеш НЕ не мог быть передан повторно и никто, кроме корреспондента А, не мог сгенерировать такой хеш. Следовательно, основываясь на том, что В верит в то, что А когда-то послал значение НЕ, и том, что В верит в свежесть числовой метки С, можно сделать вывод о том, что В верит в то, что А верит в сгенерированный им хеш НЕ (2).

10..

в А |= КаЬ

Поскольку хеш НЕ является отображением секрета КаЬ, следует считать КаЬ и НЕ эквивалентными. Следовательно, В верит, что А верит в то, что для обмена сообщениями они используют один и тот же секретный ключ КаЬ.

11. В ^ А: {й8}.

Корреспондент В отправляет А сообщение, содержащее вычисленный В хеш Н8 = Н(КаЪ \\ С).

12. А < {й8}.

Корреспондент А видит полученное от В сообщение, содержащее вычисленный В хеш .

А < Ед(к8, й8)

13.

А М В \~

Корреспондент А сравнивает хеш Ь,8, полученный от В, и Нв, сгенерированный им самим. Если они равны, то А делает вывод, что В когда-то мог сгенерировать такой хеш.

14 А М В \~ Й8 ,А ^ (С) . А М В \~ Ь8 "

Корреспондент А верит, что числовая метка является свежей. А это значит, что хеш к8 не мог быть сгенерирован ранее и никто, кроме В, не мог сгенерировать такой хеш. Следовательно, основываясь на том, что А верит в то, что В когда-то послал значение , и том, что А верит в свежесть числовой метки С, можно сделать вывод о том, что А верит в то, что В верит в сгенерированный им хеш к8 (2).

15.

а N в М А м в м К,

аЪ

Поскольку хеш Ь,8 является отображением секрета КаЬ, следует считать КаЬ и Н8 эквивалентными. Следовательно, А верит, что В верит, что для обмена сообщениями они используют один и тот же секретный ключ КаЬ.

В ходе анализа не было выявлено избыточных шагов, после исключения которых корреспонденты все равно смогли бы однозначно аутенти-фицировать друг друга. В работе протокола было выявлено два недостатка:

1) при получении общего ключа от центра распределения ключей оба корреспондента не могут точно знать, в какое время было отправлено сообщение, содержащее ключ; знание о свежести сообщения является необходимым условием для дальнейшей работы протокола аутентификации;

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

Для исключения первого недостатка было принято решение дополнить первое сообщение от центра распределения ключей, в котором содержится общий ключ для корреспондентов А и В, временной меткой. В результате шаги протокола будут выглядеть следующим образом:

1)й о А : {Т8, Ь, КаЬ }Ка8; й о В: {КаЬ }к ;

2) А о Б : С, Нк; ы

3) В о А: Н8,

где Т5 — временная метка, а Ь — время жизни.

Благодаря наличию временной метки оба корреспондента, принимая первое сообщение от центра распределения ключей, могут убедиться в его свежести [15, 19]. На основе правила проверки уникальности числовых вставок оба корреспондента могут поверить в то, что центр распределения ключей верит в отправленное им сообщение. Далее все действия протокола будут происходить без каких-либо проблем.

Литература

1. Burrows M., Abadi M., Needham R. M. A Logic of Authentication // Proc. of the Royal Society A: Mathematical, Physical and Engineering Sciences. 1989. Vol. 426. Iss. 1871. P. 233-271. doi:10.1098/rspa. 1989.0125

2. Chatzieleftheriou G., Bonakdarpour B., Katsaros P., Smolka S. Abstract Model Repair// Logical Methods in Computer Science. 2015. Vol. 11. P. 1-43.

3. Марков А. С., Рауткин Ю. В., Фадин А. А. Состояние и перспективы анализа защищенности Wi-Fi сетей // Тр. Научно-исследовательского института радио. 2012. № 1. С. 85-90.

4. Hongda Yin, Guanling Chen, Jie Wang. Detecting Protected Layer-3 Rogue APs. Broadband Communications // Networks Broadband Communications: Networks and Systems, Raleigh. 2007. P. 449-458.

Заключение

Исследования криптографических протоколов с использованием ВЛМ-логики являются надежным доказательным способом анализа и описания. При использовании формализованного анализа можно определить, какие действия выполняет тот или иной протокол, а также выявить его типовые недостатки. Необходимо отметить, что по причине работы изложенных методов на заданном уровне абстракции не рассматриваются такие аспекты специфики реализации протоколов, как, например, стойкость используемых криптосистем.

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

В работе был произведен анализ протокола аутентификации с использованием бесключевых хеш-функций с помощью ВЛМ-логики. При анализе не выявлено избыточных шагов, без которых процесс аутентификации выполнялся бы успешно. Однако определено два существенных недостатка, один из которых был успешно устранен путем добавления временной метки в первое сообщение от центра распределения ключей.

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

5. Watkins L., Robinson W. H., Beyah R. A. A Passive Approach to Rogue Access Point Detection // Global Telecommunications Conf., Washington. 2007. P. 355360.

6. Chong E., Loo M., Christopher L., Marimuthu P. Intrusion Detection for Routing Attacks in Sensor Networks // International Journal of Distributed Sensor Networks. 2006. Vol. 2. N 1. P. 313-332.

7. Chung-Hsin L., Po-Cheng T., Chun-Lin L., Kuo-Hao L. The Study of the Wireless Network Dos Attack // Information Technology, Culture and Human: Proc. of the 2nd Intern. Conf. on Interaction Sciences. N. Y., 2009. P. 418-421.

8. Common Criteria for Information Technology Security Evaluation. Part 1: Introduction and General Model, Version 3.1 // Common Criteria Portal. 2006. http://www.commoncriteriaport al.org/files/

ccfiles/CCPART1V3.1R3.pdf (дата обращения: 20.10.2013).

9. Common Criteria for Information Technology Security Evaluation. Part 2: Security Functional Requirements, Version 3.1 // Common Criteria Portal. 2006. http://www.commoncriteriaportal.org/files/ccfiles/ CCPART2V3.1R3.pdf (дата обращения: 20.10.2013).

10. Wagatsuma K., Harada T., Anze S., Goto Y. Formal-ization for Formal Analysis of Cryptographic Protocols with Reasoning Approach // Advanced Multimedia and Ubiquitous Engineering: Future Information Technology. Springer, 2015. P. 25-32.

11. Косачев А. С., Пономаренко В. Н. Анализ подходов к верификации функций безопасности и мобильности. — М.: Триумф, 2004. — 101 c.

12. Могилевская Н. С., Новиков А. М. Формализация и анализ протоколов аутентификации // Информационное противодействие угрозам терроризма. 2009. № 12. С. 99-102.

13. Алферов А. П., Зубов А. Ю., Кузьмин А. С., Чере-мушкин А. В. Основы криптографии. — М.: Гелиос АРВ, 2002. — 480 с.

14. Зегжда Д. П., Коваленко С. Л. Проблемы безопасности беспроводных сетей семейства IEEE 802.11a/b/g // Проблемы информационной безопасности. Компьютерные системы. 2006. № 2. С. 45-

15. Смарт Н. Криптография. — М.: Техносфера, 2005. C. 168-179.

16. Романец Ю. М., Тимофеев П. А., Шаньгин В. Ф. Защита информации в компьютерных системах и сетях. — М.: Радио и связь, 2001. — 376 с.

17. Cohn-Gordon K., Cremers C., Dowling B., Garratt L., Stebila D. A Formal Security Analysis of the Signal Messaging Protocol// 2nd IEEE European Symp. on Security and Privacy (EuroS&P 2017). 2017. P. 451466.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

18. Bauer R. K., Berson T. A., Feiertag R. J. A Key

Distribution Protocol using Event Markers // ACM Transactions on Computer Systems. 1983. Vol. 1. N 3. P. 249-255.

19. Современная криптография: теория и практика: пер. с англ. — М.: Вильямс, 2005. — С. 633-640, 656-658.

20. Никитин В. Н., Юркин Д. В. Анализ протоколов шифрования// Журнал радиоэлектроники. 2009. № 4. http://jre.cplire.ru/jre/apr09/5/text.html (дата обращения: 14.10.2013).

21. Никитин В. Н., Юркин Д. В. Улучшение способов аутентификации для каналов связи с ошибками // Информационно-управляющие системы. 2010. № 6. С. 42-46.

UDC 004.05

doi:10.15217/issn1684-8853.2018.2.76 Formalized Analysis of Authentication Protocols

Yurkin D. V.a, PhD, Tech., Associate Professor, [email protected] Utkina A. A.a, Master Student, [email protected] Pervushin A. O.b, Master Student, [email protected]

aThe Bonch-Bruevich Saint-Petersburg State University of Telecommunications, 22-1, Bolshevikov Pr., 193232, Saint-Petersburg, Russian Federation

bSaint-Petersburg National Research University of Information Technologies, Mechanics and Optics, 49, Kronverkskii Pr., 197101, Saint-Petersburg, Russian Federation

Introduction: Telecommunication system developers always try to reduce the time of authentication protocol execution using algorithmic implementation of authentication protocols. However, along with the temporal characteristics, it is always important to estimate the security, efficiency and reliability of cryptographic protocols. This can be provided by formalized analysis methods. Purpose: Search for typical vulnerabilities whose presence can undermine the authentication. Methods: On the base of predicates and postulates of formalized logic, Nikitin-Yurkin authentication protocol with keyless hash functions was analyzed. Results: BAN logic analysis revealed certain shortcomings in the studied protocol, which impose limitations on its application scope; namely: the lack of knowledge about how fresh a message for the authentication participants from the key distribution center is, and also the impossibility to use this protocol to uniquely identify three or more participants. The paper presents a modification of the initial authentication protocol which removed the limitations of its application. Well-founded conclusions are formulated that these studies are an effective and much-needed way of describing cryptographic protocols because they can help you determine what actions are performed by a certain protocol, and also to identify its typical shortcomings. Practical relevance: The results of this research allow you to improve the security of distributed radio access networks.

Keywords — Authentication, Authentication Protocol Vulnerabilities, Keyless Hash Function, BAN Logic, Authentication Logic.

Citation: Yurkin D. V., Utkina A. A., Pervushin A. O. Formalized Analysis of Authentication Protocols. Informatsionno-upravliaiushchie sistemy [Information and Control Systems], 2018, no. 2, pp. 76-83 (In Russian). doi:10.15217/issn1684-8853.2018.2.76

References

1. Burrows M., Abadi M., Needham R. M. A Logic of Authentication. Proc. of the Royal Society A Mathematical, Physical and Engineering Sciences, 1989, vol. 426, iss. 1871, pp. 233-271. doi:10.1098/rspa. 1989.0125

2. Chatzieleftheriou G., Bonakdarpour B., Katsaros P., Smol-ka S. Abstract Model Repair. Logical Methods in Computer Science, 2015, vol. 11, pp. 1-43.

3. Markov A. S., Rautkin Y. V., Fadin A. A. The State and Prospects of Wi-Fi Network Security Analysis. Trudy Nauchno-issledovatel'skogo instituta radio, 2012, no. 1, pp. 85-90 (In Russian).

4. Hongda Yin, Guanling Chen, Jie Wang. Detecting Protected Layer-3 Rogue APs. Broadband Communications. Networks Broadband Communications: Networks and Systems, Raleigh, 2007, pp. 449-458.

5. Watkins L., Robinson W. H., Beyah R. A. A Passive Approach to Rogue Access Point Detection. Global Telecommunications Conference, Washington, 2007, pp. 355-360.

6. Chong E., Loo M., Christopher L., Marimuthu P. Intrusion Detection for Routing Attacks in Sensor Networks. International Journal of Distributed Sensor Networks, 2006, vol. 2, no. 1, pp. 313-332.

7. Chung-Hsin L., Po-Cheng T., Chun-Lin L., Kuo-Hao L. The Study of the Wireless Network Dos Attack. Proc. of the 2nd Intern. Conf. on Interaction Sciences "Information Technology, Culture and Human", New York, 2009, pp. 418-421.

8. Common Criteria for Information Technology Security Evaluation. Part 1. Introduction and General Model, Version 3.1. Common Criteria Portal, 2006. Available at: http://www. commoncriteriaportal.org/files/ccfiles/CCPART1V3.1R3. pdf (accessed 20 October 2013).

9. Common Criteria for Information Technology Security Evaluation. Part 2. Security Functional Requirements, Version 3.1. Common Criteria Portal, 2006. Available at: http:// www.commoncriteriaportal.org/files/ccfiles/ CCPART2V3.1R3.pdf (accessed 20 October 2013).

10. Wagatsuma K., Harada T., Anze S., Goto Y. Formalization for Formal Analysis of Cryptographic Protocols with Reasoning Approach. Advanced Multimedia and Ubiquitous Engineering: Future Information Technology, Springer, 2015, pp. 25-32.

11. Kosachev A. S., Ponomarenko V. N. Analiz podkhodov k ver-ifikatsii funktsii bezopasnosti i mobil'nosti [Analysis of Approaches to Verification of Safety Functions and Mobility]. Moscow, Triumph Publ., 2004. 101 p. (In Russian).

12. Mogilevskaya N. S., Novikov A. M. Formalization and Analysis of Authentication Protocols. Informatsionnoe pro-tivodeistvie ugrozam terrorizma, 2009, no. 12, pp. 99-102 (In Russian).

13. Alferov A. P., Zubov A. Y., Kuzmin A. S., Cheremushkin A. V. Osnovy kriptografii [Fundamentals of Cryptography]. Moscow, Helios ARV Publ., 2002. 480 p. (In Russian).

14. Zegzhda D. P., Kovalenko S. L. Security Problems of Wireless Networks of the IEEE 802.11a / b / g family. Problemy informatsionnoi bezopasnosti. Komp'iuternye sistemy, 2006, no. 2, pp. 45-49 (In Russian).

15. Smart N. Kriptografiia [Cryptography]. Moscow, Tekhnos-fera Publ., 2005. Pp. 168-179 pp. (In Russian).

16. Romanets Y. M., Timofeev P. A., Shanguin V. F. Zashchita informatsii v komp'iuternykh sistemakh i setiakh [Protection of Information in Computer Systems and Networks]. Moscow, Radio i svyaz' Publ., 2001. 376 p. (In Russian).

17. Cohn-Gordon K., Cremers C., Dowling B., Garratt L., Stebi-la D. A Formal Security Analysis of the Signal Messaging Protocol. IEEE European Symp. on Security and Privacy (EuroS&P), 2017, pp. 451-466.

18. Bauer R. K., Berson T. A., Feiertag R. J. A Key Distribution Protocol using Event Markers. ACM Transactions on Computer Systems, 1983, vol. 1, no. 3, pp. 249-255.

19. Sovremennaia kriptografiia: teoriia i praktika [Modern Cryptography: Theory and Practice]. Moscow, Williams Publ., 2005. Pp. 633-640, 656-658 (In Russian).

20. Nikitin V. N., Yurkin D. V. Analysis of Encryption Protocols. Zhurnal radioelektroniki, 2009, no. 4 (In Russian). Available at: http://jre.cplire.ru/jre/apr09/5/text.html (accessed 14 October 2013).

21. Nikitin V. N., Yurkin D. V. Modification of Authentification Technics for Errorprone Channels. Informatsionno-uprav-lyayushchiye sistemy [Information and Control Systems], 2010, no. 6, pp. 42-46 (In Russian).

i Надоели баннеры? Вы всегда можете отключить рекламу.