Лабораторные и практики / 07_ЛР
.docxФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
_____________________________________________________________________________
Кафедра информационной безопасности телекоммуникационных систем
Дисциплина «Основы криптографии»
Лабораторная работа 7
«Линейный криптоанализ блочного шифра»
Выполнили: ст. гр. .
.
Проверил: проф. Яковлев В.А..
Санкт-Петербург
2021
Цель работы:
Целью данной работы является изучение принципа линейного криптоанализа блочных шифров, реализованных по схеме SPN.
Задание:
1. Произвести оценку «линейности» S-box «учебного шифра», построенного на основе схемы SPN.
2. Построить сквозную линейную аппроксимацию шифра.
3. Произвести вычисление элементов 5-го раундового ключа шифра SPN, используя линейный криптоанализ.
Ход работы:
Вероятности появления линейных комбинаций
Произвольно выбраны
|
вероятность появления = 0,375 вероятность появления = 0,5 вероятность появления = 0,625 вероятность появления = 0,375 |
перекос = -0,125 перекос = 0 перекос = 0,125 перекос = -0,125 |
Заданы
|
вероятность появления = 0,625 вероятность появления = 0,375 вероятность появления = 0,25 |
перекос = 0,125 перекос = -0,125 перекос = -0,25 |
Генерация ключа
Выбор S-блоков для сквозной аппроксимации
-
№ вар.
1раунд
2 раунд
3 раунд
6
S12
S22
S31,S33 -> S32,S33
Построение сквозной линейной аппроксимации
Примечание. S блоки на 3 раунде не дали нужно результата (был результат перекос = 0), изменили на 3 раунде S31, проверяем блоки S32,S33.
Расчет вероятностных характеристик линейных аппроксимаций
№ раунда |
Вероятность аппрокси- мации S-блока (блоков) в раунде |
Перекос аппрокс- мации |
Вероятность аппрокси- мации в 1+2 раунде и перекос |
Вероятность аппрокси- мации в 1+2+3 раунде и перекос |
1 |
S13: 5/8 |
1/8 |
|
|
2 |
S22: 3/8 |
-1/8 |
½+2(5/8-1/2)(3/8-1/2)=15/32 перекос (-1/32) |
|
3 |
S32+ S34: ½+2(1/4-1/2)(1/4-1/2)=5/8 |
-1/4 |
|
½+23(1/4-1/2)(1/4-1/2)3=17/32 перекос (1/32)= 0,03125 |
Результаты моделирования для подключа K5…K8 и K13…K16 |
перекос: 0,03125 |
Скриншоты окна подбора ключа для разных N.
N=1000
N=5000
N=35000
Вывод:
В данной работе мы изучили принцип линейного криптоанализа блочных шифров, реализованных по схеме SPN.
Шифр SPN уязвим к атаке произведенной методом сквозной линейной аппроксимации. Для увеличения достоверности вычисления истинного ключа количество таких пар с каждым разом должно увеличиваться нелинейно.