Разработка комплекса лабораторно-практических работ по изучению современных методов криптоанализа

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

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

Л.К. Бабенко, Е.А. Мишустина

Россия, г. Таганрог ТРТУ

РАЗРАБОТКА КОМПЛЕКСА ЛАБОРАТОРНО-ПРАКТИЧЕСКИХ РАБОТ ПО ИЗУЧЕНИЮ СОВРЕМЕННЫХ МЕТОДОВ КРИПТОАНАЛИЗА

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

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

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

Толчком к развитию метода линейного криптоанализа послужило выступление Мацуи на конференции EUROCRYPT'93. Этот метод изначально использовался для атаки на DES при наличии 247 известных открытых текстов. Линейный криптоанализ исследует статистические линейные соотношения между битами блока открытого текста, блока зашифрованного текста и ключа, использовавшегося при шифровании. Эти соотношения используются, чтобы предсказать значения бит ключа, когда известно большое количество открытых текстов и соответствующих им зашифрованных текстов.

Суть линейного криптоанализа заключается в том, что существует возможность заменить нелинейную функцию ее линейным аналогом. Так как все зашифровываемые тексты представлены в двоичном виде, то рассматривается случайная величина S - {0,1}, для которой Р^=1) = р, соответственно Р^=0) = 1-р, а Д( S) = |1-2р|.

При этом нелинейная функция произвольного блочного шифра в ьм цикле имеет следующий вид:

у = вдода)).

Здесь Е - функция шифрования, Х - блок открытого текста в ьм цикле, Y(i) - блок шифртекста, К(1) - подключ, используемый в в ьм цикле. Y(i), Х(1)еУп, K(i)6 Vm, где п - размер блока, т - размер подключа[3].

Линейным статистическим аналогом нелинейной функции (1) называется случайная величина

S

если вероятность Р^(1) = 1) = р ^ 1А для случайно выбранного открытого текста Х(1).

Отклонение Д^(1)) = |1-2р| определяет эффективность линейного статистического аналога (2) [3].

Понятие дифференциального криптоанализа впервые было введено в 1990 году Эли Бихамом и Ади Шамиром. Используя этот метод, Бихам и Шамир нашли способ атаки алгоритма DES с использованием подобранного открытого текста, который оказался эффективнее атаки «в лоб». Ядро метода составляет атака на

Секция

Методы и средства криптографии

основе выборочного открытого текста. Идея заключается в анализе изменения несходства для пары открытых текстов, имеющих определенные исходные различия, при прохождения через циклы шифрования с одним и тем же ключом. Истинный ключ определяется в процессе дальнейшего анализа пар шифртекстов - это наиболее вероятный ключ среди множества претендентов [1]. И хотя оба эти метода первоначально были применены к алгоритму шифрования DES, дальнейшее их развитие показало эффективность применения данных методов и к другим алгоритмам блочного шифрования, таким как FEAL, IDEA, Khafre [1] и др. Необходимо так же отметить, что данные методы анализа используются для тестирования вновь создаваемых алгоритмов шифрования. А знание принципов, на которых базируются эти методы криптоанализа, позволяет криптоаналитикам изначально предусмотреть возможные слабые места будущего алгоритма шифрования. Несмотря на бурное развитие методов криптоанализа, в настоящий момент существует не так уж много литературы, которая бы позволила понять и освоить вышеуказанные методы. А тем более нет доступных прикладных программ, которые бы позволили проверить действенность методов криптоанализа на практике. Именно поэтому появилась необходимость создания таких учебных работ, которые могли бы выполняться в рамках лабораторного практикума, и позволяли бы учащимся приобрести навыки самостоятельного проведения криптоанализа.

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

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

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

может быть проведен для каждого из полученных эффективных уравнений после того, как будут указаны биты (согласно данному уравнению), участвующие в анализе, а также вероятность, с которой данное уравнение выполняется. Результатом анализа будет являться заполнение таблицы результата, состоящей из четырех полей. Первое поле (обозначенное буквой N) отображает количество текстов, участвующих в анализе; второе поле (обозначенное буквой Р) по сути дела отображает введенную студентом вероятность; третье поле (обозначенное буквой Т) показывает число открытых текстов, для которых левая часть эффективного уравнения равна 0; и последнее четвертое поле содержит результат анализа, а именно то значение, которому соответствует правая часть данного эффективного уравнения.

Правильность анализа может быть проверена введением всех найденных битов в «Форму» проверки. Те биты, которые определить невозможно должны быть помечены как х. Если все биты, которые было возможно определить найдены верно, то программа выдаст соответствующее сообщение Для выполнения лабораторной работы по изучению дифференциального криптоанализа разработанна программа Krypto1.exe. С помощью данной программы для каждого варианта производится зашифрование указанного числа открытых текстов на определенном ключе. Также для каждого из этих открытых текстов подбирается парный текст, согласно указанному значению ДА, который в свою очередь зашифровывается на том же ключе. Если получившиеся пары выходов удовлетворяют указанному значению ДС, то данные пары текстов выводятся на экран. После этого студент имеет возможность сохранить либо напечатать полученные результаты для удобства дальнейшей работы. Проверка правильности найденных битов ключа осуществляется аналогично описанной выше проверки для работы по изучению линейного криптоанализа.

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

1. А. Чмора, Современная прикладная криптография, М.: «Гелиос АРВ», 2002.

2. Б. Шнайер, Прикладная криптография, М.: «Издательство ТРИУМФ», 2002.

3. А.А. Грушо, Е.Е. Тимонина, Э.А. Применко, Анализ и синтез криптоалгоритмов. Курс лекций. Йошкар-Ола, издательство МФ МОСУ, 2000.

Ю.Н. Бельтриков, А.Ю. Коробко

Россия, г. Таганрог, ТРТУ, г. Нальчик, НИИ ПМА КБНЦ РАН

ПРОТОКОЛ IPSEC: ИСПОЛЬЗОВАНИЕ РОССИЙСКИХ СТАНДАРТОВ

ШИФРОВАНИЯ

Введение

Базовые механизмы информационного обмена в сетях TCP/IP были в целом сформированы в начале восьмидесятых годов и направлены на обеспечение доставки пакетов данных между различными операционными системами с использованием разнородных каналов связи. Несмотря на то, что идея создания сети ARPANet принадлежала правительственной оборонной организации, фактически сеть зародилась в исследовательском мире и наследовала традиции открытости академического сообщества. Ещё до коммерциализации Интернета (которая произошла в середине девяностых годов) многие авторитетные исследователи отмечали проблемы, связанные с безопасностью стека протоколов TCP/IP. Основные концепции протоколов TCP/IP не полностью удовлетворяют (а в ряде случаев и противоречат) современным представлениям о компьютерной безопасности.

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