12746

Дифференциальный криптоанализ блочного шифра

Лабораторная работа

Информатика, кибернетика и программирование

Описание лабораторной работы Дифференциальный криптоанализ блочного шифра Цель работы Целью данной работы является изучение принципа дифференциального криптоанализа блочных шифров реализованных по схеме SPN. Задание 1. Произвести вычисления разностны...

Русский

2013-05-03

203 KB

37 чел.

Описание лабораторной работы

«Дифференциальный криптоанализ блочного шифра»

Цель работы

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

Задание

1. Произвести вычисления разностных характеристик S-box «учебного шифра», построенного на основе схемы  SPN.

2.  Построить сквозную дифференциальную характеристику шифра.

3. Произвести вычисление элементов 5-го раундового ключа шифра SPN, используя дифференциальный криптоанализ.

Порядок выполнения работы

Изучите принцип дифференциального криптоанализа в применении к учебному шифру SPN,  и пример использования линейного криптоанализа для извлечения 8-ми бит пятого раундового ключа, по разделу 4 приложения.
Для начала работы перейдите в каталог, указанный преподавателем, содержащий рабочие программы, и запустите программу
“дифференциальный криптоанализ.exe
На экране монитора появится основное окно программы  (Рис 1).

Рис 1. Основное окно программы.

1.Выберите 2 произвольные разности для входа S-box и для каждой из них рассчитайте вероятности появления 2-х произвольно заданных выходных разностей. Для этого кликните мышью кнопку «Входные и выходные разности для S-BOX». На экране монитора появится окно расчета линейных перекосов S-BOX Рис 2.

Рис 2. Окно расчета входных и выходных разностей.

Укажите в каких битах входные и выходные пары отличаются (входные и выходные разности принимают значение 1) и нажмите кнопку «рассчитать». Результаты расчета нужно представить в отчете. Сравните полученные результаты с Таблицей 7 в приложении.
2.Рассчитайте вероятности появления следующих пар входных и выходных разностей: (B , 2); (4 , 6); (2 , 5).
Сравните полученные результаты с Таблицей 7 в приложении.
3. Задайте исходный 7-битный ключ шифра SPN. Для этого в поле ввода ключа (Рис. 1) , нажимая случайным образом 0 и 1 на пульте ПК, введите 7 бит. Кликните мышью кнопку «генерация раундовых ключей». Наблюдайте раундовые ключи, полученные в результате генерации,  соответствующие исходному ключу (рис. 3).
Рис. 3. Отображение раундовых ключей
4. Постройте сквозную разностную характеристику, как в примере из приложения. Для этого следует кликнуть мышью кнопку «Построение разностной характеристики». В появившемся окне (рис.4) необходимо задать пары входных и выходных разностей «активных S-box».
Рис. 4. Окно построения сквозной линейной аппроксимации.
Для этого следует двойным щелчком левой кнопки мыши по выбранному S-box вызвать окно задания пар разностей для данного S-box (рис.5). В появившемся окне галочками следует отметить ненулевые биты входных и выходных разностей. Верхняя строка окна содержит информацию о вероятности, с которой выбранная пара разностей появляется.
Рис. 5. Окно задания пар разностей S-box
После нажатия кнопки «OK» окно задания пар разностей S-box исчезнет, а в окне построения сквозной разностной характеристики на схеме шифра линии, обозначающие те входы и выходы выбранного S-box, которые соответствуют ненулевым разрядам входной и выходной разности, станут заметно толще (рис. 6).
Рис. 6. Отображение пар разностей S-box на схеме шифра.
Когда ненулевые разряды выходной разности каждого раунда (кроме последнего) будут соответствовать ненулевым разрядам входной разности следующего раунда результирующая разностная характеристика будет сквозной. Т.е. она свяжет некоторые ненулевые разряды разности открытых сообщений и ненулевые разряды входной разности  последнего раунда. В этом случае на схеме шифра обозначатся биты последнего раундового ключа, связанные с выходами тех S-box, входы которых участвуют в сквозной разностной характеристике. Под схемой появятся сообщения о количестве активных S-box, участвующих в разностной характеристике, о количестве ключевых бит, извлекаемых при криптоанализе, о результирующей вероятности, с которой появляется разностная характеристика  (Рис. 7). В исследуемой разностной характеристике участвуют:

S12: ΔX= В  ΔY=2  с вероятностью 8/16

S23: ΔX= 4  ΔY=6  с вероятностью 6/16

S32: ΔX= 2  ΔY=5  с вероятностью 6/16

S33: ΔX= 2  ΔY=5  с вероятностью 6/16

Все остальные S-BOX-ы будут иметь нулевую разность входа и следовательно нулевую разность выхода.

Рис. 7. Вариант сквозной разностной характеристики
5.Задайте число N=100 разностных пар сообщение/криптограмма, с разностью сообщений
ΔP = ΔU1 = [0000 1011 0000 0000] (200 пар сообщение/криптограмма),
используемых при дифференциальном криптоанализе, в соответствующее поле в основном окне.  
6.Произведите вычисление наиболее вероятного ключа методом дифференциального криптоанализа, выбирая его из 10 наиболее вероятных ключей при N=100. Для этого кликните мышью кнопку «вычисление наиболее вероятных ключей». При этом программа случайным образом сгенерирует N=100 пар открытых сообщений, зашифрует их на ключе, полученном в п. 3, затем произведет криптоанализ и выдаст 10 наиболее вероятных значений извлекаемого подключа (рис. 8). (Подробно алгоритм криптоанализа описан в приложении)
Рис. 8. Результаты криптоанализа
Сравните результат с ключом  5-го раунда, полученном в п. 3 (Рис. 3). Если среди извлеченных подключей не окажется верного, повторите криптоанализ. Повторите криптоанализ несколько раз. Сделайте вывод о том, как часто правильный ключ попадает в десятку наиболее вероятных, и как часто он оказывается на первом месте.
7.Повторите пп.5-6 для N=500 и 5000.Сравните результаты с ключом, полученном в п. 3. Сделайте вывод о том, как часто правильный ключ попадает в десятку наиболее вероятных, и как часто он оказывается на первом месте, в зависимости от N.
Отчет по лабораторной работе
«Дифференциальный криптоанализ блочного шифра»
(пример оформления)
Выполнил студент:  Петров В.В.
Группа:  МТ-000
Преподаватель: Яковлев В.А.
Вероятности появления пар разностей
Произвольно выбраны пары
(F , 4)  вероятность появления = 0.375
(F , 9)  вероятность появления = 0.250
(1 , A)  вероятность появления = 0.250
(1 , C)  вероятность появления = 0.250

Заданы пары

(B , 2)  вероятность появления = 0.500

(4 , 6)  вероятность появления = 0.375

(2 , 5)  вероятность появления = 0.375
Генерация ключа
Выбран исходный ключ 1111111
Раундовые ключи
K1 = 1111 1111 1111 1111
K2 = 1111 1111 1111 1111
K3 = 1111 1111 1111 1111
K4 = 1111 1111 1111 1111
K5 = 1111 1111 1111 1111
Дифференциальный криптоанализ
N=100
[K5,5...K5,8]  [K5,13...K5,16]     Вероятность
   1111               0001                  0.020
   1111               1111                  0.020
   0011               0001                  0.010
   0011               1111                  0.010
   1001               0001                  0.010
   1001               1111                  0.010
   1010               0001                  0.010
   1010               1111                  0.010
   1100               0001                  0.010
   1100               1111                  0.010
N=500
[K5,5...K5,8]  [K5,13...K5,16]     Вероятность
   1111               1111                  0.026
   1010               1111                  0.016
   1000               1111                  0.012
   1101               1111                  0.012
   1010               1010                  0.010
   1111               1010                  0.010
   1000               1010                  0.008
   1101               1010                  0.008
   1111               0001                  0.008
   0010               1111                  0.006
N=5000
[K5,5...K5,8]  [K5,13...K5,16]     Вероятность
   1111               1111                  0.0226
   1010               1111                  0.0120
   1111               1010                  0.0108
   1000               1111                  0.0064
   1101               1111                  0.0064
   1111               1000                  0.0064
   1111               1101                  0.0064
   1010               1010                  0.0062
   1001               1111                  0.0058
   1100               1111                  0.0056
Контрольные вопросы
1.Основной принцип разностного криптоанализа блоковых шифров.
2.Какой тип атаки используется при разностном криптоанализе?
3.Чем определяется сложность разностного криптоанализа?
4.Каким условиям должен удовлетворять шифр для его  устойчивости к разностному криптоанализу?
Литература
1.В.И.Коржик “Конспект лекций по курсу “Основы криптографии”’.
2.В.И.Коржик , Д.В.Кушнир “Теоретические основы информационной безопасности телекоммуникационных систем”.(Учебное пособие , ГУТ ,2000)
3.H.Heys “A Tutorial on Linear and Differential Cryptanalysis”, Manuscript.


 

А также другие работы, которые могут Вас заинтересовать

1944. Воспитательный процесс в школе 24.85 KB
  Организационно-педагогические мероприятия. Воспитание положительного отношения школьников к учению. Воспитание нравственных ценностей у школьников. Физическая культура и здоровье учащихся. Работа с родителями и общественностью.
1945. Добро починається з тебе 24.1 KB
  Мета: допомогти учням з’ясувати сутність понять добро, доброта, милосердя як принципів людського буття, навчити учнів критично ставитися до своїх вчинків та вчинків інших людей, аналізувати матеріал з різних джерел і самостійно робити правильні висновки.
1946. Воспитательные функции классного руководителя как организатора воспитательного процесса в школе 25.53 KB
  Основным структурным элементом воспитательной системы школы является класс. Именно здесь организуется познавательная деятельность, формируются социальные отношения между учащимися. Представительские функции в органах самоуправления школы реализуются также чаще всего от имени класса.
1947. Мисс 8 Марта. Воспитательное мероприятие 40.5 KB
  Формировать у учащихся коммуникативные навыки общения в классе, со сверстниками, обогатить культуру общения в семье, развивать эмоциональную сферу учащихся.
1948. Культура мовлення 20.69 KB
  Поглиблювати розуміння учнями етики спілкування, формувати негативне ставлення до лихослів'я, переконувати в потребі кожного підвищувати культуру свого мовлення — найголовнішу ознаку загальної культури.
1949. Шкідливим звичкам немає місця серед нас 24.61 KB
  Ознайомити із поняттям звичка, розкрити різницю між корисними та шкідливими звичками, сприяти усвідомленню учнями необхідності формування корисних звичок, формувати вміння порівнювати і формулювати висновки, розвивати логічне мислення на прикладах впливу корисних та шкідливих звичок на здоров'я та спосіб життя людини; виховувати силу волі для формування корисних звичок та подолання шкідливих, позитивне ставлення до оздоровчого способу життя.
1950. Воспитательный лагерь во Франции 25.5 KB
  Учебно-воспитательное заведение La Rouvelière. Строгость и интенсивное обслуживание каждого молодого человека.
1951. Система воспитательной работы (по видам детства) 25.04 KB
  Основные направления и технология педагогической деятельности. Формирование начальных детских убеждений (НДУ) у младших школьников. Создание ситуации успеха в учебной деятельности.
1952. Воспитательное мероприятие: Вредные привычки 27.26 KB
  Воспитывать в учащихся потребность быть здоровыми. Убеждать в негативном воздействии на молодой организм психоактивных веществ (табачный дым, алкоголь).