Задача №2. Алгоритм шифрования гост 28147-89.
Выполните первый цикл алгоритма шифрования ГОСТ 28147 89 в режиме простой замены. Для получения 64 бит исходного текста используйте 8 первых букв из своих данных: Фамилии Имени Отчества. Для получения ключа (256 бит) используют текст, состоящий из 32 букв. Первый подключ содержит первые 4 буквы.
Решение
Исходные данные для зашифрования: ГАЗИЗОВ
Для ключа возьмем последовательность, состоящую из 32 букв:
ГАЗИЗОВ ОТЛИЧНЫЙ СТУДЕНТ
Для первого подключа Х используем первые 4 буквы ключа: ГУЗЕ.
Переводим исходный текст и первый подключ в двоичную последовательность:
исходный текст
-
Г
11010100
А
11000000
З
11001001
И
11000111
З
11001001
О
11001011
В
11001011
И
11000111
1 Раунд
первый подключ X0
-
Г
11010100
А
11010011
З
11000111
И
11000101
Таким образом, первые 64 бита определяют входную последовательность
L0: 11010100 11000000 11001001 11000111
R0: 11010011 11001011 11001011 11001000
следующие 32 бита определяют первый подключ
Х0: 11000011 11010011 11000111 11000101
I. Найдем значение функции преобразования f(R0,X0)
1). Вычисление суммы R0 и X0 по mod 232
R0: 1101 0011 1100 1011 1100 1011 1100 1000
Х0: 1100 0011 1101 0011 1100 0111 1100 0101
1001 0111 1001 1111 1001 0011 1000 1101
2). Преобразование в блоке подстановки
Результат суммирования R0+X0 по mod 232
1001 0111 1001 1111 1001 0011 1000 1101
преобразуем в блоке подстановки. Для каждого 4-битного блока вычислим его адрес в таблице подстановки. Номер блока соответствует номеру столбца, десятичное значение блока соответствует номеру строки в таблице.
Номера блоков
8 7 6 5 4 3 2 1
1001 0111 1001 1111 1001 0011 1000 1101
Соответствующие номера строк в таблице подстановки
9 7 9 15 9 3 8 13
Заполнение
2 9 6 2 4 13 2 15
Результат
0010 1001 0110 0010 0100 1101 0010 1111
3). Циклический сдвиг результата п.2 на 11 бит влево
0001 1111 0011 1010 1011 1100 0101 1000
Таким образом, нашли значение функции f (R0,X0):
0001 1111 0011 1010 1011 1100 0101 1000
II. Вычисляем R1= f(R0,X0) L0.
Результат преобразования функции f(R0,X0) складываем с L0 по mod2:
L0: 1101 0100 1100 0000 1100 1001 1100 0111
f(R0,X0): 0001 1111 0011 1010 1011 1100 0101 1000
R1: 1100 1011 1111 1010 0111 0101 1001 1111
2 Раунд
второй подключ X1
-
Л
11001011
Ь
11111100
пробел
00010000
П
11001111
L1: 1101 0011 1100 1011 1100 1011 1100 1000
R1: 1100 1011 1111 1010 0111 0101 1001 1111
следующие 32 бита определяют второй подключ
Х1: 11001011 11111100 00010000 11001111
I. Найдем значение функции преобразования f(R1,X1)
1). Вычисление суммы R1 и X1 по mod 232
R1: 1100 1011 1111 1010 0111 0101 1001 1111
Х1: 1100 1011 1111 1100 0001 0000 1100 1111
1001 0111 1111 0110 1000 0110 0110 1110
2). Преобразование в блоке подстановки
Результат суммирования R1+X1 по mod 232
1001 0111 1111 0110 1000 0110 0110 1110
преобразуем в блоке подстановки. Для каждого 4-битного блока вычислим его адрес в таблице подстановки. Номер блока соответствует номеру столбца, десятичное значение блока соответствует номеру строки в таблице.
Номера блоков
8 7 6 5 4 3 2 1
1001 0111 1111 0110 1000 0110 0110 1110
Соответствующие номера строк в таблице подстановки
9 7 15 6 8 6 6 14
Заполнение
2 9 14 13 14 4 15 5
Результат
0010 1001 1110 1101 1110 0100 1111 0101
3). Циклический сдвиг результата п.2 на 11 бит влево
0001 1110 1000 1100 0010 0101 0000 1101
Таким образом, нашли значение функции f (R1,X1):
0001 1110 1000 1100 0010 0101 0000 1101
II. Вычисляем R2= f(R1,X1) L1.
Результат преобразования функции f(R1,X1) складываем с L1 по mod2:
L1: 1101 0011 1100 1011 1100 1011 1100 1000
f(R1,X1): 0001 1110 1000 1100 0010 0101 0000 1101
R2: 1100 1101 0100 0111 1110 1110 1100 0101
- Содержание
- Введение
- I. Теоретическая часть
- 1. Криптография и шифрование
- 1.1 Что такое шифрование
- 1.2 Основные понятия и определения криптографии
- 1.3 Симметричные и асимметричные криптосистемы
- 1.4 Основные современные методы шифрования
- II. Практическая часть
- Задача №2. Алгоритм шифрования гост 28147-89.
- Задача №3. Алгоритм шифрования rsa.
- Задача №4. Функция хеширования.
- Задача №5. Электронная цифровая подпись.
- Заключение
- Список литературы