
Лабораторная работа №4
.pdf
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕУЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А.
БОНЧ-БРУЕВИЧА» (СПбГУТ)
Факультет Инфокоммуникационных сетей и систем
Кафедра Защищенных систем связи
Дисциплина Криптографические методы защиты информации
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №4
Изучение подстановочно-перестановочного шифра и его свойств
(тема отчета)
Информационная безопасность (10.03.01)
(код и наименование направления/специальности)
Студент группы ИКБ-06: Ерохин А.Г.
(Ф.И.О.) |
(подпись) |
Д.т.н., проф. каф. ЗСС: Яковлев В.А.
(Ф.И.О.) |
(подпись) |
Санкт-Петербург
2023 г

Цель работы: Изучение структуры и основных свойств блочного шифра, основанного на подстановочно перестановочной сети (SubstitutionPermutation Network - SPN), криптоанализ шифра методом тотального перебора ключей, исследование влияние ошибок в канале связи на достоверность расшифрованного сообщения.
Ход выполнения лабораторной работы:
Генерация раундовых ключей и выбор ключа (рис.1).
Ключ: 1011001
Рисунок 1 – Генерация раундовых ключей
Такой метод задания ключа был выбран по двум причинам. Первая – продемонстрировать необходимость исключения криптографически слабых раундовых ключей (например, 0000… или 00110011… или 010101… и т.п.). Вторая – сократить количество вариантов для перебора. Так при переборе всех вариантов раундовых ключей (80 бит) потребуется 280 ≈ 1,2∙1024 расшифровок сообщения. При выбранном способе задания ключей, путем получения их из управляющего ключа длинной 7 бит, количество вариантов для перебора сокращается до 27 = 128, что является вполне переборной величиной.
Анализ преобразований шифра:
Выбрана двоичная последовательность длиной 16 бит для шифрования (рис.2). Открытый текст: 1010 1010 1010 1010 (вариант 10)
2

Рисунок 2 – Шифрование
Шифрование с использованием ключа 1011001 (рис.3).
Рисунок 3 – Шифрование с использование ключа 1011001
3

Дешифрование случайным неверным ключом (рис.4).
Рисунок 4 – Пример дешифрования неверным ключом
Криптоанализ методом тотального перебора ключей
Результат расшифровки исходного текста методом перебора ключей (рис.5)
Рисунок 5 – Метод перебора ключей
При допустимом отклонении в 5% частотные интервалы для букв русского языка равны:
P(«О») = (4 - 14) %
P(«А») = (1.2 - 11.2) %
P(«И») = (1.2 - 11.2) %
Метод перебора успешно подобрал верный ключ, а также подсчитал частоты букв «О», «А», «И» сообщения, дешифрованного на данном ключе:
Ключ = 1011001
P(«О») = 12,6%; P(«А») = 3,8%; P(«И») = 5,0%
4

Расшифровка криптограммы другого студента (Гуреев Вадим, Вариант 8)
Подбор ключа с отклонением 5% (рис.6).
Рисунок 6 – Подбор ключа к другой криптограмме
При допустимом отклонении в 5% частотные интервалы для букв русского языка равны:
P(«О») = (4 - 14) %
P(«А») = (1.2 - 11.2) %
P(«И») = (1.2 - 11.2) %
Метод перебора успешно подобрал верный ключ, а также подсчитал частоты букв «О», «А», «И» сообщения, дешифрованного на данном ключе:
Ключ = 1001110
P(«О») = 5,5%; P(«А») = 10,7%; P(«И») = 6,7%
Результат расшифровки текста (рис.7).
Рисунок 7 – Расшифровка текста другого варианта
5

Расчёт расстояния единственности для данного шифра при дешифровании сообщений на русском языке ( ) = 1,5 − 2,5 бит/символ. Длина ключа 7 бит.
> |
∙ ( ) |
= |
|
7 ∙ 1 |
= 1,97 2 символа |
||
|
|
|
|
||||
log2 |
− ( ) |
log2 |
33 − 1,5 |
||||
|
|
|
|||||
> |
∙ ( ) |
= |
|
7 ∙ 1 |
= 2,75 3 символа |
||
|
|
|
|
||||
log2 |
− ( ) |
log2 |
33 − 2,5 |
||||
|
|
|
На основе расчёта расстояния единственности минимальная длина криптограммы, при которой возможно дешифрование, составляет 3 символа.
Исследование влияния ошибок в канале передачи
Исходная криптограмма: |
1011 0001 0001 1111 |
Расшифровка криптограммы: 1010 1010 1010 1010
Расшифровка криптограммы при эмуляции ошибки в 1-м бите
криптограмма с ошибкой: |
0011 0001 0001 1111 |
расшифровка криптограммы: 1010 1010 1010 0011 количество ошибок в расшифровке: 2
во 2-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1111 0001 0001 1111 |
||||
расшифровка криптограммы: |
1010 1010 0011 0011 |
||||
количество ошибок в расшифровке: 4 |
|
|
|
|
|
в 3-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1001 0001 0001 1111 |
расшифровка криптограммы: 0011 0011 1010 1010 количество ошибок в расшифровке: 4
в 4-м бите |
|
|
|
криптограмма с ошибкой: |
1010 0001 0001 1111 |
||
расшифровка криптограммы: |
|
0011 1010 1010 1010 |
|
|
|
|
|
количество ошибок в расшифровке: 2 |
|||
в 5-м бите |
|
|
|
криптограмма с ошибкой: |
1011 1001 0001 1111 |
||
расшифровка криптограммы: |
1010 1010 1010 0101 |
||
количество ошибок в расшифровке: 4 |
|||
в 6-м бите |
|
|
|
криптограмма с ошибкой: |
1011 0101 0001 1111 |
расшифровка криптограммы: 0101 1000 0101 1000 количество ошибок в расшифровке: 10 в 7-м бите
6

криптограмма с ошибкой: |
1011 0011 0001 1111 |
||
расшифровка криптограммы: |
1111 1000 1010 1100 |
||
|
|
|
|
количество ошибок в расшифровке: 5 |
|||
в 8-м бите |
|
|
|
криптограмма с ошибкой: |
1011 0000 0001 1111 |
расшифровка криптограммы: 0000 1000 1111 1100 количество ошибок в расшифровке: 7 в 9-м бите
криптограмма с ошибкой: |
1011 0001 1001 1111 |
||||
расшифровка криптограммы: |
1010 1010 1010 1110 |
||||
количество ошибок в расшифровке: 1 |
|||||
в 10-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0101 1111 |
||||
расшифровка криптограммы: |
1110 0100 1110 0100 |
||||
количество ошибок в расшифровке: 8 |
|||||
в 11-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0011 1111 |
||||
расшифровка криптограммы: |
0100 0100 1010 0000 |
||||
количество ошибок в расшифровке: 8 |
|
|
|||
в 12-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0000 1111 |
||||
расшифровка криптограммы: |
|
0000 0100 0100 0000 |
|||
|
|
|
|
|
|
количество ошибок в расшифровке: 10 |
|||||
в 13-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0001 0111 |
||||
расшифровка криптограммы: |
0110 0110 0110 0110 |
||||
количество ошибок в расшифровке: 8 |
|||||
в 14-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0001 1011 |
||||
расшифровка криптограммы: |
1010 1010 0110 0110 |
||||
количество ошибок в расшифровке: 4 |
|||||
в 15-м бите |
|
|
|
|
|
криптограмма с ошибкой: |
1011 0001 0001 1101 |
расшифровка криптограммы: 1010 1010 1010 0110 количество ошибок в расшифровке: 2
в 16-м бите |
|
криптограмма с ошибкой: |
1011 0001 0001 1110 |
расшифровка криптограммы: |
0110 1010 1010 1010 |
количество ошибок в расшифровке: 2
7

Среднее значение ошибок в дешифрованном сообщении при ошибочном приеме одного бита криптограммы.
|
|
16 |
N |
|
Ni |
|
|
|
|
|
i 1 |
|
ош.ср. |
16 |
|
|
Nош.ср. = (2 + 4 + 4 + 2 + 4 + 10 + 5 + 7 + 1 + 8 + 8 + 10 + 8 + 4 + 2 + 2)/16 = 5,06
Вывод: В данной работе мы изучили структуры и основные свойства блочного шифра, основанного на подстановочно перестановочной сети (Substitution-Permutation Network или SPN), криптоанализа методом тотального перебора ключей и правила принятия решения о правильном ключе при переборе.
Среднее значение ошибок в данной работе Nош.ср. = 5,06, следовательно, это шифр с размножением ошибок.
8