Совершенствование инфокоммуникационного сопровождения банковской деятельности

Основное отличие алгоритмов симметричного шифрования друг от друга состоит именно в различных функциях обработки субблоков. Данная функция часто называется «основным криптографическим преобразованием», поскольку именно она несет основную нагрузку при шифровании информации. Основное преобразование алгоритма ГОСТ 28147-89 является достаточно простым, что обеспечивает высокое быстродействие алгори

тма; в нем выполняются следующие операции (рис. 3.2).

Рис. 3.2 - Основное преобразование алгоритма ГОСТ 28147-89

Охарактеризуем данную схему преобразований алгоритма стандарта.

1. Сложение субблока с определенным фрагменом ключашифрования по модулю 232. Кх — это 32-битная часть («подключ») 256-битного ключа шифрования, который можно представить как конкатенацию 8 подключей: К = К0, К1, К2, К3, К4, К5, К6, К7. В зависимости от номера раунда и режима работы алгоритма, для данной операции выбирается один из подключей.

2. Табличная замена. Для ее выполнения субблок разбивается на восемь 4-битных фрагментов, каждый из которых прогоняется через свою таблицу замены. Таблица замены содержит в определенной последовательности значения от 0 до 15 (т.е. все варианты значений 4-битного фрагмента данных); на вход таблицы подается блок данных, числовое представление которого определяет номер выходного значения. Например, подается значение 5 на вход следующей таблицы: «13 0 11 74 91 10 143 5 122 15 8 6». В результате на выходе получается значение 9 (поскольку 0 заменяется на 13, 1 — на 0, 2 — на 11 и т.д.).

3. Побитовый циклический сдвиг данных внутри субблока на 11 бит влево.

Алгоритм ГОСТ 28147-89 имеет 4 режима работы:

1. режим простой замены;

2. режим гаммирования;

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

4. режим выработки имитоприставок.

Все режимы используют одно и то же основное преобразование, но с разным числом раундов и различным образом.

Режим простой замены предназначен для шифрования ключей (существует множество схем применения алгоритмов симметричного шифрования, использующих несколько ключей различного назначения; в этих случаях требуется шифрование одних ключей на другие). В данном режиме выполняется 32 раунда основного преобразования. В каждом из раундов, как было сказано выше, используется определенный подключ, который выбирается следующим образом:

· К ((г — 1) % 8) - для раундов с 1 -го по 24-й (r обозначает номер раунда, а % - операция вычисления остатка от деления), т.е. К0, К1, К2, К3, К4, К5, К6, К7, К0, К1, К2 и т. д.;

· К ( (32 – r) % 8) - для раундов с 25-го по 32-й, т.е. в обратном порядке: К7, К6, К5, К4, К3, К2, К1, К0.

Для расшифровывания информации в режиме простой замены также выполняется 32 раунда основного преобразования, но с использованием подключей по другой схеме:

· в прямом порядке в раундах с 1-го по 8-й;

· в обратном порядке в последующих раундах.

Для собственно шифрования информации используются режимы гаммирования и гаммирования с обратной связью. В данных режимах шифрование информации производится побитовым сложением по модулю 2 каждого 64-битного блока шифруемой информации с блоком гаммы шифра. Гамма шифра — это псевдослучайная последовательность, вырабатываемая с использованием основного преобразования алгоритма ГОСТ 28147-89 следующим образом (рис. 3.3).

3 сложение с констанциями 4

Запись синхро посылки

N1

N2

1 5

блок гаммы шифрования

2

2

Зашифрование в режиме простой замены

Рис. 3.3 - Режим гаммирования

В режиме гаммирования происходят следующие действия:

1. в регистры N1 и N2 записывается их начальное заполнение - 64-битная величина, называемая «синхропосылкой»;

2. выполняется зашифровывание содержимого регистров N1 и N2 (в данном случае - синхропосылки) в режиме простой замены;

3. содержимое N1 складывается по модулю (232 - 1) с константой С1 = 224 + 216 + 28 + 24, результат сложения записывается в регистр N1;

4. содержимое N2 складывается по модулю 232 с константой С2 = 224 + 216 + 28 + 1, результат сложения записывается в регистр N2;

5. содержимое регистров N1 и N2 подается на выход в качестве 64-битного блока гаммы шифра (т.е. в данном случае N1 и N2 образуют первый блок гаммы);

6. если необходим следующий блок гаммы (т.е. необходимо продолжить зашифровывание или расшифровывание), выполняется возврат к шагу 2.

Для последующего расшифровывания аналогичным образом вырабатывается гамма шифра и складывается с зашифрованной информацией. В результате получается исходная информация, поскольку известно, что:

А ? В ? В = А (3.5)

где А и В - любые последовательности одинаковой размерности

? - операция побитного сложения по модулю 2.

Ясно, что для расшифровывания информации необходимо иметь тот же ключ шифрования и то же самое значение синхропосылки, что и при зашифровывании. Существуют реализации алгоритма ГОСТ 28147-89, в которых синхропосылка также является секретным элементом, наряду с ключом шифрования. Фактически в этом случае можно считать, что ключ шифрования увеличивается на длину синхропосылки (64 бита), что усиливает стойкость алгоритма.

Страница:  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15 
 16  17  18  19  20  21  22  23  24  25  26  27  28  29  30 
 31  32  33  34  35  36  37  38 


Другие рефераты на тему «Банковское, биржевое дело и страхование»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы