
Шифрование в радиоэлектронных системах передачи информации
..pdf
71
1. Открыть окно «Настройки» (AES>Настройки>), установить переключатель в положение «Свой ключ» и ввести посимвольное значение ключа (32 символа, 16 ячеек).
Нажать «ОК».
2.В главном окне поставить переключатель в положение ECB.
3.Открыть файл из папки программы (Файл >Открыть)
4.Зашифровать и расшифровать его. (AES > Зашифровать (Расшифровать)).
5.Проделать пункты 3.2-3.4 для оставшихся трех файлов.
6.По полученным результатам заполнить таблицу
Размер
файла
Время
зашифрования
Время
расшифрования
7.Построить графики зависимости шифрования \ расшифрования от времени.
8.По полученным данным оценить примерное время взлома стандарта AES с
помощью всего перебора ключей. Построить график.
\Пример:
На расшифрование 5кB (5120 байт) текста на Athlon 2600+ тратится 9с. Поэтому один блок (16 байт ) программа расшифровывает за 9/(5120/16) = (9*16)/5120 = 28 мс. Таким образом, на перебор 1 ключа, а это 128 бит, потребуется 28 мс.
За 1 секунду программа способна перебрать 4571 бит или примерно 35 вариантов ключей.
За год непрерывной работы программа переберет (35*60*60*24*365) = 1 103 760 000
ключей.
Если поделить 2128 на 1 103 760 000 , то получим 3.08*1029 лет непрерывной работы программы.
Исследование быстродействия различных режимов шифрования
1.Поставить переключатель в режим CВС.
2.Открыть файл из папки программы (Файл >Открыть)
3.Зашифровать и расшифровать его (AES > Зашифровать (Расшифровать))
4.Повторить пункт 4.2-4.3 для оставшихся трех файлов (10, 15, 30 кБ)
5.Поставить переключатель в режим CFB.
6.Повторить пункты 4.2 – 4.3.

72
7.Поставить переключатель в режим OFB.
8.Повторить пункты 4.2 – 4.3
9.По полученным результатам заполнить таблицу:
Размер
файла
ECB
время заш/расш
CBС
время заш/расш
CFB
время заш/расш
OFB
время заш/расш
10. Построить на одном графике зависимость шифрования \ расшифрования от времени.
11. Для каждого режима загрузить еще раз файл (любой). Зашифровать его. В
текстовом поле 2 изменить какой-нибудь символ. Нажать AES > Расшифровать.
Исследование свойств различных режимов шифрования
Загрузить файл «Свойства режимов».
Поочередно зашифровать текстовое сообщение во всех четырех режимах.
Сравнить полученные шифротексты и сделать выводы.
Исследование пораундовой работы алгоритма
1 Открыть любой из предоставленных для работы файлов
2.Включить функцию логирования (AES>Настройки>Включить логирование>Да).
3.В главном окне поставить переключатель в положение ECB.
4.Зашифровать и расшифровать.
5.Открыть с помощью текстового редактора файлы Encrypt.txt и Decrypt.txt из папки программы
6.Проанализировать полученный результат.
73
Знакомство с атакой «Квадрат»
1.В главном окне в текстовое поле 1 загрузить файл «Атака Квадрат»
(Файл>Открыть)
2.Открыть окно Атака «Квадрат» (AES > Квадрат)
3.С помощью переключателя “Номер раунда” установить 4 раундовый ключ.
4.Нажать кнопку “вычислить”.
5.Поместить текст из поля 1 в поле 2.
6.Нажать кнопку найти ключ.
7.Сравнить значения текстовых полей “Ваш ключ” и значения текстовых полей
“Реальный ключ”.
8. Сделать выводы.
Содержание отчета
1.Цель работы.
2.Описание действий по каждому пункту.
3.Результаты проделанной работы (таблицы, графики, расчетная часть).
4.Выводы.
Контрольные вопросы
1.Что такое симметричное шифрование?
2.Что представляет собой стандарт AES (длина ключа, размер входного блока)?
3.Какой алгоритм выбран в качестве стандарта AES?
4.Что собой представляет архитиктура данного стандарта?
5.Из чего состоит один раунд?
6.Сколько раундов шифрования предусмотрено стандартом?
7.Что быстрее шифрование или разшифрование? Почему?
8.Какие режимы шифрования применяются в стандарте AES?
9.Какие режимы быстрее при разшифровании? Почему?
10.Какие режимы лучше восстанавливают зашифрованную информацию при ошибке
водном символе? Почему?
11.С какой целью используется синхропосылка или вектор инициализации?
12.Что представляет собой атака Квадрат? Какие ее особенности?
1. Ознакомится с теорией по стандарту AES (из чего состоит раунд шифрования,
как работают раундовые преобразования, с необходимым математическим аппаратом).
2. Взять у преподавателя задание, состоящие из:

74
уникального ключа для шифрования/дешифрования текстовых сообщений
набора файлов разного размера для исследования стандарта
файла для исследования режимов шифрования
вектора инициализации
файла для проведения атаки «Квадрат»
3. Исследование стандарт шифрования
3.1. Открыть окно «Настройки» (AES>Настройки>), установить переключатель в положение «Свой ключ» и ввести посимвольное значение ключа (32 символа, 16 ячеек).
Нажать «ОК».
3.2.В главном окне поставить переключатель в положение ECB.
3.3.Открыть файл из папки программы (Файл >Открыть)
3.4.Зашифровать и расшифровать его. (AES > Зашифровать (Расшифровать)).
3.5.Проделать пункты 3.2-3.4 для оставшихся трех файлов.
3.5. По полученным результатам заполнить таблицу
Размер
файла
Время
зашифрования
Время
расшифрования
3.6.Построить графики зависимости шифрования \ расшифрования от времени.
3.7.По полученным данным оценить примерное время взлома стандарта AES с
помощью всего перебора ключей. Построить график.
Пример:
На расшифрование 5кB (5120 байт) текста на Athlon 2600+ тратится 9с. Поэтому один блок (16 байт ) программа расшифровывает за 9/(5120/16) = (9*16)/5120 = 28 мс. Таким образом, на перебор 1 ключа, а это 128 бит, потребуется 28 мс.
За 1 секунду программа способна перебрать 4571 бит или примерно 35 вариантов ключей.
За год непрерывной работы программа переберет (35*60*60*24*365) = 1 103 760 000
ключей.
Если поделить 2128 на 1 103 760 000 , то получим 3.08*1029 лет непрерывной работы программы.

75
3.8. Сделать выводы
Исследование быстродействия различных режимов шифрования
1.Поставить переключатель в режим CВС.
2.Открыть файл из папки программы (Файл >Открыть)
3.Зашифровать и расшифровать его (AES > Зашифровать (Расшифровать))
4.Повторить пункт 4.2-4.3 для оставшихся трех файлов (10, 15, 30 кБ)
5.Поставить переключатель в режим CFB.
6.Повторить пункты 4.2 – 4.3.
7.Поставить переключатель в режим OFB.
8.Повторить пункты 4.2 – 4.3
9.По полученным результатам заполнить таблицу:
Размер
файла
ECB время заш/расш
CBС время заш/расш
CFB время заш/расш
OFB время заш/расш
10.Построить на одном графике зависимость шифрования \ расшифрования от
времени.
11.Для каждого режима загрузить еще раз файл (любой). Зашифровать его. В
текстовом поле 2 изменить какой-нибудь символ. Нажать AES > Расшифровать.
12.Сделать выводы.
Исследование свойств различных режимов шифрования
Загрузить файл «Свойства режимов».
Поочередно зашифровать текстовое сообщение во всех четырех режимах.
Сравнить полученные шифротексты и сделать выводы.
Исследование пораундовой работы алгоритма
1 Открыть любой из предоставленных для работы файлов
2.Включить функцию логирования (AES>Настройки>Включить логирование>Да).
3.В главном окне поставить переключатель в положение ECB.
76
4.Зашифровать и расшифровать.
5.Открыть с помощью текстового редактора файлы Encrypt.txt и Decrypt.txt из папки программы
6.Проанализировать полученный результат.
Знакомство с атакой «Квадрат»
1.В главном окне в текстовое поле 1 загрузить файл «Атака Квадрат»
(Файл>Открыть)
2.Открыть окно Атака «Квадрат» (AES > Квадрат)
3.С помощью переключателя “Номер раунда” установить 4 раундовый ключ.
4.Нажать кнопку “вычислить”.
5.Поместить текст из поля 1 в поле 2.
6.Нажать кнопку найти ключ.
7.Сравнить значения текстовых полей “Ваш ключ” и значения текстовых полей
“Реальный ключ”.
8. Сделать выводы.
Содержание отчета
1.Цель работы.
2.Описание действий по каждому пункту.
3.Результаты проделанной работы (таблицы, графики, расчетная часть).
4.Выводы.
Исследование стандарт шифрования
Размер |
5kB |
10kB |
20kB |
30kB |
файла |
|
|
|
|
|
|
|
|
|
Время |
1 |
3 |
6 |
9 |
зашифрования, с |
|
|
|
|
|
|
|
|
|
Время |
9 |
18 |
37 |
55 |
расшифрования, с |
|
|
|
|
|
|
|
|
|

77
Зависимости размера файла от времени его шифрования \ расшифрования при проведении эксперимента на Athlon 2600+
Исследование быстродействия различных режимов шифрования
Размер |
|
5kB |
10kB |
20kB |
30kB |
файла |
|
|
|
|
|
|
|
|
|
|
|
ECB |
время |
1 |
3 |
6 |
9 |
зашифрования |
|
|
|
|
|
|
|
|
|
|
|
ECB |
время |
9 |
18 |
37 |
55 |
расшифрования |
|
|
|
|
|
|
|
|
|
|
|
CBС |
время |
1 |
3 |
6 |
9 |
зашифрования |
|
|
|
|
|
|
|
|
|
|
|
CBС |
время |
8 |
17 |
37 |
56 |
расшифрования |
|
|
|
|
|
|
|
|
|
|
|
CFB |
время |
1 |
3 |
5 |
9 |
зашифрования |
|
|
|
|
|
|
|
|
|
|
|
CFB |
время |
2 |
3 |
6 |
10 |
расшифрования |
|
|
|
|
|
|
|
|
|
|
|
OFB |
время |
1 |
3 |
6 |
9 |
зашифрования |
|
|
|
|
|
|
|
|
|
|
|
OFB |
время |
2 |
3 |
7 |
9 |
расшифрования |
|
|
|
|
|
|
|
|
|
|
|
78
Зашифруем разными режимами слово пример, затем в шифротексте изменим 1
символ, получим:
|
|
Исходный |
Измененный |
|
Результат |
|
|
И |
шифротекст |
шифротекст |
|
|
|
|
сходны |
|
|
|
|
|
|
й текст |
|
|
|
|
|
|
|
|
|
|
|
|
E |
п |
63891BCDBE14D6 |
63891BCDBE14D6 |
|
ЛMЎ!ня«m;5 |
|
CB |
ример |
E7 |
E7 |
Ј9w |
||
|
|
B827C0AF68EF541 |
B827C0AF68EF54 |
|
|
|
|
|
9 |
10 |
|
|
|
|
|
|
|
|
|
|
C |
п |
00000000000000000 |
1000000000000000 |
|
яример |
|
BC |
ример |
0 |
00 |
|
|
|
|
|
00000000000000638 |
0000000000000063 |
|
|
|
|
|
9 |
89 |
|
|
|
|
|
1BCDBE14D6E7B8 |
1BCDBE14D6E7B |
|
|
|
|
|
2 |
82 |
|
|
|
|
|
7C0AF68EF5419 |
7C0AF68EF5419 |
|
|
|
|
|
|
|
|
|
|
C |
п |
00000000000000000 |
0000000000000000 |
|
|
|
ЗЮЅў”[ж<Яс-(ѕ |
||||||
FB |
ример |
0 |
00 |
|||
|
|
|||||
|
|
00000000000000891 |
0000000000000689 |
|
|
|
|
|
9 |
19 |
|
|
|
|
|
A3380A7A2D3A894 |
A3380A7A2D3A8 |
|
|
|
|
|
D |
94D |
|
|
|
|
|
FB58CB352A2F |
FB58CB352A2F |
|
|
|
|
|
|
|
|
|
|
O |
п |
00000000000000000 |
0000000000001000 |
|
µZi'aIj·jOÕC |
|
FB |
ример |
0 |
00 |
&Ú |
|
|
|
|
00000000000000891 |
0000000000000089 |
|
|
|
|
|
9 |
19 |
|
|
|
|
|
A3380A7A2D3A894 |
A3380A7A2D3A8 |
|
|
|
|
|
D |
94D |
|
|
|
|
|
FB58CB352A2F |
FB58CB352A2F |
|
|
|
|
|
|
|
|
|
Исследование свойств различных режимов шифрования
Файл «Свойства режимов» содержит несколько раз повторяющееся слово. Например,
задание задание задание задание задание задание задание задание.
79
Каждый режим при этом покажет свои особенности:
1.ECB
задание задание задание задание задание задание задание задание
D3D5451C8296E7E653A82652AED4E56A
D3D5451C8296E7E653A82652AED4E56A
D3D5451C8296E7E653A82652AED4E56A
A8F11E11A02FF140F0936291695512CA
2.CBС
00000000000000000000000000000000
D3D5451C8296E7E653A82652AED4E56A
F84E11957A1A02F67B97ED2A9DE04DD2
00D20F40BEE5D0C7EEF499531BEF8B8C
9BB124631613C483AE57E40BCD63C2AC
3.CFB
00000000000000000000000000000000
8109AF340262C91B6FAC1EB927DCCE0E
6D376DFF127D70059697E293142F5DA6
DBC4EAC4CA79A6139E944EB9B374DDAD
4128D7EF70BE71BB9F57B9D64DF4EC68
4.OFB
00000000000000000000000000000000
8109AF340262C91B6FAC1EB927DCCE0E
107559AABF0A7BF7F433F71ACD01689C
46EC128DE2351660B490505F601D5A93
A02767750D304B01733AEE7046216D8B
В данном примере синхропосыла равна 00000000000000000000000000000000
Исследование пораундовой работы алгоритма
Используем слово «пример»
Зашифрование:
80
Зашифрование
Входной блок EFF0E8ECE5F001010101010101010101 Раундовый ключ: 00000000000000000000000000000000
Состояние после сложения с ключом: EFF0E8ECE5F001010101010101010101 Раунд №1
Состояние после SubBytes: DF8C9BCED98C7C7C7C7C7C7C7C7C7C7C Состояние после ShiftRows: DF8C7C7CD97C7CCE7C7C9B7C7C8C7C7C Состояние после MixColumns: 2A242F729F6B14F79B4EA99B77878C8C Раундовый ключ: 62636363626363636263636362636363
Состояние после сложения с ключом: 48474C11FD087794F92DCAF815E4EFEF Раунд №2
Состояние после SubBytes: 52A029825430F52299D874415969DFDF Состояние после ShiftRows: 523074DF54D8DF829969292259A0F541 Состояние после MixColumns: 5F71F0178607B4E49912C4B4FD47CB3C Раундовый ключ: 9B9898C9F9FBFBAA9B9898C9F9FBFBAA
Состояние после сложения с ключом: C4E968DE7FFC4F4E028A5C7D04BC3096 Раунд №3
Состояние после SubBytes: 1C1E451DD2B0842F777E4AFFF2650490 Состояние после ShiftRows: 1CB04A90D27E041D7765452FF21E84FF
Состояние после MixColumns: 292993E5243F832D2B5DE9E7A6A6E572 Раундовый ключ: 90973450696CCFFAF2F457330B0FAC99
Состояние после сложения с ключом: B9BEA7B54D534CD7D9A9BED4ADA949EB Раунд №4
Состояние после SubBytes: 56AE5CD5E3ED290E35D3AE4895D33BE9
Состояние после ShiftRows: 56EDAEE9E3D33BD535D35C0E95AE2948 Состояние после MixColumns: C797DC705DC6226756624CCCB9E1B1B3 Раундовый ключ: EE06DA7B876A1581759E42B27E91EE2B
Состояние после сложения с ключом: 2991060BDAAC37E623FC0E7EC7705F98
Раунд №5
Состояние после SubBytes: A5816F2B57919A8E26B0ABF3C651CF46 Состояние после ShiftRows: A591AB4657B0CF2B26516F8EC6819AF3 Состояние после MixColumns: 143CB342814D1FD05EBB2053669966B7 Раундовый ключ: 7F2E2B88F8443E098DDA7CBBF34B9290
Состояние после сложения с ключом: 6B1298CA790921D9D3615CE895D2F427 Раунд №6