Режим гаммирования с обратной связью.
Зашифрование открытых данных в режиме гаммирования с обратной связью. Криптосхема, реализующая алгоритм зашифрования в режиме гаммирования с обратной связью, имеет вид, показанный на рис. 26.
Открытые данные, разбитые на 64-разрядные блоки Т0(1), Т0(2),..., Т0(m), зашифровываются в режиме гаммирования с обратной связью путем поразрядного сложения по модулю 2 с гаммой шифра Гш, которая вырабатывается блоками по 64 бита: Гш = (Гш(1), Гш(2),..., Гш(m)).
Число двоичных разрядов в блоке Т0(m) может быть меньше 64, при этом неиспользованная для шифрования часть гаммы шифра из блока Гш(m) отбрасывается. Уравнения зашифрования в режиме гаммирования с обратной связью имеют вид:
Тш(1) = А () Å Т0(1) = Гш(1) Å Т0(1),
Тш(i) = A (Тш(i–1)) Å Т0(i) = Гш(i) Å Т0(i), i {2,…,m}.
Рис. 26. Схема реализации режима гаммирования с обратной связью
Здесь Тш(i) – i-й 64-разрядный блок зашифрованного текста; А(·) – функция зашифрования в режиме простой замены; m – определяется объемом открытых данных. Аргументом функции А (·) на первом шаге итеративного алгоритма является 64-разрядная синхропосылка , а на всех последующих шагах – предыдущий блок зашифрованных данных Тш(i–1). Процедура зашифрования данных в режиме гаммирования с обратной связью реализуется следующим образом. В КЗУ вводятся 256 бит ключа. В накопители N1 и N2 вводится синхро-посылка = (S1, S2,..., S64) из 64 бит. Исходное заполнение накопителей N1 и N2 зашифровывается в режиме простой замены. Полученное в результате зашифрования заполнение накопителей N1 и N2 образует первый 64-разрядный блок гаммы шифра Гш(1)=A(), который суммируется поразрядно по модулю 2 в сумматоре СМ5 с первым 64-разрядным блоком открытых данных
Т0(1) = (t1(1), t2(1),..., t64(1)). В результате получают первый 64-разрядный блок зашифрованных данных ТШ(1) = ГШ(1) Å Т0(1), где ТШ(1) = (t1(1), t2(1),..., t64(1)). Блок зашифрованных данных ТШ(1) одновременно является также исходным состоянием накопителей N1, N2 для выработки второго блока гаммы шифра ГШ(2), и поэтому по обратной связи ТШ(1) записывается в указанные накопители N1 и N2.
Заполнение накопителя N1 (t32(1), t31(1),..., t2(1), t1(1)). 32, 31,..., 2, 1 номер разряда N1 Заполнение накопителя N2 (t64(1), t63(1),..., t34(1), t33(1)). 32, 31,..., 2, 1 номер разряда N2 Заполнение накопителей N1 и N2 зашифровывается в режиме простой замены. ГШ(2) Å Т0(2) = ТШ(2). Выработка последующих блоков гаммы шифра ГШ(i) и зашифрование соответствующих блоков открытых данных Т0(i) (i {3…m}) производится аналогично. Если длина последнего m-го блока открытых данных Т0(m) меньше 64 разрядов, то из ГШ(m) используется только соответствующее число разрядов гаммы шифра, остальные разряды отбрасываются. В канал связи или память ЭВМ передаются синхропосылка и блоки зашифрованных данных ТШ(1), ТШ(2),..., ТШ(m). Расшифрование в режиме гаммирования с обратной связью. При расшифровании криптосхема имеет тот же вид, что и при зашифровании. Уравнения расшифрования: Т0(1) = А() Å Тш(1) = Гш(1) Å Тш(1), Т0(i) = Гш(i) Å Тш(i) = A (Тш(i–1) ) Å Тш(i), i {2…m}. Реализация процедуры расшифрования зашифрованных данных в режиме гаммирования с обратной связью происходит следующим образом. В КЗУ вводят 256 бит того же ключа, на котором осуществлялось зашифрование открытых блоков Т0(1), Т0(2),..., Т0(m). В накопители N1 и N2 вводится синхропосылка . Исходное заполнение накопителей N1 и N2 (синхропосылка ) зашифровывается в режиме простой замены. Полученное в результате зашифрования заполнение N1 и N2 образует первый блок гаммы шифра
ГШ(1) = А(), который суммируется поразрядно по модулю 2 в сумматоре СМ5 с блоком зашифрованных данных ТШ(1). В результате получается первый блок открытых данных Т0(1) = Гш(1) Å Тш(1). Блок зашифрованных данных Тш(1) является исходным заполнением накопителей N1 и N2 для выработки второго блока гаммы шифра ГШ(2): ГШ(2) = А(ТШ(1)). Полученное заполнение накопителей N1 и N2 зашифровывается в режиме простой замены. Образованный в результате зашифрования блок ГШ(2) суммируется поразрядно по модулю 2 в сумматоре СМ5 со вторым блоком зашифрованных данных ТШ(2). В результате получают второй блок открытых данных. Аналогично в N1, N2 последовательно записывают блоки зашифрованных данных ТШ(2), ТШ(3),..., ТШ(m), из которых в режиме простой замены вырабатываются блоки гаммы шифра ГШ(3), ГШ(4),..., ГШ(m). Блоки гаммы шифра суммируются поразрядно по модулю 2 в сумматоре СМ5 В результате получают блоки открытых данных Т0(3), Т0(4),..., Т0(m), при этом последний блок открытых данных Т0(m) может содержать меньше 64 разрядов.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|