Зашифрование данных
Криптосхема, реализующая алгоритм зашифрования в режиме гаммирования с обратной связью, имеет вид, указанный на схеме.
Открытые данные, разбитые на 64-разрядные блоки зашифровываются в режиме гаммирования с обратной связью путем поразрядного суммирования по модулю 2 в сумматоре СМ5 с гаммой шифра, которая вырабатывается блоками по 64 бита каждый.
В КЗУ вводится 256 бит ключа. Синхропосылка S из 64 бит вводится в N1 и N2.
Исходное заполнение N1 и N2 зашифровывается в режиме простой замены. Полученное в результате заполнение N1 и N2 образует первый 64-разрядный блок гаммы шифра, который суммируется поразрядно по модулю 2 в сумматоре СМ5 с первым 64-разрядным блоком открытых данных.
В результате получается 64-разрядный блок зашифрованных данных.
Структурная схема зашифрования в режиме гаммирования с обратной связью
Блок зашифрованных данных одновременно является также исходным состоянием N1, N2 для выработки второго блока гаммы шифра и по обратной связи записывается в указанные накопители.
Заполнение N1, N2 зашифровывается в режиме простой замены. Полученное в результате зашифрования заполнение N1, N2 образует второй 64-разрядный блок гаммы шифра, который суммируется поразрядно по модулю 2 в сумматоре СМ5 со вторым блоком открытых данных.
Выработка последующих блоков гаммы шифра и зашифрование соответствующих блоков открытых данных производится аналогично.
В канал связи или память ЭВМ передаются синхропосылка S и блоки зашифрованных данных.
Расшифрование данных
При расшифровании криптосхема имеет тот же вид, что и при зашифровании.
В КЗУ вводятся 256 бит того же ключа, с помощью которого производилось зашифрование данных. Синхропосылка S вводится в N1, N2.
Исходное заполнение N1, N2 (синхропосылка) зашифровывается в режиме простой замены. Полученное в результате заполнение N1, N2 образует первый блок гаммы шифра, который суммируется с по модулю 2 в сумматоре СМ5 с блоком зашифрованных данных. В результате получается первый блок открытых данных.
Блок зашифрованных данных является исходным заполнением N1, N2 для выработки второго блока гаммы шифра. Полученное заполнение N1, N2 зашифровывается в режиме простой замены. Полученный в результате блок суммируется поразрядно по модулю 2 в сумматоре СМ5 со вторым блоком зашифрованных данных. В результате получается второй блок открытых данных.
Аналогичным образом производится расшифрование последующих блоков зашифрованных данных.