- •Шифр des
- •Ручные преобразования первого раунда
- •Раундовый ключ
- •Начальное преобразование
- •Раундовое преобразование
- •Преобразования CrypTool
- •Раундовый ключ
- •Начальное преобразование
- •Раундовое преобразование
- •Обратное преобразование
- •Шифр des: режимы работы
- •Модификация 3-des
- •Шифр Магма
- •Ручные преобразования первого раунда
- •Преобразования LitoreR
- •Обратное преобразование
- •Шифр Магма: режимы работы
- •Режим простой замены
- •Режим простой замены с зацеплением
- •Приложение а. Примечания.
Шифр des: режимы работы
2.1. ECB
Было подготовлено и зашифровано с помощью средств CrypTool 1 достаточно большое текстовое сообщение в режиме ECB (рис. 15)
Рисунок 15: DES/ECB
После чего на данный шифр была проведена атака грубой силы, в таблице 1 представлены результаты оценки времени подбора ключа при разном количестве известных байтов ключа.
Таблица 1: результаты криптоанализа DES/ECB
-
N известных байтов
Оценка времени взлома
0
лет
1
лет
2
дней
3
дней
4
минуты
5
cекунд
6
мгновенно
7
мгновенно
2.2. CBC
Аналогичным образом исходный текст был зашифрован в режиме CBC (рис. 16)
Рисунок 16: DES/CBC
После чего средствами CrypTool 1 был проведён криптоанализ для оценки времени подбора ключа при разных количествах известных байтов ключа, результаты представлены в таблице 2.
Таблица 2: результаты криптоанализа DES/СBС
-
N известных байтов
Оценка времени взлома
0
лет
1
лет
2
3
дней
4
минуты
5
cекунд
6
мгновенно
7
мгновенно
Можно заметить, что в большинстве случаев атака на шифр DES в режиме CBC занимает больше времени, происходит это за счёт большей энтропии (битовые последовательности более хаотичны).
Модификация 3-des
Для определения версии шифра 3-DES используемого в среде CrypTool 2 были вручную построены следующие схемы шифрования 3-DES разными способами (EEE и EDE). Для 24-ёх и 16-ти байтного ключа схемы определения версии представлены соответственно на рисунках 17 и 18.
Рисунок 17: схема определения версии 3-DES для 24-ёх байтного ключа
Рисунок 18: схема определения версии 3-DES для 16-ти байтного ключа
Как можно заметить сообщение зашифрованное DES-EDE3 и DES-EDE2 успешно расшифровалось стандартным инструментом расшифровки 3DES, что свидетельствует о том, что в CrypTool 2 используются данные версии шифра.
Шифр Магма
Были выбраны следующие исходные данные:
Открытый текст M = “Bolkunov”
Ключ K = “030304O030304O030304O030304O0303”
Соответственно их байтовое представление:
M16 = 42 6F 6C 6B 75 6E 6F 76
K16 = 30 33 30 33 30 34 4F \
30 33 30 33 30 34 4F \
30 33 30 33 30 34 4F \
30 33 30 33 30 34 4F \
30 33 30 33 30
Ручные преобразования первого раунда
Разбиваем ключ на 4-ёх-байтовые последовательности и берём первую в соответствии со схемой использования раундовых ключей; и получаем раундовый ключ первого раунда:
K1 = 30 33 30 33
Разобьём блок сообщения на две половины:
L0 = 42 6F 6C 6B
R0 = 75 6E 6F 76
Следующий шаг шифра: сложение R0 с раундовым ключом:
R0+ = R0 + K1 mod = A5 A1 9F A9
Далее осуществляем перестановки S-блоков в соответствии с таблицей S-блоков (рис. 19)
Рисунок 19: S-блоки магмы
A A = 0001
5 9 = 1101
A 8 = 1100
1 F = 0111
9 0 = 0100
F 0 = 1110
A 4 = 0001
9 8 = 0010
Тогда R0s = A9 8F 00 48
Следующим шагом осуществляем циклический сдвиг влево на 11 бит:
R0L = 1010 1001 1000 1111 0000 0000 0100 1000 << 11
= 0111 1000 0000 0010 0100 0101 0100 1100
= 78 02 45 4C
Чтобы получить R1 остаётся только применить xor к полученному на предыдущем шаге R0L с L0 :
R1 = R0L xor L0 = 78 02 45 4C xor 42 6F 6C 6B = 3A 6D 29 27
L1 = R0 = 75 6E 6F 76