МКС 35.030
(в ред. Изменения N 1, введенного в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Дата введения
1 июня 2019 года
Цели, основные принципы и основной порядок проведения работ по межгосударственной стандартизации установлены в ГОСТ 1.0-2015 "Межгосударственная система стандартизации. Основные положения" и ГОСТ 1.2-2015 "Межгосударственная система стандартизации. Стандарты межгосударственные, правила и рекомендации по межгосударственной стандартизации. Правила разработки, принятия, обновления и отмены"
1 РАЗРАБОТАН Центром защиты информации и специальной связи ФСБ России с участием Открытого акционерного общества "Информационные технологии и коммуникационные системы" (ОАО "ИнфоТеКС") и Общества с ограниченной ответственностью "КРИПТО-ПРО" (ООО "КРИПТО-ПРО")
(в ред. Изменения N 1, введенного в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 26 "Криптографическая защита информации"
3 ПРИНЯТ Межгосударственным советом по метрологии, стандартизации и сертификации (протокол от 29 ноября 2018 г. N 54)
За принятие проголосовали:
4 Приказом Федерального агентства по техническому регулированию и метрологии от 4 декабря 2018 г. N 1062-ст межгосударственный стандарт ГОСТ 34.13-2018 введен в действие в качестве национального стандарта Российской Федерации с 1 июня 2019 г.
5 Настоящий стандарт подготовлен на основе применения ГОСТ Р 34.13-2015, Р 1323565.1.017-2018, Р 1323565.1.026-2019
(п. 5 в ред. Изменения N 1, введенного в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
6 ВЗАМЕН ГОСТ 28147-89 в части раздела 2 "Режим простой замены"; раздела 3 "Режим гаммирования"; раздела 4 "Режим гаммирования с обратной связью"; раздела 5 "Режим выработки имитовставки"
Информация об изменениях к настоящему стандарту публикуется в ежегодном информационном указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячном информационном указателе "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)
Настоящий стандарт содержит описание режимов работы блочных шифров. Данные режимы работы блочных шифров определяют правила криптографического преобразования данных и выработки имитовставки для сообщений произвольного размера.
Необходимость разработки настоящего стандарта вызвана потребностью в определении режимов работы блочных шифров, соответствующих современным требованиям к криптографической стойкости.
Настоящий стандарт терминологически и концептуально увязан с международными стандартами ИСО/МЭК 9797-1 [1], ИСО/МЭК 10116 [2], ИСО/МЭК 10118-1 [3], ИСО/МЭК 18033-1 [4], ИСО/МЭК 14888-1 [5].
Примечание - Основная часть стандарта дополнена приложением А "Контрольные примеры".
Настоящий стандарт распространяется на криптографическую защиту информации и определяет режимы работы блочных шифров.
Режимы работы блочных шифров, определенные в настоящем стандарте, рекомендуется использовать при разработке, производстве, эксплуатации и модернизации средств криптографической защиты информации в системах обработки информации различного назначения.
В настоящем стандарте применены следующие термины с соответствующими определениями:
2.1.1 алгоритм зашифрования (encryption algorithm): Алгоритм, реализующий зашифрование, т.е. преобразующий открытый текст в шифртекст.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.2 алгоритм расшифрования (decryption algorithm): Алгоритм, реализующий расшифрование, т.е. преобразующий шифртекст в открытый текст.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.3 базовый блочный шифр (basic block cipher): Блочный шифр, реализующий при каждом фиксированном значении ключа одно обратимое отображение множества блоков открытого текста фиксированной длины в блоки шифртекста такой же длины.
2.1.4 блок (block): Строка бит определенной длины.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.5 блочный шифр (block cipher): Шифр из класса симметричных криптографических методов, в котором алгоритм зашифрования применяется к блокам открытого текста для получения блоков шифртекста.
Примечания
1 Адаптировано из ИСО/МЭК 18033-1 [4].
2 В настоящем стандарте установлено, что термины "блочный шифр" и "алгоритм блочного шифрования" являются синонимами.
2.1.6 дополнение (padding): Приписывание дополнительных бит к строке бит.
Примечание - Адаптировано из ИСО/МЭК 10118-1 [3].
2.1.7 зацепление блоков (block chaining): Шифрование информации таким образом, что каждый блок шифртекста криптографически зависит от предыдущего блока шифртекста.
2.1.8 зашифрование (encryption): Обратимое преобразование данных с помощью шифра, который формирует шифртекст из открытого текста.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.9 имитовставка (message authentication code): Строка бит фиксированной длины, полученная применением симметричного криптографического метода к сообщению, добавляемая к сообщению для обеспечения его целостности и аутентификации источника данных.
Примечание - Адаптировано из ИСО/МЭК 9797-1 [1].
2.1.10 ключ (key): Изменяемый параметр в виде последовательности символов, определяющий криптографическое преобразование.
Примечания
1 Адаптировано из ИСО/МЭК 18033-1 [4].
2 В настоящем стандарте рассматриваются ключи только в виде последовательности двоичных символов (битов).
2.1.11 начальное значение (starting variable): Значение, возможно, полученное из синхропосылки и используемое для задания начальной точки режима работы блочного шифра.
Примечание - Адаптировано из ИСО/МЭК 10116 [2].
2.1.12 открытый текст (plaintext): Незашифрованная информация.
Примечание - Адаптировано из ИСО/МЭК 10116 [2].
2.1.13 расшифрование (decryption): Операция, обратная к зашифрованию.
Примечания
1 Адаптировано из ИСО/МЭК 18033-1 [4].
2 В настоящем стандарте в целях сохранения терминологической преемственности по отношению к нормативным документам, действующим на территории государства, принявшего настоящий стандарт, и опубликованным ранее на русском языке научно-техническим изданиям применяется термин "шифрование", объединяющий операции, определенные терминами "зашифрование" и "расшифрование". Конкретное значение термина "шифрование" определяется в зависимости от контекста упоминания.
2.1.14 симметричный криптографический метод (symmetric cryptographic technique): Криптографический метод, использующий один и тот же ключ для преобразования, осуществляемого отправителем, и преобразования, осуществляемого получателем.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.15 синхропосылка (initializing value): Комбинация знаков, передаваемая по каналу связи и предназначенная для инициализации алгоритма шифрования.
2.1.16 сообщение (message): Строка бит произвольной конечной длины.
Примечание - Адаптировано из ИСО/МЭК 14888-1 [5].
2.1.17 счетчик (counter): Строка бит длины, равной длине блока блочного шифра, используемая при шифровании в режиме гаммирования.
Примечание - Адаптировано из ИСО/МЭК 10116 [2].
2.1.18 шифр (cipher): Криптографический метод, используемый для обеспечения конфиденциальности данных, включающий алгоритм зашифрования и алгоритм расшифрования.
Примечание - Адаптировано из ИСО/МЭК 18033-1 [4].
2.1.19 шифртекст (ciphertext): Данные, полученные в результате зашифрования открытого текста в целях скрытия его содержания.
Примечание - Адаптировано из ИСО/МЭК 10116 [2].
2.1.20 ассоциированные данные (associated data): Данные, для которых обеспечивается целостность, но не обеспечивается конфиденциальность.
(п. 2.1.20 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
2.1.21 зашифрование с выработкой имитовставки (authenticated encryption): Операция, состоящая из зашифрования открытого текста и вычисления имитовставки от открытого текста и ассоциированных данных, с использованием одного ключа в обоих преобразованиях.
(п. 2.1.21 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
2.1.22 расшифрование с проверкой имитовставки (authenticated decryption): Операция, обратная к зашифрованию с выработкой имитовставки, состоящая из проверки имитовставки и последующего расшифрования шифртекста в случае успешного завершения проверки.
(п. 2.1.22 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
В настоящем стандарте применены следующие обозначения:
V* - множество всех двоичных строк конечной длины, включая пустую строку;
Vs - множество всех двоичных строк длины s, где s - целое неотрицательное число; нумерация подстрок и компонент строки осуществляется справа налево, начиная с нуля;
|A| - число компонент (длина) строки
A||B - конкатенация строк
, т.е. строка из V|A|+|B|, в которой подстрока с большими номерами компонент из V|A|, совпадает со строкой A, а подстрока с меньшими номерами компонент из V|B|, совпадает со строкой B;0r - строка, состоящая из r нулей;
x modl - операция вычисления остатка от деления целого числа x на целое положительное число l;
- отображение, ставящее в соответствие строке zm-1||...||z1||z0, m >= s, строку zm-1||...||zm-s+1||zm-s, - отображение, ставящее в соответствие строке zm-1||...||z1||z0, m >= s, строку zs-1||...||z1||z0, номера. Если , причем![]() - отображение, ставящее в соответствие строке многочлен ; - биективное отображение, сопоставляющее элементу кольца , представленного в виде z = z0 + 2·z1 +...+ 2s-1·zs-1 где , i = 0, 1, ..., s-1, выполнено равенство Vecs(z) = zs-1||...||z1||z0; - отображение, обратное к отображению Vecs, т.е. ;k - параметр алгоритма блочного шифрования, называемый длиной ключа;
n - параметр алгоритма блочного шифрования, называемый длиной блока;
- отображение, реализующее базовый алгоритм блочного шифрования и осуществляющее преобразование блока открытого текста ; - отображение, реализующее зашифрование с использованием ключа - отображение, реализующее расшифрование с использованием ключа ; ;(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
- отображение, определенное для F = Vn и F = GF(2)[x]/fn(x), где под многочленом fn(x) понимается примитивный многочлен степени n над полем GF(2) с наименьшим количеством ненулевых коэффициентов, который является первым в списке таких многочленов, упорядоченных лексикографически по возрастанию векторов коэффициентов. Для n = 64 порождающим многочленом является f64(x) = x64 + x4 + x3 + x + 1, для n = 128 порождающим многочленом является f128(x) = x128 + x7 + x2 + x + 1.В случае F = GF(2)[x]/fn(x) отображение ставит в соответствие двум элементам поля
и элемент поля , который является результатом умножения элементов a(x) и b(x) в поле GF(2)[x]/fn(x).В случае F = Vn отображение ставит в соответствие двум строкам a = (an-1 || ... || a0) и b = (bn-1 || ... || b0),
, строку , (введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
, n кратно 2 - отображение, ставящее в соответствие строке L || R, где , строку ;(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
, n кратно 2 - отображение, ставящее в соответствие строке L || R, где , строку ;(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
, n кратно 2 - отображение, ставящее в соответствие строке ;(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Im - процедура инициализации, определенная в 4.2;
(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Ts - процедура усечения, определенная в 4.3.
(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Настоящий стандарт определяет следующие режимы работы алгоритмов блочного шифрования:
- режим гаммирования с преобразованием ключа (CTR-ACPKM, англ. Counter Advanced Cryptographic Prolongation of Key Material);
(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
- режим аутентифицированного шифрования с ассоциированными данными (AEAD, англ. Authenticated Encryption with Associated Data);
(введено Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
- режим простой замены (ECB, англ. Electronic Codebook);
- режим гаммирования (CTR, англ. Counter);
- режим гаммирования с обратной связью по выходу (OFB, англ. Output Feedback);
- режим простой замены с зацеплением (CBC, англ. Cipher Block Chaining);
- режим гаммирования с обратной связью по шифртексту (CFB, англ. Cipher Feedback);
- режим выработки имитовставки (англ. Message Authentication Code algorithm).
Режим гаммирования может использоваться в качестве режима для блочных шифров с длиной блока n, кратной 2, режим гаммирования с преобразованием ключа может использоваться в качестве режима для блочных шифров с длиной блока n, кратной 8, режим аутентифицированного шифрования с ассоциированными данными может использоваться в качестве режима для блочных шифров с длиной блока n = 64 и n = 128, остальные режимы могут использоваться в качестве режимов для блочных шифров с произвольной длиной блока n.
(в ред. Изменения N 1, введенного в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
4.1.1 Общие положения
Отдельные из описанных ниже режимов работы (режим гаммирования, режим гаммирования с обратной связью по выходу, режим гаммирования с обратной связью по шифртексту) могут осуществлять криптографическое преобразование сообщений произвольной длины. Для других режимов (режим простой замены, режим простой замены с зацеплением) требуется, чтобы длина сообщения была кратна некоторой величине l. В последнем случае при работе с сообщениями произвольной длины необходимо применение процедуры дополнения сообщения до требуемой длины. Ниже приведены три процедуры дополнения.
Пусть
4.1.2 Процедура 1
Пусть r = |P|modl. Положим
![]() Примечание - Описанная процедура в некоторых случаях не обеспечивает однозначного восстановления исходного сообщения. Например, результаты дополнения сообщений P1, такого что |P1| = l·q - 1 для некоторого q, и P2 = P1||0 будут одинаковы. В этом случае для однозначного восстановления необходимо дополнительно знать длину исходного сообщения.
4.1.3 Процедура 2
Пусть r = |P|modl. Положим
P* = P||1||0l-r-1.
Примечание - Данная процедура обеспечивает однозначное восстановление исходного сообщения. При этом если длина исходного сообщения кратна l, то длина дополненного сообщения будет увеличена.
4.1.4 Процедура 3
Пусть r = |P|modl.
В зависимости от значения r возможны случаи:
- если r = l, то последний блок не изменяется P* = P;
- если r < l, то применяется процедура 2.
Примечания
1 Данная процедура обязательна для режима выработки имитовставки (5.6) и не рекомендуется для использования в других режимах (5.1 - 5.5).
2 Выбор конкретной процедуры дополнения предоставляется разработчику информационной системы и/или регламентируется другими нормативными документами.
В некоторых режимах работы используются величины, начальное значение которых вычисляется на основании синхропосылки IV; обозначим через m суммарную длину указанных величин. Будем обозначать процедуру выработки начального значения через
и называть процедурой инициализации. Будем называть процедуру инициализации тривиальной, если I|IV| = IV. Если не оговорено иное, будем считать, что используется тривиальная процедура инициализации на основе синхропосылки необходимой длины.Во всех описываемых в настоящем стандарте режимах работы не требуется обеспечение конфиденциальности синхропосылки. Вместе с тем процедура выработки синхропосылки должна удовлетворять одному из следующих требований:
- значения синхропосылки для режимов простой замены с зацеплением и гаммирования с обратной связью по шифртексту необходимо выбирать случайно, равновероятно и независимо друг от друга из множества всех допустимых значений. В этом случае значение каждой используемой синхропосылки IV должно быть непредсказуемым (случайным или псевдослучайным): зная значения всех других используемых синхропосылок, значение IV нельзя определить с вероятностью большей, чем 2-|IV|;
- все значения синхропосылок, выработанных для зашифрования на одном и том же ключе в режимах гаммирования, гаммирования с преобразованием ключа, аутентифицированного шифрования с ассоциированными данными должны быть уникальными, т.е. попарно различными. Для выработки значений синхропосылок может быть использован детерминированный счетчик;
(в ред. Изменения N 1, введенного в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
- значение синхропосылки для режима гаммирования с обратной связью по выходу должно быть либо непредсказуемым (случайным или псевдослучайным), либо уникальным.
Примечание - Режим простой замены не предусматривает использования синхропосылки.
В некоторых режимах используется усечение строк длины n до строк длины s, s <= n, с использованием функции Ts = MSBS, т.е. в качестве операции усечения используется операция взятия бит с
номерами.(подраздел 4.4 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Для преобразования ключа используется функция ACPKM, которая принимает на вход ключ K длины k <= 256 бит и преобразует его в ключ K' той же длины.
Функция ACPKM использует базовый алгоритм блочного шифрования и определяется следующим образом:
K' = ACPKM(K) = LSBk(eK(D1) || ... || (eK(DJ)),
где
, D1 || ... || DJ = LSBJ·n(D), .Константа
в шестнадцатеричной системе счисления задана следующим образом:D = 808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f.
5.1.1 Общие положения
Длина сообщений, зашифровываемых в режиме простой замены, должна быть кратна длине блока базового алгоритма блочного шифрования n, поэтому при необходимости к исходному сообщению должна быть предварительно применена процедура дополнения.
Зашифрование (расшифрование) в режиме простой замены заключается в зашифровании (расшифровании) каждого блока текста с помощью базового алгоритма блочного шифрования.
5.1.2 Зашифрование
Открытый и при необходимости дополненный текст
Ci = eK(P-i), i = 1, 2, ..., q. (1)
Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме простой замены показано на рисунке 1.
![]() Рисунок 1 - Зашифрование в режиме простой замены
5.1.3 Расшифрование
Шифртекст представляется в виде: C = C1||C2||...||Cq,
Pi = dK(Ci), i = 1, 2, ..., q. (2)
Исходный (дополненный) открытый текст имеет вид:
P = P1||P2||...||Pq.
Примечание - Если к исходному открытому тексту была применена процедура дополнения, то после расшифрования следует провести обратную процедуру. Для однозначного восстановления сообщения может потребоваться знание длины исходного сообщения.
Расшифрование в режиме простой замены показано на рисунке 2.
![]() Рисунок 2 - Расшифрование в режиме простой замены
5.2.1 Общие положения
Параметром режима гаммирования является целочисленная величина s, 0 < s <= n. При использовании режима гаммирования не требуется применение процедуры дополнения сообщения.
Для зашифрования (расшифрования) каждого отдельного открытого текста на одном ключе используется значение уникальной синхропосылки
.Зашифрование в режиме гаммирования заключается в покомпонентном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s путем зашифрования последовательности значений счетчика
, i = 1, 2, ..., базовым алгоритмом блочного шифрования с последующим усечением. Начальным значением счетчика является . Последующие значения счетчика вырабатываются с помощью функции следующим образом: . (3)5.2.2 Зашифрование
Открытый текст
(4)Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме гаммирования показано на рисунке 3.
![]() Рисунок 3 - Зашифрование в режиме гаммирования
5.2.3 Расшифрование
Шифртекст представляется в виде: C = C1||C2||...||Cq,
, r <= s.Блоки открытого текста вычисляются по следующему правилу:
(5)Исходный открытый текст имеет вид:
P = P1||P2||...||Pq.
Расшифрование в режиме гаммирования показано на рисунке 4.
![]() Рисунок 4 - Расшифрование в режиме гаммирования
5.3.1 Общие положения
Параметрами режима гаммирования с обратной связью по выходу являются целочисленные величины s и m, 0 < s <= n, m = n·z, z >= 1 - целое число.
При использовании режима гаммирования с обратной связью по выходу не требуется применение процедуры дополнения сообщения.
При шифровании на одном ключе для каждого отдельного открытого текста используется значение уникальной или непредсказуемой (случайной или псевдослучайной) синхропосылки
.При шифровании в режиме гаммирования с обратной связью по выходу используется двоичный регистр сдвига R длины m. Начальным заполнением регистра является значение синхропосылки IV.
Зашифрование в режиме гаммирования с обратной связью по выходу заключается в покомпонентном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s. При вычислении очередного блока гаммы выполняется зашифрование n разрядов регистра сдвига с
номерами базовым алгоритмом блочного шифрования. Затем заполнение регистра сдвигается на n бит в сторону разрядов с номерами, при этом в разряды с меньшими номерами записывается полученный выход базового алгоритма блочного шифрования. Блок гаммы вычисляется путем усечения выхода базового алгоритма блочного шифрования.5.3.2 Зашифрование
Открытый текст
R1 = IV,
(6)Yq = eK(MSBn(Rq)),
.Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме гаммирования с обратной связью по выходу показано на рисунке 5.
![]() Рисунок 5 - Зашифрование в режиме
гаммирования с обратной связью по выходу
5.3.3 Расшифрование
Шифртекст представляется в виде: C = C1||C2||...||Cq,
, r <= s.Блоки открытого текста вычисляются по следующему правилу:
R1 = IV,
(7)Yq = eK(MSBn(Rq)),
.Исходный открытый текст имеет вид:
P = P1||P2||...||Pq.
Расшифрование в режиме гаммирования с обратной связью по выходу показано на рисунке 6.
![]() Рисунок 6 - Расшифрование в режиме
гаммирования с обратной связью по выходу
5.4.1 Общие положения
Параметром режима простой замены с зацеплением является целочисленная величина m, m = n·z, z >= 1 - целое число.
Длина сообщений, зашифровываемых в режиме простой замены с зацеплением, должна быть кратна длине блока базового алгоритма блочного шифрования n, поэтому при необходимости к исходному сообщению должна быть предварительно применена процедура дополнения.
При шифровании на одном ключе для каждого отдельного открытого текста используется значение непредсказуемой (случайной или псевдослучайной) синхропосылки
.При шифровании в режиме простой замены с зацеплением используется двоичный регистр сдвига R длины m. Начальным заполнением регистра является значение синхропосылки IV.
В режиме простой замены с зацеплением очередной блок шифртекста получается путем зашифрования результата покомпонентного сложения значения очередного блока открытого текста со значением n разрядов регистра сдвига с
номерами. Затем регистр сдвигается на один блок в сторону разрядов с номерами. В разряды с меньшими номерами записывается значение блока шифртекста.5.4.2 Зашифрование
Открытый и при необходимости дополненный текст
R1 = IV,
(8) .Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме простой замены с зацеплением показано на рисунке 7.
![]() Рисунок 7 - Зашифрование в режиме
простой замены с зацеплением
5.4.3 Расшифрование
Шифртекст представляется в виде C = C1||C2||...||Cq,
R1 = IV,
(9) .Исходный (дополненный) открытый текст имеет вид:
P = P1||P2||...||Pq.
Примечание - Если к исходному открытому тексту была применена процедура дополнения, то после расшифрования следует провести обратную процедуру. Для однозначного восстановления сообщения может потребоваться знание длины исходного сообщения.
Расшифрование в режиме простой замены с зацеплением показано на рисунке 8.
![]() Рисунок 8 - Расшифрование в режиме
простой замены с зацеплением
5.5.1 Общие положения
Параметрами режима гаммирования с обратной связью по шифртексту являются целочисленные величины s и m, 0 < s <= n, n <= m.
В конкретной системе обработки информации на длину сообщения P может как накладываться ограничение |P| = s·q, так и не накладываться никаких ограничений. В случае если такое ограничение накладывается, к исходному сообщению при необходимости должна быть предварительно применена процедура дополнения.
При шифровании на одном ключе для каждого отдельного открытого текста используется значение непредсказуемой (случайной или псевдослучайной) синхропосылки
.При шифровании в режиме гаммирования с обратной связью по шифртексту используется двоичный регистр сдвига R длины m. Начальным заполнением регистра является значение синхропосылки IV.
Зашифрование в режиме гаммирования с обратной связью по шифртексту заключается в покомпонентном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s. При вычислении очередного блока гаммы выполняется зашифрование n разрядов регистра сдвига с
номерами базовым алгоритмом блочного шифрования с последующим усечением. Затем заполнение регистра сдвигается на s разрядов в сторону разрядов с номерами, при этом в разряды с меньшими номерами записывается полученный блок шифртекста, являющийся результатом покомпонентного сложения гаммы шифра и блока открытого текста.5.5.2 Зашифрование
Открытый текст
R1 = IV,
(10) .Результирующий шифртекст имеет вид:
C = C1||C2||...||Cq.
Зашифрование в режиме гаммирования с обратной связью по шифртексту показано на рисунке 9.
![]() Рисунок 9 - Зашифрование в режиме гаммирования
с обратной связью по шифртексту
5.5.3 Расшифрование
Шифртекст представляется в виде: C = C1||C2||...||Cq,
, r <= s. Блоки открытого текста вычисляются по следующему правилу:R1 = IV,
(11) .Исходный открытый текст имеет вид:
P = P1||P2||...||Pq.
Примечание - Если к исходному открытому тексту была применена процедура дополнения, то после расшифрования следует провести обратную процедуру. Для однозначного восстановления сообщения может потребоваться знание длины исходного сообщения.
Расшифрование в режиме гаммирования с обратной связью по шифртексту показано на рисунке 10.
![]() Рисунок 10 - Расшифрование в режиме гаммирования
с обратной связью по шифртексту
5.6.1 Общие положения
Режим выработки имитовставки, описание которого представлено ниже, реализует конструкцию OMAC1 (стандартизован в ISO под названием CMAC [1]).
Параметром режима является длина имитовставки (в битах) 0 < s <= n.
5.6.2 Выработка вспомогательных ключей
При вычислении значения имитовставки используются вспомогательные ключи, которые вычисляются с использованием ключа K. Длины вспомогательных ключей равны длине блока n базового алгоритма блочного шифрования.
Процедура выработки вспомогательных ключей может быть представлена в следующем виде:
R = eK(0n);
![]() ![]() где B64 = 059||11011, B128 = 0120||10000111.
Если значение n отлично от 64 и 128, необходимо использовать следующую процедуру определения значения константы Bn. Рассмотрим множество примитивных многочленов степени n над полем GF(2) с наименьшим количеством ненулевых коэффициентов. Упорядочим это множество лексикографически по возрастанию векторов коэффициентов и обозначим через fn(x) первый многочлен в этом упорядоченном множестве.
Рассмотрим поле GF(2n)[x]/(fn(x)), зафиксируем в нем степенной базис и будем обозначать операцию умножения в этом поле символом
(12)Примечание - Вспомогательные ключи K1 и K2 и промежуточное значение R наряду с ключом K являются секретными параметрами. Компрометация какого-либо из этих значений приводит к возможности построения эффективных методов анализа всего алгоритма.
5.6.3 Вычисление значения имитовставки
Процедура вычисления значения имитовставки похожа на процедуру зашифрования в режиме простой замены с зацеплением при m = n и инициализации начального заполнения регистра сдвига значением 0n: на вход алгоритму шифрования подается результат покомпонентного сложения очередного блока текста и результата зашифрования на предыдущем шаге. Основное отличие заключается в процедуре обработки последнего блока: на вход базовому алгоритму блочного шифрования подается результат покомпонентного сложения последнего блока, результата зашифрования на предыдущем шаге и одного из вспомогательных ключей. Конкретный вспомогательный ключ выбирается в зависимости от того, является ли последний блок исходного сообщения полным или нет. Значением имитовставки MAC является результат применения процедуры усечения к выходу алгоритма шифрования при обработке последнего блока.
Исходное сообщение
P = P1||P2||...||Pq,
где
Процедура вычисления имитовставки описывается следующим образом:
(13)где
![]() Примечание - Настоятельно рекомендуется не использовать ключ режима выработки имитовставки в других криптографических алгоритмах, в том числе в режимах, обеспечивающих конфиденциальность, описанных в 5.1 - 5.5.
Процедура вычисления имитовставки показана на рисунках 11 - 13.
![]() Рисунок 11 - Вычисление значения имитовставки - общий вид
![]() Рисунок 12 - Вычисление значения
имитовставки - случай полного последнего блока
![]() с дополнением последнего блока
(подраздел 5.7 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
5.7.1 Общие положения
Параметром, определяющим порядок функционирования режима гаммирования с преобразованием ключа, является длина секции N. Значение N выражено в битах и фиксировано в рамках каждого конкретного протокола, исходя из требований к производительности системы и суммарной длине данных, обработанных на одном ключе. Длина секции N должна быть кратна длине блока n используемого базового алгоритма блочного шифрования. Дополнительный параметр режима гаммирования с преобразованием ключа - это длина блока гаммы s, 0 < s <= n, выраженная в битах. Величина s должна быть кратна 8 и делить длину блока n.
Режим гаммирования с преобразованием ключа использует функцию ACPKM, определенную в 4.4.
Пусть
, j = 1, 2, ..., - множество сообщений, подлежащих зашифрованию. При обработке каждого сообщения P = Pj, j = 1, 2, ..., в режиме гаммирования с преобразованием ключа сообщение разбивается на секций и представляется в виде P = M1 || M2 || ... || Ml, где , i = 1, 2, ..., l - 1, , w <= N. Первая секция каждого сообщения обрабатывается на секционном ключе K1, который равен начальному ключу K. Для обработки i-й секции каждого сообщения, i = 2, ..., l, используется секционный ключ Ki, который вычисляется из ключа Ki-1 с помощью функции ACPKM.Преобразование ключа в процессе обработки сообщений в режиме гаммирования с преобразованием ключа показано на рисунке 14.
![]() Рисунок 14 - Преобразование ключа в процессе обработки
сообщений в режиме гаммирования с преобразованием ключа
Примечание - На рисунке 14 через pmax обозначена максимальная длина сообщения, выраженная в битах,
, m - количество обрабатываемых сообщений.Для зашифрования (расшифрования) каждого отдельного открытого текста (шифртекста) на одном ключе используется уникальное значение синхропосылки
, где 0 < c < n, величина c кратна 8.При использовании режима гаммирования с преобразованием ключа не требуется применение процедуры дополнения сообщения.
Длина p сообщения, обрабатываемого в режиме гаммирования с преобразованием ключа, не должна превышать значения 2c-1·s бит.
Зашифрование (расшифрование) открытого текста (шифртекста) в режиме гаммирования с преобразованием ключа заключается в покомпонентном сложении открытого текста с гаммой шифра, которая вырабатывается блоками длины s путем зашифрования последовательности значений счетчика
, i = 1, 2, ..., базовым алгоритмом блочного шифрования с использованием соответствующего секционного ключа с последующим усечением выходного значения. Начальным значением счетчика является CTR1 = In(IV) = IV || 0c. Последующие значения счетчика вырабатываются с помощью функции Add: следующим образом: , i = 1, 2 ... (14)5.7.2 Зашифрование
Открытый текст
Блоки шифртекста вычисляются по следующему правилу:
(15)Результирующий шифртекст имеет вид:
C = C1 || C2 || ... || Cq.
Зашифрование в режиме гаммирования с преобразованием ключа показано на рисунке 15.
![]() Рисунок 15 - Зашифрование в режиме гаммирования
с преобразованием ключа
5.7.3 Расшифрование
Шифртекст представляется в виде: C = C1 || C2 || ... || Cq, где
Блоки открытого текста вычисляются по следующему правилу:
(16)Исходный открытый текст имеет вид:
P = P1 || P2 || ... || Pq.
Расшифрование в режиме гаммирования с преобразованием ключа показано на рисунке 16.
![]() Рисунок 16 - Расшифрование в режиме гаммирования
с преобразованием ключа
(подраздел 5.8 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
В данном подразделе описан режим аутентифицированного шифрования с ассоциированными данными MGM (Multilinear Galois Mode).
5.8.1 Общие положения
Параметром режима MGM является длина имитовставки s, выраженная в битах, 32 <= s <= n. Значение s должно быть зафиксировано в рамках каждого конкретного протокола, исходя из требований к производительности системы и к стойкости режима относительно угрозы нарушения целостности.
Сообщения состоят из двух частей. Первая часть содержит ассоциированные данные A, а вторая часть - открытый текст P. Одна из двух частей может быть равна пустой строке. Данный режим подразумевает шифрование открытого текста и вычисление имитовставки от шифртекста и ассоциированных данных.
На длину ассоциированных данных и длину открытого текста накладываются следующие ограничения: 0 < |A| + |P| < 2n/2.
Режим MGM использует синхропосылку
. Значение синхропосылки должно быть уникальным для каждого сообщения при фиксированном ключе K. Выработка уникальных значений синхропосылки может быть реализована с использованием счетчика.Шифрование в режиме MGM осуществляется путем побитового сложения открытого текста с секретной гаммой, получаемой в результате зашифрования последовательных значений счетчика базовым алгоритмом блочного шифрования. В качестве начального значения счетчика используется значение синхропосылки, дополненное до размера блока нулевым битом слева и зашифрованное базовым алгоритмом блочного шифрования. Вычисление имитовставки от шифртекста и ассоциированных данных в режиме MGM выполняется с помощью мультилинейной функции с секретными коэффициентами, получаемыми в результате зашифрования последовательных значений счетчика базовым алгоритмом блочного шифрования. В качестве начального значения счетчика используется значение синхропосылки, дополненное до размера блока единичным битом слева и базовым алгоритмом блочного шифрования.
5.8.2 Зашифрование с выработкой имитовставки
Открытый текст
, где , где Если длина открытого текста не равна нулю, то блоки шифртекста вычисляются по следующему правилу:
(17)Результирующий шифртекст имеет вид:
.Если открытый текст P равен пустой строке, то шифртекст C также принимается равным пустой строке.
К ассоциированным данным A и шифртексту C применяется процедура 1 дополнения сообщения до длины блока n. После применения процедуры дополнения последний блок ассоциированных данных Ah и последний блок шифртекста Cq принимают следующий вид:
(18)Значение имитовставки вычисляется по следующему правилу:
(19)Результатом вычисления имитовставки является значение MAC.
Зашифрование с выработкой имитовставки в режиме MGM показано на рисунке 17.
![]() Рисунок 17 - Зашифрование с выработкой имитовставки
в режиме MGM
5.8.3 Расшифрование с проверкой имитовставки
Шифртекст представляется в виде:
, где , где К ассоциированным данным A и шифртексту C применяется процедура 1 дополнения сообщения до длины блока n. После применения процедуры дополнения последний блок ассоциированных данных Ah и последний блок шифртекста Cq принимают следующий вид:
(20)Проверка корректности имитовставки выполняется по следующему правилу:
(21)Если MAC' /= MAC, то в качестве результата расшифрования возвращается ошибка. Если MAC' = MAC, то выполняется расшифрование.
Если длина шифртекста не равна нулю, то блоки открытого текста вычисляются по следующему правилу:
(22)Исходный открытый текст имеет вид:
.Если шифртекст C равен пустой строке, то открытый текст P также принимается равным пустой строке.
Расшифрование с проверкой имитовставки в режиме MGM показано на рисунке 18.
![]() Рисунок 18 - Расшифрование с проверкой имитовставки
в режиме MGM.
(справочное)
Настоящее приложение носит справочный характер и не является частью нормативных положений настоящего стандарта.
В настоящем приложении содержатся примеры для зашифрования и расшифрования сообщений, а также выработки имитовставки с использованием режимов работы шифра, определенных в настоящем стандарте. Параметр s выбран равным n в целях упрощения проводимых вычислений, а параметр m выбирался из соображений демонстрации особенностей каждого режима шифрования. Двоичные строки из V*, длина которых кратна 4, записываются в шестнадцатеричном виде, а символ конкатенации ("||") опускается. Таким образом, строка
, i = 0, 1, ..., r - 1.В А.2 приведены примеры для блочного шифра с длиной блока n = 128 бит ("Кузнечик"). В А.3 приведены примеры для блочного шифра с длиной блока n = 64 бит ("Магма").
А.2.1 Исключен с 01.11.2023. - Изменение N 1, введенное в действие Приказом Росстандарта от 13.10.2023 N 1131-ст.
А.2.2 Режим простой замены
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Таблица А.1
Зашифрование в режиме простой замены
А.2.3 Режим гаммирования
А.2.3.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 128,
IV = 1234567890abcef.
Таблица А.2
Зашифрование в режиме гаммирования
Окончание таблицы А.2
А.2.3.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.2.4 Режим гаммирования с обратной связью по выходу
А.2.4.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 128, m = 2n = 256,
IV = 1234567890abcef0a1b2c3d4e5f0011223344556677889901213141516171819.
Таблица А.3
Зашифрование в режиме гаммирования
с обратной связью по выходу
Окончание таблицы А.3
А.2.4.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.2.5 Режим простой замены с зацеплением
А.2.5.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
m = 2n = 256,
IV = 1234567890abcef0a1b2c3d4e5f0011223344556677889901213141516171819.
Таблица А.4
Зашифрование в режиме простой замены с зацеплением
Окончание таблицы А.4
А.2.5.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.2.6 Режим гаммирования с обратной связью по шифртексту
А.2.6.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 128, m = 2n = 256,
IV = 1234567890abcef0a1b2c3d4e5f0011223344556677889901213141516171819.
Таблица А.5
Зашифрование в режиме гаммирования
с обратной связью по шифртексту
Окончание таблицы А.5
А.2.6.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.2.7 Режим выработки имитовставки
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.2.7.1 Выработка вспомогательных ключей
R = 94bec15e269cf1e506f02b994c0a8ea0,
MSB1(R) = 1,
![]() MSB1(K1) = 0,
![]() |P4| = n, K* = K1.
А.2.7.2 Вычисление имитовставки
s = 64.
Таблица А.6
Вычисление имитовставки
Окончание таблицы А.6
MAC = 336f4d296059fbe3.
А.2.8 Режим гаммирования с преобразованием ключа
(п. А.2.8 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.2.8.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - семь 128-битных блоков:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011,
P5 = 33445566778899aabbcceeff0a001122,
P6 = 445566778899aabbcceeff0a00112233,
P7 = 5566778899aabbcceeff0a0011223344.
n = 128, s = n = 128,
N = 256,
IV = 1234567890abcef0.
Таблица А.6а
Выработка секционных ключей с помощью функции
преобразования ключа ACPKM
Таблица А.6б
Зашифрование секции M1 в режиме гаммирования
с преобразованием ключа
Таблица А.6в
Зашифрование секции M2 в режиме гаммирования
с преобразованием ключа
Таблица А.6г
Зашифрование секции M3 в режиме гаммирования
с преобразованием ключа
Таблица А.6д
Зашифрование секции M4 в режиме гаммирования
с преобразованием ключа
А.2.8.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся значения P1, P2, P3, P4, P5, P6, P7.
А.2.9 Режим аутентифицированного шифрования с ассоциированными данными
(п. А.2.9 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.2.9.1 Зашифрование с выработкой имитовставки
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - четыре 128-битных блока и один 24-битный блок:
P1 = 1122334455667700ffeeddccbbaa9988,
P2 = 00112233445566778899aabbcceeff0a,
P3 = 112233445566778899aabbcceeff0a00,
P4 = 2233445566778899aabbcceeff0a0011,
.Ассоциированные данные - два 128-битных блока и один 72-битный блок:
A1 = 02020202020202020101010101010101,
A2 = 04040404040404040303030303030303,
.n = 128, s = n = 128,
IV = 1122334455667700ffeeddccbbaa9988,
Y1 = eK(0 || IV) = 7f679d90bebc24305a468d42b9d4edcd,
Z1 = eK(1 || IV) = 7fc245a8586e6602a7bbdb2786bdc66f.
Таблица А.6е
Зашифрование в режиме аутентифицированного шифрования
с ассоциированными данными
Продолжение таблицы А.6е
Окончание таблицы А.6е
Дополнение последнего блока шифртекста и последнего блока ассоциированных данных:
C5 = 2c755200000000000000000000000000,
A3 = ea050505050505050500000000000000.
Таблица А.6ж
Вычисление имитовставки в режиме аутентифицированного
шифрования с ассоциированными данными
Продолжение таблицы А.6ж
Продолжение таблицы А.6ж
Продолжение таблицы А.6ж
Окончание таблицы А.6ж
len(A) || len(C) = 00000000000001480000000000000218.
MAC = cf5d656f40c34f5c46e8bb0e29fcdb4c.
А.2.9.2 Расшифрование
С использованием приведенных значений K, IV, A, C и MAC с помощью операции расшифрования с проверкой имитовставки выполняется проверка имитовставки MAC и воспроизводятся значения P1, P2, P3, P4,
А.3.1 Исключен с 01.11.2023. - Изменение N 1, введенное в действие Приказом Росстандарта от 13.10.2023 N 1131-ст.
А.3.2 Режим простой замены
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
Таблица А.7
Зашифрование в режиме простой замены
А.3.3 Режим гаммирования
А.3.3.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 64,
IV = 12345678.
Таблица А.8
Зашифрование в режиме гаммирования
Окончание таблицы А.8
А.3.3.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.3.4 Режим гаммирования с обратной связью по выходу
А.3.4.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 64, m = 2n = 128,
IV = 1234567890abcdef234567890abcdef1.
Таблица А.9
Зашифрование в режиме гаммирования с обратной связью
Окончание таблицы А.9
А.3.4.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.3.5 Режим простой замены с зацеплением
А.3.5.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
m = 3n = 192,
IV = 1234567890abcdef234567890abcdef134567890abcdef12.
Таблица А.10
Зашифрование в режиме простой замены с зацеплением
Окончание таблицы А.10
А.3.5.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.3.6 Режим гаммирования с обратной связью по шифртексту
А.3.6.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
s = n = 64, m = 2n = 128,
IV = 1234567890abcdef234567890abcdef1.
Таблица А.11
Зашифрование в режиме гаммирования
с обратной связью по шифртексту
Окончание таблицы А.11
А.3.6.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся исходные значения P1, P2, P3, P4.
А.3.7 Режим выработки имитовставки
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - четыре 64-битных блока:
P1 = 92def06b3c130a59,
P2 = db54c704f8189d20,
P3 = 4a98fb2e67a8024c,
P4 = 8912409b17b57e41.
(абзац введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.3.7.1 Выработка вспомогательных ключей
R = 2fa2cd99a1290a12,
MSB1(R) = 0,
,MSB1(K1) = 0, следовательно
,|P4| = n, K* = K1.
А.3.7.2 Вычисление имитовставки
s = 32.
Таблица А.12
Вычисление имитовставки
Окончание таблицы А.12
MAC = 154e7210.
А.3.8 Режим гаммирования с преобразованием ключа
(п. А.3.8 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.3.8.1 Зашифрование
Пример использует следующие параметры:
Ключ
K = 8899aabbccddeeff0011223344556677fedcba98765432100123456789abcdef.
Открытый текст - семь 64-битных блоков:
P1 = 1122334455667700,
P2 = feeddccbbaa9988,
P3 = 0011223344556677,
P4 = 8899aabbcceeff0a,
P5 = 1122334455667788,
P6 = 99aabbcceeff0a00,
P7 = 2233445566778899.
n = 64, s = n = 64,
N = 128,
IV = 12345678.
Таблица А.13
Выработка секционных ключей с помощью функции
преобразования ключа ACPKM
Таблица А.14
Зашифрование секции M1 в режиме гаммирования
с преобразованием ключа
Таблица А.15
Зашифрование секции M2 в режиме гаммирования
с преобразованием ключа
Таблица А.16
Зашифрование секции M3 в режиме гаммирования
с преобразованием ключа
Таблица А.17
Зашифрование секции M4 в режиме гаммирования
с преобразованием ключа
А.3.8.2 Расшифрование
С использованием приведенных значений K, IV и C с помощью операции расшифрования воспроизводятся значения P1, P2, P3, P4, P5, P6, P7.
А.3.9 Режим аутентифицированного шифрования с ассоциированными данными
(п. А.3.9 введен Изменением N 1, введенным в действие Приказом Росстандарта от 13.10.2023 N 1131-ст)
А.3.9.1 Зашифрование с выработкой имитовставки
Пример использует следующие параметры:
Ключ
K = ffeeddccbbaa99887766554433221100f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff.
Открытый текст - восемь 64-битных блоков и один 24-битный блок:
P1 = ffeeddccbbaa9988,
P2 = 1122334455667700,
P3 = 8899aabbcceeff0a,
P4 = 0011223344556677,
P5 = 99aabbcceeff0a00,
P6 = 1122334455667788,
P7 = aabbcceeff0a0011,
P8 = 2233445566778899,
P9 = aabbcc.
Ассоциированные данные - пять 64-битных блоков и один 8-битный блок:
A1 = 0101010101010101,
A2 = 0202020202020202,
A3 = 0303030303030303,
A4 = 0404040404040404,
A5 = 0505050505050505,
A6 = ea.
n = 64, s = n = 64,
IV = 12def06b3c130a59,
Y1 = eK(0 || IV) = 5623890162de31bf,
Z1 = eK(1 || IV) = 2b073f0494f372a0.
Таблица А.18
Зашифрование в режиме аутентифицированного шифрования
с ассоциированными данными
Продолжение таблицы А.18
Продолжение таблицы А.18
Продолжение таблицы А.18
Окончание таблицы А.18
Дополнение последнего блока шифртекста и последнего блока ассоциированных данных:
C5 = 03bb9c0000000000,
A3 = ea00000000000000.
Таблица А.19
Вычисление имитовставки в режиме аутентифицированного
шифрования с ассоциированными данными
Продолжение таблицы А.19
Продолжение таблицы А.19
Продолжение таблицы А.19
Продолжение таблицы А.19
Продолжение таблицы А.19
Продолжение таблицы А.19
Окончание таблицы А.19
len(A) || len(C) = 0000014800000218.
MAC = a7928069aa10fd10.
А.3.9.2 Расшифрование
С использованием приведенных значений K, IV, A, C и MAC с помощью операции расшифрования с проверкой имитовставки выполняется проверка имитовставки MAC и воспроизводятся значения P1, P2, P3, P4,
Примечание - Оригиналы международных стандартов ИСО/МЭК находятся в национальных (государственных) органах по стандартизации <*> государств, принявших настоящий стандарт.
--------------------------------
<*> В Российской Федерации оригиналы международных стандартов ИСО/МЭК находятся в Федеральном информационном фонде стандартов.
Вернуться в "Каталог нормативных документов"
Источник информации: https://internet-law.ru/documents/prod/gost_gosudarstvennyj-standart/28/gost_14618.html
На правах рекламы:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||