
- •Алгоритм ГОСТ 28147-89
- •Действует с 1989 года;
- •Основной 256-битный ключ делится на 32- битные подключи К0-К7
- •Алгоритм ГОСТ 28147-89. Схема i-го раунда
- •Алгоритм ГОСТ 28147-89. Образующая функция F
- •Алгоритм ГОСТ 28147-89.
- •Базовые циклы криптопреобразования по ГОСТ 28147-89
- •Базовые циклы криптопреобразования
- •Схема цикла зашифрования 32-З
- •Схема цикла расшифрования 32-Р
- •Схема цикла выработки
- •Основные режимы шифрования
- •Режимы блочного шифрования
- •Алгоритмы шифрования и дешифрования
- •Режим простой замены
- •Режим простой замены
- •Режим простой замены
- •Гаммирование
- •Режим гаммирования
- •Требования к гамме
- •Свойства гаммы
- •Схема алгоритма шифрования в режиме гаммирования
- •Режим гаммирования
- •Режим гаммирования
- •Гаммирование с обратной связью
- •Открыт
- •Гаммирование с обратной
- •Гаммирование с обратной связью
- •Выработка имитовставки к массиву данных
- •Выработка имитовставки к массиву
- •Выработка имитовставки к массиву данных
Алгоритм ГОСТ 28147-89

Действует с 1989 года;
Алгоритм |
|
|
|
|
блочный алгоритм, |
|
|||||
|
|
|
|
отечественный стандарт |
|
ГОСТ |
|
|
|
|
симметричного шифрования; |
|
|
|
|
||
28147-89 |
|
|
|
|
длина блока – 64 бита; |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
длина ключа – 256 бит; |
|
|
|
|
|
|
|
|
|
|
|
количество раундов - 32. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

Основной 256-битный ключ делится на 32- битные подключи К0-К7
К0
К1
К2
К3
К4
К5
К6
К7
32 бита
256 бит

Алгоритм ГОСТ 28147-89. Схема i-го раунда

Алгоритм ГОСТ 28147-89. Образующая функция F
правая половина блока и i-ый подключ складываются по модулю 232;
результат разбивается на 8 4-битовых начений, поступающих на узлы замены S0-S7, образующих таблицу замен. Узлы замены имеет 4-битовый вход и выход, содержат числа от 0 до F в разном порядке;
выходное 32-битное слово циклически сдвигается на 11 битов влево;

Алгоритм ГОСТ 28147-89.
Схема образующей функции
32
+
Базовые циклы криптопреобразования по ГОСТ 28147-89

Базовые циклы криптопреобразования
Цикл |
|
|
Цикл |
зашифрования |
выработки |
||
32-З: |
|
|
имитовставк |
К0, …, К7, К0, …, К7, |
и 16-З: |
||
К , …, К |
, К , …, |
К0, …, К7, К0, …, |
|
К0; |
7 |
7 |
К7. |
0 |
|
Цикл |
|
|
|
|
|
|
|
расшифрования |
|
|
|
32-Р: |
|
|
|
К0, …, К7, К7, …, К0, К7, |
|
|
|
…, К0, К7, …, К0; |
- это многократное повторение основного шага криптопреобразования.

Схема цикла зашифрования 32-З
|
|
0 |
Начало |
( N |
|
) |
|
||
|
|
|
|
|
|||||
k |
=1..3 |
=0..7 |
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
1 |
|
|
( N |
, |
|
|
) |
|
|
N |
= |
Шаг |
K |
j |
|||
|
j |
=7..0 |
|
|
|
|
|
|
|
|
|
2 |
|
|
( N |
, |
|
|
) |
|
|
N |
= |
Шаг |
K |
j |
|||
|
|
3 |
|
N 1 |
N |
|
|
|
|
|
|
|
|
2 |
|
|
|
||
|
|
4 |
Конец |
( |
N |
) |
|
|
|
|
|
|
|
|
N- 64 - битный блок данных;
N = Шаг (N,Kj) – выполнение
основного шага криптопреобразования для блока
N с использованием ключевого элемента Kj.

Схема цикла расшифрования 32-Р 
|
|
0 |
Начало |
|
( N |
|
) |
|
||
|
|
|
|
|
|
|||||
|
j |
=0..7 |
|
|
|
|
|
|
|
|
|
|
1 |
|
|
( N |
, |
|
|
) |
|
|
|
N |
= |
Шаг |
K |
j |
||||
k |
=1..3 |
=7..0 |
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
( N |
, |
|
|
) |
|
|
|
N |
= |
Шаг |
K |
j |
||||
|
|
3 |
|
N 1 |
|
N |
|
|
|
|
|
|
|
|
2 |
|
|
|
|||
|
|
4 |
Конец |
|
( |
N |
) |
|
|
|
|
|
|
|
|
|
N- 64 - битный блок данных;
N = Шаг (N,Kj) –
выполнение основного шага криптопреобразования для
блока N с использованием
ключевого элемента Kj.