Описывает четыре режима работы для алгоритма n-разрядного блочного шифрования.
1 Область применения
2 Определения
3 Обозначения
4 Режим электронного кодового справочника -ЕСВ (ELECTRONIC CODEBOOK)
5 Режим последовательного блочного шифрования - СВС (CIPHER BLOCK CHAINING)
6 Режим шифрования с обратной связью - CFB (CIPHER FEEDBACK)
7 Режим с обратной связью по выходу - OFB (OUTPUT FEEDBACK)
Приложение А (информационное) Свойства режимов работы
Приложение В (информационное) Информация о патентах
Приложение С (информационное) Примеры для режимов работы
23 страницы
Дата введения | 01.07.1994 |
---|---|
Добавлен в базу | 01.09.2013 |
Завершение срока действия | 01.01.2016 |
Актуализация | 01.01.2021 |
28.12.1993 | Утвержден | Госстандарт России | 272 |
---|---|---|---|
Разработан | ТК 22 Информационные технологии | ||
Издан | Издательство стандартов | 1994 г. |
Чтобы бесплатно скачать этот документ в формате PDF, поддержите наш сайт и нажмите кнопку:
ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ
БЗ 3—93/250
Издание официальное
ГОССТАНДАРТ РОССИИ Москва
ПРЕДИСЛОВИЕ
1 РАЗРАБОТАН И ВНЕСЕН Техническим комитетом ТК 22 «Информационная технология»
2 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 28.12.93 № 272
Настоящий стандарт подготовлен на основе применения аутентичного текста международного стандарта ИСО/МЭК 10116—91 «Информационная технология. Режимы работы для алгоритма разрядного блочного шифрования»
3 ВВЕДЕН ВПЕРВЫЕ
© Издательство стандартов, 1994
Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения
Госстандарта России
И
ГОСТ Р ИСО/МЭК 10116—93
7.3. Переменные, используемые для дешифрования, являются такими же, как и используемые для шифрования. Входной блок X представляет собой ряд его начальных значений Xi = SV.
Операция дешифрования каждой переменной шифротекста
включает в себя четыре этапа:
a) использование алгоритма шифрования
Yt-eKiXt); (23)
b) выбор самых левых / разрядов
Et = Y^j- (24)
c) формирование переменной открытого текста
Pi = Ci&Ei; (25)
d) операцию обратной связи
Xi+I-yf. (26)
Эти этапы повторяются для i= 1, 2,.. ., q, заканчиваясь урав
нением (26) на последнем цикле. Процедура представлена в правой части рисунка 3. Значения Xt и Yit используемые как для дешифрования, так и для шифрования, одинаковы; отличается только уравнение (25).
9
ПРИЛОЖЕНИЕ А (информационное )
А ,Ы Условия применения
Передаваемые блоки информации — это такой перенос информации между ЭВМ и людьми, который может иметь повторения или обычно используемые последовательности В режиме ЕСВ идентичный открытый текст синтезирует (при том же ключе) идентичные блоки шифротекста
А 1 2 Характеристики режима ЕСВ:
a) шифрование и дешифрование блоков могут осуществляться независимо
от других блоков,
b) переупорядочение блоков шифротекста приведет к соответствующему переупорядочению блоков открытого текста;
c) тождественный блок открытого текста всегда породит тождественный блок шифротекста (при одном и том же ключе), делая его уязвимым к «словарной атаке»
Режим ЕСВ обычно не рекомендуется для сообщений длиннее чем один блок Применение режима ЕСВ может в дальнейшем быть установлено в международных стандартах для таких специальных целей, когда повторение характеристик допустимо или блоки дост\пны индивидуально
А13 Требования к набивке
Только блоки по п разрядов могут быть зашифрованы и дешифрованы Блоки другой тлины должны быть дополнены до ^-разрядного предела
А14 Распространение ошибки
В режиме ЕСВ один или более ошибочных битов внутри отдельного блока шифротекста будут воздействовать только на дешифрование блока, в котором ошибка (ки) произошла (ли). При предположении, что шифр обладает свойством, при котором замена одного бита открытого текста вызывает в среднем 50 %-е изменение шифротекста, каждый бит восстановленной версии открытого текста этого блока будет иметь (реднюю ошибку порядка 50%
А 1 5 Если границы блока утрачиваются между шифрованием и дешифрованием (например, обусловлены ошибкой бита), синхронизация между операциями шифрования и дешифрования будет утеряна до тех пор, пока не будут восстановлены правильные границы блока Результат всех операций дешифрования будет неверным пока границы блока утрачены
А 2 Свойства режима работы последовательного блочного шифрования (СВС)
А21 Условия применения
Режим СВС порождает тождественный шифротекст всякий раз, когда шифруется тождественный открытый текст с использованием тождественных ключа и запускающей переменной Пользователям, которых интересует эта характеристика, необходимо знать, как следует заменять запуск открытого текста, ключа или запускающей переменной Во-первых, это введение уникального идентификатора (например, счетчика прироста) в начало каждого передаваемого в режиме СВС блока информации. Во-вторых, для случая, когда шифруют записи, размеры которых не должны увеличиваться, — использование некоторой переменной, например запускающей переменной, которая может быть вычислена из записи без
знания ее компонентов (например, ее адреса в запоминающем устройстве с произвольной выборкой).
А 2.2 Свойства
Свойства режима СВС;
a) последующая операция делает блоки шифрогекста зависимыми от текущего и всех предыдущих блоков открытого текста, и поэтому блоки не могут быть переставлены,
b) использование различных значений SV исключает шифрование тождественного открытою текста в тождественный шифротекст.
А23 Требование к набивке
Только блоки по п разрядов могут быть зашифрованы и дешифрованы. Блоки другой длины должны быть дополнены до w-разрядного предела. Если это не допустимо, последняя переменная может обрабатываться специальным путем Два примера специальной обработки приведены ниже.
Первой возможностью обработать неполную последнюю переменную (т. е переменную Pq при j<.n разрядов, где q должно быть больше 1) является шифрование в режиме OFB, как описано ниже:
a) шифрование
Cq^Pq@(eK(Cq-l)^j); (27)
b) дешифрование
Pt = Ct<&(eK(Cq-t)~j). (28)
Тем не менее эта последняя переменная уязвима к «выбранной атаке открытого текста», если SE не является секретной или если она используется более одного раза с тождественным ключом (см А 4)
Вторая возможность известна как «шифротекст—упрятывание». Допустим, что последние две переменные открытого текста представляют собой Pq-\ и Pq, где Pq-1 есть n-разрядный блок, Рд является переменной из /<гс разрядов я q должно быть больше 1
a) Шифрование
Пусть Cq-1 является блоком шифротекста, получаемым из Pq-\ с использованием метода, описанного в 52 В таком случае
C, = etf(S,(Cff-,|P,) (29)
Последние две переменные шифротекста в таком случае представляют собой Cq-1 ~} и Cq
b) Дешифрование
Сд должна быть дешифрована первой, в результате чего она дает переменною Ря и самые правые п—j разрядов Cg_j
S,(Cq-,\Pq) = dK(Cq) (ЗС)
Законченный блок Cq-\ теперь доступен, и Pq~\ может быть получен с использованием метода, описанного в 53
Две замыкающие переменные шифротекста дешифруются в обратном порядке, что делает это решение менее пригодным для аппаратной реализации.
А2.4 Распространение ошибки
В режиме СВС один и более ошибочных разрядов внутри отдельного блока шифротекста будут влиять на дешифрование двух блоков (блока, в котором ошибка совершена, и последующего блока) Если ошибки есть в i-ом блоке шифротекста, каждый разряд ьго дешифрованного блока открытого г текста будет иметь в среднем порядка 50 % ошибок при предположении, что шифр обладает таким свойством, при котором изменение одного разряда открытого текста приводит в среднем к 50 %-иаму изменению в шифротексте Дешифрованный (t-f-1) блок открытого текста будет иметь только те разряды в ошибке, которые прямо зависят от разрядов шифротекста в ошибке. Если ошибки содержит переменная из менее чем п разрядов, распространение ошибки зависит от выбранного
метода специальной обработки В первом примере дешифрованный короткий блок будет иметь те разряды в ошябке, которые прямо связаны с разрядами шифротекста в ошибке Если ошибки есть в блоке, предшествующем блоку из менее чем п разрядов, дешифрованный короткий блок будет иметь среднее значение разрядов ошибки порядка 50 % В шифротексте, имеющем случайные ошибки, короткий блок или последний блок шифротекста приводит к ошибочным разрядам порядка 50 %
А25 Границы блока
Если границы блока утрачиваются между шифрованием и дешифрованием (например, обусловлены ошибкой разряда), синхронизация между операциями шифрования и дешифрования будет утеряна До тех пор, пока не будут восстановлены правильные границы блока Результат всех операций дешифрования будет неверным, пока границы блока утрачены
А.З Свойства режима работы шифрования с обратной связью (CFB)
А 3,1 Условия применения
Режим СРВ порождает тождественный шифротекст всякий раз, когда шифруется тождественный открытый текст с использованием тождественных ключа и запускающей переменной Пользователям, которых интересует эта характеристика, необходимо знать, как заменить запуск открытого текста, ключ или запускающую переменную Во первых, это введение уникального идентификатора (например, счетчика прироста) в начало каждого передаваемого в .режиме CFB блока информации Во-вторых, в случае, когда шифруют записи, размеры которых не должны увеличиваться, — использование некоторой переменной, например запускающей переменной, которая может быть вычислена из записи без знания ее компонентов (например, ее адреса в запоминающем устройстве с произволь ной выборкой)
АЗ2 Свойства
Свойства режима CFB
a) последующая операция делает переменные шифротекста зависимыми от текущей и всех предыдущих переменных открытого текста, и поэтому /-разряд-ные переменные связаны вместе и не могут быть переставлены,
b) использование различных значений SV делает невозможным шифрование тождественного открытого текста в тождественный шифротекст;
c) оба процесса шифрования и дешифрования в режиме CFB используют формулу шифрования алгоритма;
d) мощность режима CFB зависит от размера k (максимальна, если /=Л);
е) выбор малого значения / будет требовать больше циклов на единицу открытого текста из-за алгоритма шифрования и, таким образо'м, вызовет большие непроизводительные издержки процесса
А 3 3 Требования к набивке
Только блоки по / разрядов могут быть зашифрованы и дешифрованы Бдо ки другой длины должны быть дополнены до /-разрядного предела Тем не ме нее в большинстве применений / следует выбирать равным размеру символа и набивка не потребуется
А. 3 4 Распространение ошибки
В режиме CFB ошибки в любом /-разрядном элементе шифротекста будут влиять на дешифрование следующего шифротекста до тех пор, пока биты в ошибке будут сдвигаться без сохранения выдвигаемых разрядов входного блока режима CFB Первый подверженный влиянию /-разрядный элемент открытого текста будет искажен именно в тех местах, где в шифротексте имеется ошибка При предположении, что шифр обладает свойством, при котором изменение одного бита открытого текста вызывает в среднем 50% -е изменение в шифро-тексте, в последующем дешифрованном открытом тексте каждый разряд будет
иметь среднюю ошибку порядка 50 % до тех пор, пока все ошибки будут сдвигаться без сохранения выдвигаемых разрядов входного блока
А3>5 Границы блока
Если /-разрядные границы утеряны между шифрованием и дешифрованием (например, обусловлены ошибкой разряда), криптографическая синхронизация будет восстановлена до п разрядов после того, как восстановятся /-разрядные границы. Если блок из / разрядов утерян, синхронизация будет восстановлена автоматически после обработки п разрядов.
А.4 Свойства режима работы с обратной связью по выходу (OFB)
А.4Л Условия применения
Режим OFB порождает тождественный шифротекст всякий раз, когда шифруется тождественный открытый текст с использованием тождественных ключа и запускающей переменной. Кроме того, в режиме OFB порождается тождественный поток ключей, когда используются тождественные ключ и SV. Следовательно, из соображений секретности специальная SV должна быть использована только один раз для заданного ключа.
А.4 2 Свойства
Свойства режима OFB:
a) отсутствие связанности делает режим OFB более уязвимым к специальным атакам;
b) использование различных значений SV, порождая различные потоки ключей, препятствует шифрованию тождественного открытого текста в тождественный шифротекст,
c) обе процедуры шифрования и дешифрования в режиме OFB используют формулу шифрования алгоритма;
d) режим OFB не зависит от открытого текста при генерации потока ключей, используемых для сложения по модулю 2 к открытому тексту;
e) выбор малого значения / будет требовать больше циклов на единицу открытого текста из-за алгоритма шифрования и, таким образом, вызовет большие непроизводительные издержки процесса.
А.4.3 Требования к набивке
Только блоки по / разрядов могут быть зашифрованы и дешифрованы Блоки другой длины должны быть дополнены до /-разрядного предела. Тем не менее, в большинстве применений / следует выбирать равным размеру символа и набивка не потребуется
А44 Распространение ошибки
Режим OFB не расширяет ошибки шифротекста на выходе результирующего открытого текста Каждый бит в ошибке шифротекста вызывает только один бит, который будет ошибочным в дешифрованном открытом тексте
А.4 5 Границы блока
Режим OFB не является самосинхронизцрующимся Если две операции шифрования и дешифрования выходят из синхронизации, система нуждается в -приведении в исходное состояние (реинициализации). Такая потеря синхронизации может быть (если />1) из-за потери правильных границ блоков по / разрядов (например, обусловлена ошибкой разряда)
Каждое восстановление исходного состояния должно использовать значение SVy отличное от значений SV, использованных до этого с тождественным ключом Основанием для этого является то, что для тождественных параметров всякий раз должен порождаться идентичный поток разрядов Указанные условия делают режим OFB уязвимым к «известной атаке открытого текста»
13
ПРИЛОЖЕНИЕ В (информационное )
ИНФОРМАЦИЯ О ПАТЕНТАХ
В процессе подготовки международного стандарта ИСО/МЭК 10116 была собрана информация о патентах, от которых может зависеть применение данного стандарта Было выявлено, что такие патенты принадлежат корпорациям IBM и UNISYS
Однако Международная организация по стандартизации — ISO (International Organization for Standardisation) не может дать авторитетной или исчерпывающей информации об очевидности, обоснованности или области распространения патентов или подобных прав
Владельцы патентов приняли положение, по которому в оговоренные периоды лицензии будут допускать предоставление права применения данного международною стандарта при условии, что те, кто желает получить лицензии, согласны отвечать взаимностью
Дополнительная информация имеется в распоряжении фирм:
Director of Commercial Relations
International Business Machines Corporation (IBM)
2000 Purchase Street PURCHASE, N. Y. 10577
Director, Industry Relations
UNISYS
PO Box 500
Blue Bell, PA 19424
U. S. A.
14
ПРИЛОЖЕНИЕ С ( информационное)
С.1 Общие сведения
В этом приложении приведены примеры для шифрования и дешифрования передаваемых блоков информации с использованием режимов работы, установленных в настоящем стандарте Используемые параметры
a) алгоритм шифрования — алгоритм шифрования данных (DEA — Data Encryption Algoritm) Значение п — 64,
b) криптографический ключ — 01234567890ABCDEF,
c) запускающая переменная — lt234567eOOABCDEF,
d) открытый текст — 7-битный код ASCII (американский стандартный код для обмена информацией) для слов «Now is the time for all» (в шестнадцатеричном представлении 4E6F772i069'73(2074 68652074696D6520 666F722Q616C6C20) Для режима CFB открытый текст — 7-битный код ASCII для слова «Now» (в шестнадцатеричном представлении 4E6F77)
15
ф
Примеры шифрования и дешифрования в режиме ЕСВ даны в таблицах С 1 и С 2 соответственно Таблица С1 — Режим ЕСВ» шифрование | ||||||||||||||||||||
|
Таблица С2 — Режим ЕСВ, дешифрование | ||||||||||||||||||||
|
Примеры шифрования и дешифрования в режиме СВС даны в таблицах С 3 и С 4 соответственно ТаблидаСЗ — Режим СВС, шифрование | ||||||||||||||||||||
|
Таблица С4 — Режим СВС, дешифрование | |||||||||||||||||||||
|
£6—91101 Mew/ОЭИ Ф 1DOJ |
ТОСТ Р ИСО/МЭК 10116—93
Примеры шифрования и дешифрования в режиме CFB даны в таблицахС 5 и С 6 соответственно Для этих примеров выбраны параметры /=£ = 8; k разрядов обратной связи показаны наклонным (курсивным) шрифтом
Таблица С 5 — Режим CFB, шифрование
Открытый текст Рг |
Входной блок алгоритма |
Выходной блок алгоритма |
Шифротекст Сг | |
1 |
4Е |
1234567880ABCDEF |
BD561569AE874E25 |
F3 |
2 |
6Е |
34567820ABCDEFF3 |
70I39546F9AOF6330 |
IF |
3 |
77 |
5678MABCDEFF3/F |
AD1B78BOBB371BE7 |
DA |
Таблица С6 — Режим CFB, дешифрование | ||||||||||||||||||||
|
ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ ■■■■■■■■■инамннмянншшншшннк
Information technology. Modes of operation for an n-bit block cipher algorithm
Настоящий стандарт описывает четыре режима работы для алгоритма «-разрядного блочного шифрования.
Примечание ] — Приложение А содержит пояснения характеристик каждого режима
Настоящий стандарт устанавливает четыре определенных режима так, что при применении алгоритма «-разрядного блочного шифрования. (например, защиты передачи данных, хранения данных, подтверждения подлинности) этот стандарт представляет полезную справку, например для требований к режиму работы и значениям параметров (соответственно).
Для некоторых режимов набивка может требовать гарантий, чтобы все переменные открытого текста были необходимой длины.
Примечание 2 - Для режима работы шифрования с обратной связью — CFB (Cipher Feedback) (ом раздел 6) определяются два параметра: / и к.
Для режима работы с обратной связью по выходу — OFB (Output Feedback) (см раздел 7) задается один параметр j. При использовании одного из этих режимов работы значение(я) параметров должно быть выбрано и применено всеми сторонами лрн передаче сообщений.
Примеры шифрования и дешифрования в режиме ОГВ даны в таблицахС 7 и С в соответственно Для этих примеров выбран параметр / = 6)4 Таблица С7 — Режим OFBt шифрование | ||||||||||||||||||||
|
Таблица С© — Режим OFB, дешифрование | |||||||||||||||||||||
|
ГОСТ Р ИСО/МЭК 10116—93 |
<о
2 ОПРЕДЕЛЕНИЯ
В настоящем стандарте использованы следующие определения.
2.1 Открытый текст — незашифрованная информация
2.2 Шифротекст — зашифрованная информация
2 3 Алгоритм /i-разрядного блочного шифрования — алгоритм блочного шифрования, в котором блоки открытого текста и блоки шифротекста имеют длину п разрядов.
2.4 Связывание блоков — такое шифрование информации, при котором каждый блок шифротекста является криптографически зависимым от предшествующего блока шифротекста.
2.5 Начальное значение — IV (Initializing Value)—значение, используемое в определении начальной точки процесса шифрования.
2.6 Запускающая переменная — SV (Starting Variable) — переменная, полученная от начального значения и используемая в определении запускающей точки режимов работы.
Примечание 3 — Метод получения запускающей переменной от началь> ного значения не определен в настоящем стандарте Он требует описания щш любом использовании режимов работы
2.7 Криптографическая синхронизация — согласование процесса шифрования и дешифрования.
3 ОБОЗНАЧЕНИЯ
В настоящем стандарте функциональное отношение, определяемое алгоритмом блочного шифрования, записывается как
С=еК(Р),
где Р — блок открытого текста;
С — блок шифротекста;
К — ключ.
Выражение еК является операцией шифрования, использующей ключ К.
Соответствующая функция дешифрования записывается как
P=dK(C).
Переменная, обозначенная заглавной буквой, как например вышеуказанными буквами Р и С, представляет собой одномерный массив разрядов.
Например,
А = (аи а2,----ат) и В= (Ьи Ьъ . ., Ьт)
представляют собой массивы т разрядов, пронумерованных от I до т. Все массивы разрядов записываются с наибольшего значащего разряда в левой позиции.
2
ГОСТ Р ИСО/МЭК 10116—93
Операция сложения по модулю 2, известная также как функция «исключающее ИЛИ», представляется символомф . Операция, относящаяся к массивам, например к Л и Б, определяется как
Л (0 Б= (#1® £12® Ь% ..., £Zm® Ьт).
Операция выбора совокупности / .старших слева разрядов массива Л, чтобы генерировать /-разрядный массив, записывается как
A~j= (аи а2, - . ■ , ay).
Эта операция определена только для /<т, где т — число разрядов в массиве Л.
«Функция сдвига» Sk определяется следующим образом.
Для заданных /n-разрядной переменной X и ^-разрядной переменной Е, где действие функции сдвига Sk (A'lF) таково,
что образует /n-разрядную переменную
Sk {X | F) = (Xk+\, Xk+2 ,... хт, fu /2, при k<m.
В результате происходят сдвиг разрядов массива X влево на k позиций с отбрасыванием х\,.. ,txk и размещение массива/7 на самых правых k позициях массива X. Если k = m9 происходит полное замещение массива X на F.
Используется особый случай этой функции, в котором берется /n-разрядная переменная I(т) из последующих «1» битов и сдвигается переменной F из k разрядов, где k<m.
В результате:
Sk(I(m) \F) = (1, 1 ,..1, fu /2, —,/*) при k<m\
Sk(I{m) \F) = (fu при k — m,
где m—k наиболее старших разрядов представляют собой «1».
4 РЕЖИМ ЭЛЕКТРОННОГО КОДОВОГО СПРАВОЧНИКА — ЕСВ
(ELECTRONIC CODEBOOK)
4.1 Переменные, используемые для режима шифрования ЕСВ:
a) последовательность из q блоков открытого текста Р\, . * * >
Pq, каждый по п разрядов;
b) ключ К\
c) получающаяся в результате последовательность q блоков шифротекста С1, С2,..., Сц> каждый по п разрядов.
4.2 Режим ЕСВ при шифровании описывается следующим образом:
Ci = eK(Pi) для i= 1, 2,. .., q. (1)
4.3 Режим ЕСВ при дешифровании описывается следующим образом:
Pt = dK(Ci) для i= 1,2, . . . , q. (2)
3
5 РЕЖИМ ПОСЛЕДОВАТЕЛЬНОГО БЛОЧНОГО ШИФРОВАНИЯ - СВС
(CIPHER BLOCK CHAINING)
5.1 Переменные, используемые для режима СВС при шифровании:
a) последовательность q блоков открытого текста Ри - •., Pq, каждый по п разрядов;
b) ключ К\
c) запускающая переменная SV из п разрядов;
d) последовательность q блоков шифротекста Сь Съ . .., Cq, каждый по п разрядов.
5.2 Режим СВС при шифровании описывается следующим образом:
шифрование первого блока открытого текста
C^eK(Px®SV), (3)
далее
Ci=eK(PiQ Ci-i) для £=2, З,...,?. (4)
Данная процедура показана в верхней части рисунка 1. Запускающая переменная-5V используется для генерации первых выходных данных шифротекста. Затем шифротекст суммируется по модулю 2 к последующему открытому тексту перед шифрованием.
5.3 Режим СВС при дешифровании описывается следующим образом:
дешифрование первого зашифрованного блока
Pi=rf/C(C()0SK (5)
далее
Р£=^(СО0 С,., для t = 2, 3,..., q. (6)
Эта процедура показана в нижней части рисунка 1.
6 РЕЖИМ ШИФРОВАНИЯ С ОБРАТНОЙ СВЯЗЬЮ —CFB
(CIPHER FEEDBACK)
6.1 Работу режима CFB определяют два параметра:
— размер переменной обратной связи k, где 1 <£</г;
— размер переменной открытого текста /, где \
Переменные, используемые при работе в режиме CFB, следующие:
a) входные переменные:
1) последовательность q переменных открытого текста Pi, Р2,. .. , Pq, каждая по / разрядов;
2) ключ К;
3) запускающая переменная 5V, имеющая п разрядов;
b) промежуточные результаты:
4
Шифрование *
s v
Дешифрование ч
SV
Pi
Рг
ГОСТ р ИСО/МЭК 10116—93
f*
Г
£
Алгоритм
шифрования
Алгоритм
дешифрования
Cq-i | |
РЯ |
Pi ?г
Рисунок 1 — Режим работы последовательного блочного шифрования (СВС)
1) последовательность q входных блоков алгоритма Хи Х2у ..., Xq, каждый по п разрядов;
2) последовательность q выходных блоков алгоритма Уи Y2y. .., Yq, каждый по п разрядов;
3) последовательность q переменных Еь E2,...yEqt каждая по п разрядов;
4) последовательность q—1 переменных обратной связи Fu F2, ■ • •, Fq-u каждая по k разрядов;
с) выходные переменные, т. е. последовательность q переменных шифротекста С\, С2, ..., Сц> каждая по / разрядов.
6.2 Входной блок X представляет собой ряд его начальных значений
Xx = SV. (7)
Операция шифрования каждой переменной открытого текста включает в себя пять этапов:
a) использование алгоритма шифрования
К, = еВД); (8)
b) выбор старших слева / разрядов
Е,= Y,~j; (9)
c) формирование переменной шифротекста
С, = Р,@Ег, (Ю)
d) формирование переменной обратной связи
Fx = Sl(/(A) |С0; (П)
e) функцию сдвига
5
Эти этапы повторяются для £=1, 2,..., q, заканчиваясь урав-нением (12) на последнем цикле. Процедура представлена на левой стороне рисунка 2. Старшие слева / битов выходного блока Y алгоритма шифрования используются для шифрования /-разрядной переменной открытого текста сложением по модулю 2. Оставшиеся разряды блока Y отбрасываются. Переменные открытого текста и шифротекста имеют разряды, пронумерованные от 1 до /.
Переменная шифротекста дополняется размещением k—/ битов «1» в позиции ее старших слева разрядов так, чтобы она стала 6-разрядной переменной обратной связи F. Затем разряды входного блока X сдвигаются влево на k позиций и F вставляется в самые правые k позиций, чтобы образовать новое значение X. В этой операции сдвига самые левые k разрядов блока X отбрасываются.
6.3. Переменные, используемые для дешифрования, являются такими же, как и те, которые используются для шифрования. Входной блок X представляет собой начальные значения =
Операция дешифрования каждой переменной шифротекста
включает в себя пять этапов:
a) использование алгоритма шифрования
У^еК(Хг); (13)
b) выбор самых левых / разрядов
Et = Yt~j; (И)
c) формирование переменной открытого текста
Л=с,0£1: (15)
d) формирование переменной обратной связи
F, = S;(/(A!)|C); (15;
e) функцию сдвига
X^-SbiXilFi). (17)
Эти этапы повторяются для £=1, 2,..., q, заканчиваясь урав
нением (17) в последнем цикле. Процедура представлена в правой части рисунка 2. Самые левые / разрядов выходного блока Y алгоритма шифрования используются для дешифрования /-разрядной переменной шифротекста сложением по модулю 2. Оставшиеся разряды блока Y отбрасываются. Переменные открытого текста и шифротекста имеют разряды, пронумерованные от 1 до /.
Переменная шифротекста дополняется размещением k—/ битов «1» в позициях самых левых разрядов так, чтобы она стала k~разрядной переменной обратной связи F. Затем разряды входного блока X сдвигаются влево на k позиций и F вставляется в самые правые k позиций, чтобы образовать новое значение X. В этой операции сдвига сямыр левые k разрядов блока X отбрасываются.
6
ГОСТ Р ИСО/МЭК 10Ц6—93
Шифрование Дешифрование _Л_ .■■■ Л |
Рисунок 2 — Режим работы шифрования с обратной связью (СРВ) |
6.4 Рекомендуется, чтобы режим CFB использовался с равными значениями ? и k. При этой рекомендации (/ = £) уравнений (11) и (16) мшут быть записаны в виде
Ft = C (подставлено / = &).
7 РЕЖИМ С ОБРАТНОЙ СВЯЗЬЮ ПО ВЫХОДУ — OFB (OUTPUT FEEDBACK)
7Л Режим работы OFB определяет один параметр, т. е. размер переменной открытого текста /, где 1
Переменные, используемые при работе в режиме OFB:
a) входные переменные:
1) последовательность q переменных открытого текста Ри Р« . Pq, по / разрядов каждая;
2) ключ К;
3) запускающая переменная SV из п разрядов;
b) промежуточные результаты:
1) последовательность q входных блоков алгоритма Хи X2f . ., Xq, по п разрядов каждый;
2) последовательность q выходных блоков алгоритма Yи Y2, ... , Уя, по п разрядов каждый;
3) последовательность q переменных
Еj, Е2,. .., Eq, по j разрядов каждая;
7
ГОСТ Р ИСО/МЭК 10116—93
с) выходные переменные, т. е. последовательность q переменных шифротекста Си Съ ..., Ся, по / разрядов каждая.
7.2. Входной блок X представляет собой ряд его начальных значений
Xt = SV. (18)
Операция шифрования каждой переменной открытого текста включает в себя четыре этапа:
a) использование алгоритма шифрования
Yi-eKiXt); (19)
b) выбор самых левых / разрядов
Ei=Y>~n (20)
c) формирование переменных шифротекста
(21)
d) операцию обратной связи
Xt+r-Y, (22)
Эти этапы повторяются для i= 1, 2, qy заканчиваясь уравнением (21) на последнем цикле. Процедура показана в левой части рисунка 3. Результат каждого применения алгоритма шифрования, которым является блок Ylt используется для обратной связи и становится следующим значением Xiy а именно л*+\. Самые левые / разрядов в Yt используются для шифрования входной переменной.
Шифрование Дешифрование |
1 j Рисунок 3 — Режим работы шифрования с обратной связью по выходу (OFB) 8 |