Режим гаммирования с обратной связью.

Зашифрование открытых данных в режиме гаммиро­вания с обратной связью.Криптосхема, реализующая алгоритм зашифрования в режиме гаммирования с обратной связью, имеет вид, показанный на рис. 25.

 

 

 


Рис. 25. Схема реализации режима гаммирования

С обратной связью

 

Открытые данные, разбитые на 64-разрядные блоки T0(1),
То(2)....... Т0(m), зашифровываются в режиме гаммирования с обратной связью путем поразрядного сложения по модулю 2 с гаммой шифра Гш, которая вырабатывается блоками по 64 бита:

Гш = (Гш(1), Гш(2), …, Гш(m)).

Число двоичных разрядов в блоке Т0(m) может быть меньше 64, при этом неиспользованная для шифрования часть гаммы шифра из блока Гш(m) отбрасывается.

Уравнения зашифрования в режиме гаммирования с об­ратной связью имеют вид:

 

Тш(1) = А(S) + Т0(1) = Гш(1) + Т0(1),

Тш(i) = А (Тш(i-1)) + Т0(i) = Гш(i) + Т0(i), i = 2....m.

 

Здесь Тш(i) - i-й 64-разрядный блок зашифрованного текста; А(-) -функция зашифрования в режиме простой замены; m - определя­ется объемом открытых данных.

Аргументом функции А (•) на первом шаге итеративного алгоритма является 64-разрядная синхропосылка S, а на всех последующих шагах - предыдущий блок зашифрованных дан­ных Тш(i-1).

Процедура зашифрования данных в режиме гаммирования с обратной связью реализуется следующим образом.

1. В КЗУ вво­дят 256 бит ключа.

2. В накопители N1 и N2 записывают синхро­посылку S = (Si, S2, ..., S64) из 64 бит.

3. Исходное заполнение нако­пителей N1 и N2 зашифровывают в режиме простой замены. По­лученное в результате зашифрования заполнение накопителей N1 и N2 образует первый 64-разрядный блок гаммы шифра Гш(1)=A(S).

4. Блок гаммы суммируют поразрядно по модулю 2 в сумматоре СМ5 с первым 64-разрядным блоком открытых данных

T0(1) = (t1(1), t2(1), …, t64(1)).

В результате получают первый 64-разрядный блок зашифрован­ных данных

Тш(1) = Гш(1) + Т0(1),

где Тш(1) = (r1(1), r2(1),…, r64(1)).

5. Блок зашифрованных данных Тш(1) одновременно является также исходным состоянием накопителей N1, N2 для выработки второго блока гаммы шифра Гш(2), и поэтому по обратной связи Тш(1) записывается в указанные накопители N1 и N2.

Заполнение накопителя N1

(r32(1), r31(1),…, r2(1), r1(1))

32, 31,… 2, 1 номер разряда N1.

Заполнение накопителя N2

(r64(1), r63(1),…, r34(1),r33(1)).

32, 31, ..., 2, 1 номер разряда N2 .

6. Содержимое накопителей N1 и N2 зашифровывают в ре­жиме простой замены. Полученное в результате зашифрования заполнение накопителей N1 и N2 образует второй 64-разрядный блок гаммы шифра Гш(2), который суммируется поразрядно по мо­дулю 2 в сумматоре СМ5 со вторым блоком открытых данных Т0(2):

Гш(2) + Т0(2) = Тш(2).

7. Выработка последующих блоков гаммы шифра Гш(i) и зашифрова­ние соответствующих блоков открытых данных T0(i) (i=3..,m) про­изводится аналогично.

Если длина последнего m-го блока открытых данных Т0(m) меньше 64 разрядов, то из Гш(m) используется только соответст­вующее число разрядов гаммы шифра, остальные разряды отбра­сываются.

В канал связи или память ЭВМ передаются синхропосылка S и блоки зашифрованных данных Тш(1), Тш(2),…, Тш(m).

Расшифрование в режиме гаммирования с обратной связью.При расшифровании криптосхема имеет тот же вид, что и при зашифровании (см. рис. 17).

Уравнения расшифрования:

То(1) = А(S) + Тш(1) = Гш(1) + Тш(1),

T0(i) = Гш(i) + Тш(i) = А (ТШ(i-1)) + Тш(i), i = 2...m.

Реализация процедуры расшифрования зашифрованных данных в режиме гаммирования с обратной связью происходит следующим образом.

1. В КЗУ вводят 256 бит того же ключа, на ко­тором осуществлялось зашифрование открытых блоков Т0(1), Т0(2), ..., Т0(m).

2. В накопители N1 и N2 вводят синхропосылку S.

3. Исход­ное заполнение накопителей N1 и N2 (синхропосылка S) зашифро­вывают в режиме простой замены. Полученное в результате за­шифрования заполнение N1 и N2 образует первый блок гаммы шифра

ГШ(1) = А(S),

который суммируется поразрядно по модулю 2 в сумматоре СМ5 с блоком зашифрованных данных Тш(1).

В результате получается первый блок открытых данных

То(1) = Гш(1) + Тш(1).

4. Блок зашифрованных данных Тш(1) является исходным за­полнением накопителей N1 и N2 для выработки второго блока гам­мы шифра Гш(2): Гш(2) = А(ТШ(1)). Полученное заполнение накопите­лей N1 и N2 зашифровывается в режиме простой замены. Образо­ванный в результате зашифрования блок Гш(2) суммируется поразрядно по модулю 2 в сумматоре СМ5 со вторым блоком за­шифрованных данных Тш(2). В результате получают второй блок открытых данных.

5. Аналогично в N1, N2 последовательно записы­вают блоки зашифрованных данных Тш(2), Тш(3), .... Тш(m), из кото­рых в режиме простой замены вырабатываются блоки гаммы шифра Гш(3), Гш(4), .... Гш(m).

Блоки гаммы шифра суммируются поразрядно по модулю 2 в сумматоре СМ5 с блоками зашифрованных данных ТШ(3)Ш(4), …, Тш(m).








Дата добавления: 2017-08-01; просмотров: 584;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.