Сфера защиты информации и криптография, как одно из ее главных направлений, приобретает все большее и большее значение в современном обществе. Ныне действующий в России стандарт шифрования, ГОСТ 28147-89 «Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования», был принят в 1989 году [1]. Однако ряд фактов свидетельствуют о том, что разработан он был как минимум на десять лет раньше. По своей архитектуре ГОСТ 28147-89 достаточно близок к прежнему стандарту шифрования США - DES (Data Encryption Standard), который был разработан примерно в то же самое время и действовал в период с 1977 по 2001 год.
ГОСТ 28147-89 предусматривает три следующих режима шифрования данных:
простая замена;
гаммирование;
гаммирование с обратной связью
и один дополнительный режим выработки имитовставки [2].
В настоящее время технический комитет по стандартизации «Криптографическая защита информации» рассмотрел и внес окончательную редакцию совершенно новых стандартов. Это: «Информационная технология. Криптографическая защита информации. Блочные шифры» и «Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров». Они будут утверждены вместо разделов 1 и 2,3,4,5 ГОСТ 28147-89 соответственно.
Первый стандарт содержит описание алгоритмов блочных шифров, которые применяются в криптографических методах защиты информации.
Второй, он же основной, стандарт содержит описание режимов работы блочных шифров. Данные режимы работы блочных шифров определяют правила криптографического преобразования данных и выработки имитовставки для сообщений произвольного размера. Блочный шифр (block cipher) - шифр из класса симметричных криптографических методов, в котором алгоритм зашифрования применяется к блокам открытого текста для получения блоков шифртекста. Стандарт оперирует следующими понятиями:
k - параметр алгоритма блочного шифрования, называемый длиной ключа;
n - параметр алгоритма блочного шифрования, называемый длиной блока;
V* - множество всех двоичных векторов-строк конечной размерности, включая пустую строку;
P - исходное сообщение, подлежащее зашифрованию;
C – сообщение, подлежащее расшифрованию.
Настоящий стандарт определяет следующие режимы работы алгоритмов блочного шифрования:
- режим простой замены (Electronic Codebook, ЕСВ);
- режим гаммирования (Counter, CTR);
- режим гаммирования с обратной связью по выходу (Output Feedback, OFB);
- режим простой замены с зацеплением (Cipher Block Chaining, СВС);
- режим гаммирования с обратной связью по шифртексту (Cipher Feedback, CFB);
- режим выработки имитовставки (Message Authentication Code algorithm).
Как несложно заметить режимов стало больше. Это основное отличие от ГОСТ 28147-89. Рассмотрим новые добавленные режимы.
Режим простой замены с зацеплением
В режиме простой замены с зацеплением очередной блок шифртекста получается путем зашифрования поразрядной суммы значений очередного блока открытого текста со значением старших n бит регистра обратной связи. Затем регистр сдвигается на один блок в сторону старших разрядов. В младшие разряды записывается значение блока шифртекста. Открытый и, при необходимости, дополненный текст P ∈ V*, |P| = n∙q, представляется в виде: P = P1||P2||...||Pq, Pi ∈ Vn, i = 1, 2, …, q. Блоки шифртекста вычисляются по следующему правилу:
R1= IV,
i = 1, 2,…, q-1
Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq
Зашифрование в режиме простой замены с зацеплением проиллюстрировано на рис. 1.
Рис. 1. Зашифрование в режиме простой замены с зацеплением
В процессе расшифрования шифртекст представляется в виде: C = C1||C2||...||Cq, Ci∈ Vn, i = 1, 2, …, q. Блоки открытого текста вычисляются по следующему правилу:
i = 1, 2,…, q
Исходный (дополненный) открытый текст имеет вид:
P = P1||P2||…||Pq.
Расшифрование в режиме простой замены с зацеплением проиллюстрировано на рис. 2.
Рис. 2. Расшифрование в режиме простой замены с зацеплением
Режим гаммирования с обратной связью по выходу
При шифровании в режиме гаммирования с обратной связью по выходу используется двоичный регистр сдвига с обратной связью R длины m. Зашифрование в режиме гаммирования с обратной связью по выходу заключается в поразрядном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s. При вычислении очередного блока гаммы выполняется зашифрование n старших бит регистра сдвига базовым алгоритмом блочного шифрования. Затем заполнение регистра сдвигается на n бит в сторону разрядов с большими номерами, при этом в разряды с меньшими номерами записывается полученный выход базового алгоритма блочного шифрования. Блок гаммы вычисляется путем усечения выхода базового алгоритма блочного шифрования.
Открытый текст P ∈ V* представляется в виде P = P1||P2||...||Pq, Pi ∈ Vs, i = 1, 2, …, q-1, Pq ∈ Vr, r ≤ s. Блоки шифртекста вычисляются по следующему правилу:
R1= IV,
i = 1, 2,…, q-1
,
Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме гаммирования с обратной связью по выходу проиллюстрировано на рис. 3.
Рис. 3. Зашифрование в режиме гаммирования с обратной связью по выходу
В процессе расшифрования шифртекст представляется в виде: C = C1||C2||...||Cq, Ci ∈ Vs, i = 1, 2, …, q-1, Cq ∈ Vr, r ≤ s.
Блоки открытого текста вычисляются по следующему правилу:
R1= IV,
i = 1, 2,…, q-1
,
Исходный открытый текст имеет вид
P = P1||P2||...||Pq.
Расшифрование в режиме гаммирования с обратной связью по выходу проиллюстрировано на рис. 4.
Рис. 4. Расшифрование в режиме гаммирования с обратной связью по выходу
Последним не маловажным дополнением является наличие справочного приложения, содержащего контрольные примеры. В данном приложении содержатся примеры для зашифрования и расшифрования сообщений, а также выработки имитовставки, с использованием режимов работы шифра, определенных в данном стандарте.
Отечественный стандарт шифрования ГОСТ 28147-89 действует в неизменном виде с 1989 года, но тем не менее по своим качествам, то есть по показателям криптостойкости и эффективности возможной реализации, находится на вполне современном уровне. Заменяемый его стандарт должен еще больше улучшить структуру безопасности. Таким образом, роль стандартов в области криптозащиты - это не столько обеспечение совместимости решений от разных производителей, сколько определенная гарантия качества решений, заверенных государством.
Библиографический список
ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.
Винокуров А. Алгоритм шифрования ГОСТ 28147-89, его использование и реализация для компьютеров платформы Intel x86.