ГОСТ Р 34.13-2015. Национальный стандарт Российской Федерации. Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров
5.5. Режим гаммирования с обратной связью по шифртексту
Параметрами режима гаммирования с обратной связью по шифртексту являются целочисленные величины s и m, 0 < s <= n, n <= m.
В конкретной системе обработки информации на длину сообщения P может как накладываться ограничение |P| = s·q, так и не накладываться никаких ограничений. В случае если такое ограничение накладывается, к исходному сообщению, при необходимости, должна быть предварительно применена процедура дополнения.
При шифровании на одном ключе для каждого отдельного открытого текста используется значение непредсказуемой (случайной или псевдослучайной) синхропосылки .
При шифровании в режиме гаммирования с обратной связью по шифртексту используется двоичный регистр сдвига R длины m. Начальным заполнением регистра является значение синхропосылки IV.
Зашифрование в режиме гаммирования с обратной связью по шифртексту заключается в покомпонентном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s. При вычислении очередного блока гаммы выполняется зашифрование n разрядов регистра сдвига с большими номерами базовым алгоритмом блочного шифрования с последующим усечением. Затем заполнение регистра сдвигается на s разрядов в сторону разрядов с большими номерами, при этом в разряды с меньшими номерами записывается полученный блок шифртекста, являющийся результатом покомпонентного сложения гаммы шифра и блока открытого текста.
5.5.1 Зашифрование
Открытый текст представляется в виде P = P1||P2||...||Pq, PiVs, i = 1, 2, ..., q - 1,
, r <= s. Блоки шифртекста вычисляются по следующему правилу:
(10)
Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме гаммирования с обратной связью по шифртексту проиллюстрировано на рисунке 9.
Рисунок 9 - Зашифрование в режиме гаммирования с обратной
связью по шифртексту
5.5.2 Расшифрование
Шифртекст представляется в виде: C = C1||C2||...||Cq, , i = 1, 2, ..., q - 1. Блоки открытого текста вычисляются по следующему правилу:
(11)
Исходный открытый текст имеет вид:
P = P1||P2||...||Pq.
Примечание - Если к исходному открытому тексту была применена процедура дополнения, то после расшифрования следует произвести обратную процедуру. Для однозначного восстановления сообщения может потребоваться знание длины исходного сообщения.
Расшифрование в режиме гаммирования с обратной связью по шифртексту проиллюстрировано на рисунке 10.
Рисунок 10 - Расшифрование в режиме гаммирования с обратной
связью по шифртексту
