Научная статья на тему 'Верификация криптографических протоколов распределения ключей с использованием раскрашенных сетей Петри'

Верификация криптографических протоколов распределения ключей с использованием раскрашенных сетей Петри Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
838
114
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВЕРИФИКАЦИЯ ПРОТОКОЛА / ФОРМАЛЬНЫЙ АНАЛИЗ / РАСПРЕДЕЛЕНИЕ КЛЮЧЕЙ / ПРОТОКОЛ НИДХЕМА ШРЁДЕРА / РАСКРАШЕННЫЕ СЕТИ ПЕТРИ / CPN TOOLS / PROTOCOL VERIFICATION / FORMAL ANALYSIS / KEY MANAGEMENT / NEEDHAM-SCHROEDER PROTOCOL / COLORED PETRI NETS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Могилевская Надежда Сергеевна, Колчанов Сергей Сергеевич

Рассмотрена и оценена возможность применения раскрашенных сетей Петри для анализа криптографических протоколов распределения ключей на примере симметричного протокола Нидхема Шрёдера.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Могилевская Надежда Сергеевна, Колчанов Сергей Сергеевич

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

VERIFICATION OF KEY MANAGEMENT CRYPTOGRAPHIC PROTOCOLS WITH COLORED PETRI NETS

The possibility of using colored Petri nets for the analysis of key distribution cryptographic protocols as an example of symmetric Needham-Schroeder protocol is reviewed and evaluated.

Текст научной работы на тему «Верификация криптографических протоколов распределения ключей с использованием раскрашенных сетей Петри»

ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ

УДК 004.414.023

Верификация криптографических протоколов распределения ключей с использованием раскрашенных сетей Петри

Н. С. Могилевская, С. С. Колчанов

(Донской государственный технический университет)

Рассмотрена и оценена возможность применения раскрашенных сетей Петри для анализа криптографических протоколов распределения ключей на примере симметричного протокола Нидхема — Шрёдера. Ключевые слова: верификация протокола, формальный анализ, распределение ключей, протокол Нидхема — Шрёдера, раскрашенные сети Петри, CPN Tools.

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

Фактически криптографический протокол — это распределённый алгоритм, определяющий последовательность шагов, точно специфицирующих действия, которые требуются от участников для решения некоторой криптографической задачи, например, обеспечение целостности, секретности, аутентичности информации [2, 3, 4]. При анализе качества протокола необходимо обратить внимание не только на достижение желаемого результата всеми участниками протокола, но и на недопустимость проведения атак на протокол злоумышленниками. Отметим, что при анализе протокола используемые в нём криптографические алгоритмы и примитивы считаются надёжными, а анализу подвергаются сообщения, которыми обмениваются участники протокола, а именно их содержимое и порядок следования. Формальный анализ и выявление недостатков криптографических протоколов на деле оказывается весьма затруднительным. Известны факты, когда протоколы даже с небольшим количеством сообщений долгое время скрывали свои уязвимости [2, 4, 5].

Существует ряд математических аппаратов, используемых для решения задачи формального анализа протокола, например, модальные логики, конечные автоматы, спецификаци-онные языки [2, 4, 6]. Эти подходы достаточно новые, каждый из них имеет как достоинства, так и недостатки. В обзорных работах по формальным методам анализа протоколов часто упоминается возможность верификации протоколов на основе моделирования сетями Петри, однако, исследований, посвящённых именно этому вопросу, достаточно мало, например [4, 6, 7, 8]. Цель работы. Рассмотреть и оценить возможность применения сетей Петри к верификации криптографических протоколов распределения ключей. Для достижения цели в работе с помощью раскрашенных сетей Петри для ряда криптографических протоколов построены модели. По итогам исследования моделей сделаны выводы о возможности верификации криптографических

1535

протоколов распределения ключей с использованием раскрашенных сетей Петри. В работе исследован ряд протоколов, однако наиболее подробно рассмотрена модель выработки сеансового ключа симметричного протокола Нидхема — Шрёдера.

Протокол Нидхема — Шрёдера. Этот протокол хорошо изучен. Он получил широкую известность, так как долгое время скрывал свою уязвимость в обеспечении безопасности [2, 5]. Целью данного протокола является выработка общего сеансового ключа КАВ для участников протокола А и Вс использованием доверенного посредника 5. Говоря о доверенном посреднике для выработки ключей, мы считаем, что участники А и буже имеют долговременные ключи для общения с ним, а кроме этого, доверяют 5 вырабатывать ключ для связи между участниками. Запишем протокол в виде схемы обмена сообщениями.

1. А^Б-.А, В, ИА.

2. 5^А-.{Ма1В,Кав1{Кав1А}Кв!}Ка!.

3. А^В:{Кав,А}Кв!.

4. В^А:{Мв}Кя.

5. А^В:{Ыв- 1}Км.

Здесь А, В, 5— участники протокола; ЫА, Л/в — уникальные числовые вставки (нонсы), используемые только в одном сеансе связи; КА5, КВ5, КАВ — ключи для обмена сообщениями между участниками А и 5, В и 5, А и В, соответственно; запись типа {Х}к означает шифрограмму от X на ключе К) запись типа А —> 5: Х1г Х2 означает, что участник А отправляет 5 сообщения Х1г Х2. Считается, что до начала протокола у участников есть договорённость об используемых криптографических алгоритмах и о порядке следования элементов в сообщениях.

Прокомментируем шаги протокола. На первом шаге пользователь А сообщает доверенному серверу 5, что он намерен получить ключ для переписки с В. Во втором сообщении 5 генерирует ключ КАВ и посылает его А, в сообщении содержится также цифровая вставка Л/^, по которой А узнаёт, что он получил сообщение сервера на свой запрос. На следующем шаге А отправляет В ключ КАВ, зашифрованный на ключе КВ5■ Участник В доверяет этому посланию, так как оно зашифровано на ключе доверенного сервера 5, а имя А, указанное в этом сообщении, говорит В, что ключ КАВ предназначен для общения с А. Участник В на 4-м шаге должен проверить, что отправитель сообщения {Кав,А}к действительно является А и этот участник намерен установить защищённый обмен сообщениями. Для этого он отправляет А свой ноне в зашифрованном виде. В последнем сообщении, чтобы убедить партнёра В в своей дееспособности, инициатор переговоров шифрует простое выражение, зависящее от Л/в, и отправляет его А. Если все шаги протокола выполнены, то участники считают, что у них есть надёжный сеансовый ключ КАВ.

Процедура с использованием нонсов ЫА, Л/в и Л/в - 1 служит для подтверждения участниками факта новизны, или, как принято говорить, свежести сеансового ключа КАВ, т. е. для подтверждения того, что указанный ключ был впервые использован в данном сеансе связи и не использовался ранее для связи этих двух участников. Основным недостатком рассмотренного протокола является то, что В не уверен в свежести ключа КАВ, полученного на третьем шаге. Таким образом, злоумышленник М может записать сообщения прошлых сеансов протокола и впоследствии использовать их для атаки на протокол [5].

Опишем схему протокола Нидхема — Шрёдера с атакующим злоумышленником.

1. А^5\А,В, /V

2. 5^А-.{НА1В,КАВ1{КАВ1А}Кю}Кл5.

1536

3. М^В-.{Кав,А}Кю.

4. В^А:{Ыв}Км>.

5. М^А-.{Нв}Кх.

6. А^В:{Нв-1}Кдв.

7. м^в-.{нв}Кх.

На третьем шаге М отправляет старое сообщение от имени А, на четвёртом перехватывает сообщение и заменяет его на пятом шаге. Таким образом, М подменяет сообщения, адресованные

В, г В верит в то, что он совместно с Л в реальном времени вырабатывает новый сессионный ключ КАВ.

Раскрашенные сети Петри. Сети Петри — это весьма востребованный математический аппарат для моделирования динамических дискретных систем. Сеть Петри может быть задана как алгебраически, так и графически. С точки зрения алгебры, сеть Петри задаётся кортежем следующего вида С = (Р, Т, I, О, ц), где Р, Т — конечные множества позиций (состояний сети) и переходов (событий сети), I, О — множества входных и выходных функций, (х — вектор натуральных чисел, определяющий маркировку сети. Графически сеть Петри представляет собой двудольный ориентированный граф, в котором позициям соответствуют вершины, изображаемые кружками, а переходам — вершины, изображаемые чёрточками или прямоугольниками; функциям I соответствуют дуги, направленные от позиций к переходам, а функциям О — дуги, направленные от переходов к позициям. Дугами могут соединяться только вершины различных типов. Для описания динамики процессов, реализуемых в сети Петри, дополнительно вводится понятие фишки. Размещение фишек по позициям сети называется маркировкой ц. Перемещения фишек по сети представляют собой совокупность срабатываний переходов и отображают смену дискретных состояний моделируемой системы. Срабатывание перехода возможно, если имеется соответствующее переходу событие (т. н. предусловие). Выполнение события представляется фишкой в позиции, соответствующей этому условию. При запуске (срабатывании) перехода из входных позиций (предусловий) фишки удаляются, а в выходных позициях (постусловиях) — появляются. В раскрашенных сетях фишки являются элементами некоторого абстрактного типа данных, традиционно называемого цветом. Подробное описание сетей Петри хорошо представлено, например, в [9].

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

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

1537

стников, а также, в зависимости от протокола, он может быть представлен дополнительно в канале связи.

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

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

Для проведения анализа модели криптографического протокола необходимо либо построить дерево достижимости; либо многократно запускать работу сети с различным порядком срабатывания переходов, перебирая все возможные варианты, и при этом отслеживать основ-т Declarations ные характеристики сети; либо использовать

► Standard priorities матричную теорию сетей Петри для отслежива-

тStandard declarations ния возможных маркировок сети [9]. Далее в

► colset UNIT работе будем использовать многократный запуск

▼ colset INT = int; сети с помощью автоматизированных инстру-

► colset BOOL ментов.

► colset STRING Программный комплекс CPN Tools. Чем

т User declarations больше позиций и переходов содержит сеть

▼ colset PS=string with "a".."z" and 3..3; Петри, тем сложнее её корректное построение и

▼ varKabiPS; анализ. Для анализа моделей криптографиче-

▼ var Nbjíab, Nbljíab: STRING; ских протоколов распределения ключей в рабо-

▼fun F[a)=a^ -1 ; те ИСГЮльзован программный комплекс CPN Tools

▼ vari, INT, ^ 10J, разрабатываемый группой AIS Эйндховен-

▼ var М2, STRING, ского университета технологий (Нидерланды)

TvarKas, Kbs, Kab Kbs: STRING; ,c. .. ... .. . T . . '

,, ' „ ' „ - „ „ПТ11П ' (Eindhoven University of Technology, The

▼ var Na, Nb, Nbl, Nb2: STRING; .. , . . n

Netherlands). Раскрашенные сети Петри модели-

Рис. 1. Описание переменных в терминах языка рующей системы CPN Tools предСТЭВЛЯЮТ СОбОЙ программирования CPN ml комбинацию графа сети Петри и языка програм-

мирования CPN ML, используемого для описания типов элементов сети. CPN Tools обладает средствами для наглядного и удобного построения и исполнения сетей Петри, обеспечивает проверку структуры конструируемых сетей, быстрое их исполнение, проведение полного или частичного анализа пространственных состояний, автоматическую проверку живости и связности. Важными характеристиками CPN Tools являются его свободное распространение, мультиплатформенность, качественная техническая поддержка и доступность документации справочного характера.

Модель протокола Нидхема — Шрёдера на основе раскрашенной сети Петри. Опишем разработанную модель подробнее. На рисунке 1 с использование языка CPN ML представлена часть описания модели, построенной в системе CPN Tools. Специальный тип данных PS был задан для описания ключей. Далее в переменных этого типа методом гап() языка CPN ML будут генерироваться случайные значения — аналоги случайных ключей. Строки описания, начинающиеся со служебного слова var, задают переменные. Описание назначения, начального значения, а также указание участников, к которым относятся эти переменные, представлены в таблице 1.

1538

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

Таблица 1

Описание фишек-переменных построенной модели

Переменная Нач. значение Назначение Переменная Нач.значение Назначение

Участник А Участник В

Na «1» Ноне А Kbs «kbs» Общий ключ В\л Б

Kas «kas» Общий ключ А и 5 Кав — Сеансовый ключ

Кав — Сеансовый ключ Nb «2» Ноне В

Nb Ноне В Nbi Ноне, полученный от А, после обратной операции

Nbi — Обработанный ноне В Nbi — Ноне, полученный от А

Участник S Дополнительные переменные

Kbs «kbs» Общий ключ В\л Б Mi Канал связи между А и S

Kas «kas» Общий ключ А и 5 Kab_Kbs, Nb_Kab, Nbi_Kab Канал связи между А и В. Имя переменной совпадает с именем фишки, для которой она предназначена.

Kab Сеансовый ключ Final! Конечная позиция. Содержит true в случае успешного выполнения протокола, иначе — false.

Na — Ноне А

Таблица 2

Описание переходов построенной модели

Название перехода Описание действия

Т1 При появлении фишки-нонса NA у участника А генерирует новый сеансовый ключ КАв как случайное значение типа PS и сохраняет ноне для дальнейшего использования.

Т2 Используя Kbs, шифрует сеансовый ключ КАв-

ТЗ Собирает в одно сообщение NA, {КАВ }к , КАв, шифрует это сообщение ключом KAs и отправляет сообщение в канал связи.

Т4 Отправляет Na к участнику S (инициирует работу всего протокола).

Т5 Расшифровывает сообщение, извлекает из него NA, КАв, сеансовый ключ, зашифрованный ключом участника В, KAb_Kbs■ Сохраняет КАв в позиции КАв, относящейся к A. KAb_Kbs отправляет в канал связи с В.

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

Т7 Получает обработанный ноне Nbi участника В и сеансовый ключ КАв- Шифрует Nbi ключом Кав и передаёт в канал связи.

Т8 Принимает переменную-нонс NB, сохраняет результат вычисления функции F(cm. рис. 1) от значения нонса.

T9 Срабатывает при появлении в канале связи сообщения от А. Расшифровывает сообщение с помощью общего ключа В и Sn сохраняет сеансовый ключ.

T10 Выполняет действия, обратные действиям перехода T8 с входящей фишкой и сохраняет результат.

T11 Финальный переход. Получает исходный ноне участника В, и ноне, полученный после обработки А. Отправляет в позицию Final! фишку true, если нонсы равны, иначе отправляет фишку false.

T12 Расшифровывает сообщение от А сеансовым ключом КАв и сохраняет результат.

T13 Шифрует ноне участника В сеансовым ключом и отправляет его в канал связи.

Граф модели Петри рассматриваемого протокола, построенной в системе CPN Tools, представлен на рисунке 2. Из теории известно, что граф сети Петри задаёт алгебраическую

1539

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

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

1540

Результаты анализа работы модели протокола Нидхема — Шрёдера. Желаемая конечная разметка с фишкой true в позиции Final! и одинаковыми фишками — сеансовыми ключами в позициях КАВ у Алисы и Боба достигается при всех возможных вариантах последовательности срабатывания переходов, следовательно, цели протокола по результатам его исполнения достигаются. Сеть не имеет тупиковых разметок и неустойчивых переходов, следовательно, в реальной информационной системе протокол будет работать устойчиво. Во время выполнения протокола не возникает зацикливаний, количество фишек ни в одной из позиций не разрастается, следовательно, в технической реализации протокола могут быть наложены ограничения на объём памяти. Однако известная слабость протокола, связанная с возможностью использования старых сеансовых ключей, в данной модели никак себя не обнаруживает.

Результаты исследования моделей для других протоколов. В ходе данного исследования кроме модели протокола Нидхема — Шрёдера были построены модели протоколов Диф-фи — Хеллмана, Station-to-station и широкоротой лягушки. Модель протоколов Диффи — Хелл-мана и Station-to-station выработки общего ключа, как и модель протокола Нидхема — Шрёдера, не показывает возможность реализации атаки типа «человек посередине». Однако, зная о возможности этой атаки, авторы сумели построить модели этих протоколов с учётом работы злоумышленника в сети. Полученные модели подтвердили возможность реализации такой атаки. Модель протокола широкоротой лягушки показала слабость протокола, связанную с отсутствием подтверждения получения ключа вторым участником протокола. Таким образом, в результате случайного или преднамеренного искажения ключа в канале связи между участником А и доверенным сервером 5 или между 5 и б возможна ситуация, когда участники А и б пользуются различными ключами и, как следствие, не могут читать сообщения друг друга.

Выводы по проведённым модельным экспериментам. Подведём итоги анализа моделей криптографических протоколов распространения ключей на основе сетей Петри.

К несомненным достоинствам использования сетей Петри относится их широкая распространённость. В связи с этим существует много работ, посвящённых развитию и анализу сетей, а также существуют легко доступные качественные программные средства, часто свободно распространяемые, позволяющие анализировать сети Петри в автоматическом режиме, например использованный в работе комплекс CPN Tools.

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

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

Сети Петри позволяют оценить возможности мошенничества легальных пользователей или работы злоумышленников в случае, когда модель криптографического протокола соединяется с моделью злоумышленника. Эта проблема исследуется в [7].

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

Укажем недостатки верификации протоколов с помощью сетей. Так, при использовании сетей Петри строго не определён процесс специфицирования, то есть процесс построения графа сети по протоколу. Фактически сеть, моделирующую работу протокола и действующего в

1541

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

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

Заключение. В работе построены модели симметричных протоколов распределения ключей Нидхема — Шрёдера, Диффи — Хеллмана и широкоротой лягушки.

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

Однако представляется целесообразным построение сетями Петри моделей узкого класса криптографических протоколов, в которых для подтверждения свежести ключа кроме нонсов используются и метки времени. Такая техника используется, например, в протоколах Керберос, DASS, Ньюмана — Стабблбайна [2]. Метка времени может указывать либо на время действия сеансового ключа, либо на время жизни нонса. В таком случае для моделирования нужно использовать временные сети Петри, которые отличаются от простых сетей Петри учётом времени, что позволяет моделировать не только последовательность событий, но и их привязку ко времени. Это осуществляется приданием переходам веса — продолжительности (задержки) срабатывания. Модели протоколов распределения ключей, построенные таким образом, позволят оценить безопасный диапазон времени действия ключей и нонсов.

Библиографический список

1. Основы криптографии / А. П. Алфёров [и др.]. — Москва: Гелиос АРВ, 2005. — 480 с.

2. Denning, D. Е. Time stamps in Key Distribution Protocols / D. E. Denning, M. Smid // Communications of the ACM. — 1981. — V. 24. — P. 533—536.

3. Котенко, И. В. Верификация протоколов безопасности на основе комбинированного использования существующих методов и средств / И. В. Котенко, С. А. Резник, А. В. Шоров // Труды СПИИРАН. — 2009. — Вып. 8. — С. 292—310.

4. Могилевская, Н. С. Сравнение возможностей сетей Петри и BAN-логики в анализе криптографических протоколов проверки подлинности и обмена ключами / Н. С. Могилевская,

С. С. Колчанов // Системный анализ, управление и обработка информации. — Ростов-на-Дону: Изд. центр ДГТУ, 2011. С. 98-101.

5. Смарт, Н. Криптография / Н. Смарт. — Москва: Техносфера, 2006. — 528 с.

6. Lin, Н. Algorithms for Cryptographic Protocol Verification in Presence of Algebraic Properties: diss. for the degree of Doctor of Philosophy (Mathematics). — Clarkson University, 2009.

7. Nieh, B. Modeling and analyzing cryptographic protocols using Petri nets / B. Nieh,

S. Tavares // Auscrypt'92,1992.

1542

8. Salah, A. Protocol verification and analysis using colored Petri nets / A. Salah, M. Khaled. — Cairo University, 2003. — P. 3—7.

9. Котов, В. E. Сети Петри / В. Е. Котов. — Москва: Наука, 1984. — 160 с.

10. CPN Tools Homepage. Documentation. Electronic resource. Access mode: http://cpntools.org/documentation/start/ (date of access: 11.04.2011).

Материал поступил в редакцию 16.12.2011.

References

1. Osnovy' kriptografii / A. P. Alfyorov [i dr.]. — Moskva: Gelios ARV, 2005. — 480 s. — In

Russian.

2. Denning, D. E. Time stamps in Key Distribution Protocols / D. E. Denning, M. Smid // Communications of the ACM. — 1981. — V. 24. — P. 533—536.

3. Kotenko, I. V. Verifikaciya protokolov bezopasnosti na osnove kombinirovannogo is-pol'zovaniya sushhestvuyushhix metodov і sredstv / I. V. Kotenko, S. A. Reznik, A. V. Shorov // Trudy' SPIIRAN. — 2009. — Vy' p. 8. — S. 292—310. — In Russian.

4. Mogilevskaya, N. S. Sravnenie vozmozhnostej setej Petri і BAN-logiki v analize kriptografi-cheskix protokolov proverki podlinnosti і obmena klyuchami / N. S. Mogilevskaya, S. S. Kolchanov // Sistemny'j analiz, upravlenie і obrabotka informacii. — Rostov-na-Donu: Izd. centr DGTU, 2011. S. 98—101. — In Russian.

5. Smart, N. Kriptografiya / N. Smart. — Moskva: Texnosfera, 2006. — 528 s. — In Russian.

6. Lin, H. Algorithms for Cryptographic Protocol Verification in Presence of Algebraic Properties: diss. for the degree of Doctor of Philosophy (Mathematics). — Clarkson University, 2009.

7. Nieh, B. Modeling and analyzing cryptographic protocols using Petri nets / B. Nieh,

S. Tavares // Auscrypt’92,1992.

8. Salah, A. Protocol verification and analysis using colored Petri nets / A. Salah, M. Khaled. — Cairo University, 2003. — P. 3—7.

9. Kotov, V. E. Seti Petri / V. E. Kotov. — Moskva: Nauka, 1984. — 160 s. — In Russian.

10. CPN Tools Homepage. Documentation. Electronic resource. Access mode: http://cpntools.org/documentation/start/ (date of access: 11.04.2011).

VERIFICATION OF KEY MANAGEMENT CRYPTOGRAPHIC PROTOCOLS WITH COLORED PETRI NETS

N. S. Mogilevskaya, S. S. Kolchanov

(Don State Technical University)

The possibility of using colored Petri nets for the analysis of key distribution cryptographic protocols as an example of symmetric Needham—Schmeder protocol is reviewed and evaluated.

Keywords: protocol verification, formai analysis, key management, Needham—Schmeder protocol, colored Petri nets, CPN Tools.

1543

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