22 варик / ЛР7
.docМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Факультет Инфокоммуникационных сетей и систем
Кафедра Защищенных систем связи
Дисциплина Криптографические методы защиты информации
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №7
Линейный криптоанализ блочного шифра
(тема отчета)
Направление/специальность подготовки
10.03.01 Информационная безопасность
(код и наименование направления/специальности)
Студент:
Травкина Е.А. ИКБ-14
(Ф.И.О., № группы) (подпись)
Преподаватель:
Яковлев В.А.
(Ф.И.О) (подпись)
Цель работы
Целью данной работы является изучение принципа линейного криптоанализа блочных шифров, реализованных по схеме SPN.
Задание
1. Произвести оценку «линейности» S-box «учебного шифра», построенного на основе схемы SPN.
2. Построить сквозную линейную аппроксимацию шифра.
3. Произвести вычисление элементов 5-го раундового ключа шифра SPN, используя линейный криптоанализ.
Вариант задания № 22
1 раунд - S12
2 раунд - S22
3 раунд - S33, S34
Анализ линейных аппроксимаций S-box ППШ
Выберем линейные комбинации для входов и выходов для S-box согласно варианту, а также рассчитаем вероятность их появления и перекос:
X1X3X4=Y2 вероятность появления = 0.75 перекос = 0.25
X2=Y3Y4 вероятность появления = 0.375 перекос = -0.125
X2=Y1Y2 вероятность появления = 0.625 перекос = 0.125
В качестве ключа укажем комбинацию 1010011 и сгенерируем раундовые ключи:
Линейный криптоанализ учебного ППШ
Расчет вероятностных характеристик линейных аппроксимаций по раундам
№ раунда |
Вероятность аппрокси- мации S-блока (блоков) в раунде |
Перекос аппрокс- мации |
Вероятность аппрокси- мации в 1+2 раунде и перекос |
Вероятность аппрокси- мации в 1+2+3 раунде и перекос |
1 |
S12: 3/4 |
1/4 |
|
|
2 |
S22: 3/8 |
-1/8 |
½+2(3/4-1/2)(3/8-1/2)=7/16 перекос = - 1/8 |
|
3 |
S32+ S34: ½+2(5/8-1/2)(5/8-1/2)=5/8 |
1/8 |
|
½+23(3/4-1/2)(3/8-1/2)(5/8-1/2)2 = 0,496094 перекос (-1/256) = - 0,003906 |
Результаты моделирования для подключа K1…K4 и K5…K8 |
перекос: - 0,003906 |
Скриншоты окна подбора ключа для разных N.
N=1000
N=5000
N=35000
Вывод
В ходе лабораторной работы №7 проведено ознакомление с линейным криптоанализом. Линейный криптоанализ – это метод анализа шифров, который пытается найти линейную зависимость между входами и выходами шифровального алгоритма с целью восстановления ключа или расшифровки сообщений, зашифрованных этим ключом. Основным инструментом линейного криптоанализа является линейная аппроксимация. Линейная аппроксимация представляет собой линейное уравнение, которое описывает связь между некоторыми битами входа и выхода шифра. Принцип подбора ключей в линейном криптоанализе заключается в поиске таких коэффициентов, которые создают наилучшую линейную аппроксимацию между входом и выходом шифра. Выбор истинного ключа в линейном криптоанализе обычно осуществляется путем применения найденной линейной аппроксимации к криптограммам и сравнения результатов с реальными выходами шифра. Если линейная аппроксимация, верно, предсказывает выходы для большинства криптограмм, то вероятность того, что найденный ключ является истинным, высока.