Товары в корзине: 0 шт Оформить заказ
Стр. 1 

16 страниц

Купить Р 1323565.1.026-2019 — бумажный документ с голограммой и синими печатями. подробнее

Цена на этот документ пока неизвестна. Нажмите кнопку "Купить" и сделайте заказ, и мы пришлем вам цену.

Распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль"

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

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

 Скачать PDF

Оглавление

1 Область применения

2 Нормативные ссылки

3 Обозначения и сокращения

3.1 Обозначения

3.2 Сокращения

4 Общие положения

5 Режим МGМ

5.1 Зашифрование

5.2 Расшифрование

Приложение А (справочное)

Приложение Б (справочное)

Б.1 Пример для блочного шифра «Кузнечик»

Б.2 Пример для блочного шифра «Магма»

 
Дата введения01.12.2019
Добавлен в базу01.01.2021
Актуализация01.01.2021

Этот документ находится в:

Организации:

06.09.2019УтвержденФедеральное агентство по техническому регулированию и метрологии646-ст
РазработанЦентр защиты информации и специальной связи Федеральной службы безопасности Российской Федерации
РазработанООО КРИПТО-ПРО
ИзданСтандартинформ2019 г.

Information technology. Cryptographic data security. Authenticated encryption block cipher operation modes

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16

РЕКОМЕНДАЦИИ ПО СТАНДАРТИЗАЦИИ


Р 1323565.1.026— 2019



ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

Информационная технология

КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ

Режимы работы блочных шифров, реализующие аутентифицированное шифрование

Издание официальное

Москва

Стандартинформ

2019

Предисловие

1    РАЗРАБОТАНЫ Центром защиты информации и специальной связи ФСБ России при участии Общества с ограниченной ответственностью «КРИПТО-ПРО» (ООО «КРИПТО-ПРО»)

2    ВНЕСЕНЫ Техническим комитетом по стандартизации ТК 26 «Криптографическая защита информации»

3    УТВЕРЖДЕНЫ И ВВЕДЕНЫ В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 6 сентября 2019 г. № 646-ст

4    ВВЕДЕНЫ ВПЕРВЫЕ

Правила применения настоящих рекомендаций установлены в статье 26 Федерального закона от 29 июня 2015 г. № 162-ФЗ «О стандартизации в Российской Федерации». Информация об изменениях к настоящим рекомендациям публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе «Национальные стандарты», а официальный текст изменений и поправок — в ежемесячном информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящих рекомендаций соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)

© Стандартинформ. оформление. 2019

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

Приложение A (справочное)

Работа с байтовыми строками

Данное приложение носит справочный характер и не является частью настоящих рекомендаций В данном приложении приведены примеры перевода битовой строки в байтовую и наоборот Для перевода битовой строки в байтовую используется функция BitToByte, для перевода байтовой строки в битовую — функция ByteToBit

При записи байтовой строки каждый байт представляется в шестнадцатеричном виде и отделяется от соседних пробелами Каждой битовой строке ас соответствует байтовая строка Ь = BitToByte(a) и наоборот Например, битовая строка 1100101100011000 соответствует байтовой строке СВ 18

При записи битовой строки она разделяется на подстроки длины не более 8 Каждая подстрока отделяется от соседних пробелами

Для формирования строки с длиной, кратной 8, битовый вектор попев с Vдополняется нулем слева Таким образом, байтовым представлением вектора попсе является строка BitToByte (0 I попсе)

Ниже приведен пример перевода битового представления попев в байтовое для случая п = 128 попсе с Уд.,:

0010001 00100010 00110011 01000100 01010101 01100110 01110111 10001000 10011001 00000000 10101010 10111011 1100110011011101 11101110 11111111.

0 I попсе

00010001 00100010 00110011 01000100 01010101 01100110 01110111 10001000 10011001 00000000 10101010 10111011 11001100 11011101 11101110 11111111,

BitToByte (0 I попсву

11 22 33 44 55 66 77 88 99 00 ААВВ СС DD ЕЕ FF

Ниже приведен пример перевода байтового представления попсе в битовое для случая п = 128 Байтовое представление попсе 11 22 33 44 55 66 77 88 99 00 ААВВ СС DD ЕЕ FF 0 I попсе

00010001 00100010 00110011 01000100 01010101 01100110 01110111 1000100010011001 0000000010101010 10111011 11001100 11011101 11101110 11111111. попсе с Уд.,:

0010001 00100010 00110011 01000100 01010101 01100110 01110111 10001000 10011001 00000000 10101010 10111011 1100110011011101 11101110 11111111.

Приложение Б (справочное)

Контрольные примеры

Данное приложение носит справочный характер и не является частью настоящих рекомендаций В данном приложении содержатся примеры работы блочного шифра «Кузнечик» и «Магма» в режиме MGM, определенном в настоящих рекомендациях Параметр S выбран равным л Б.1 Пример для блочного шифра «Кузнечик»

На вход функции MGM-Encrypt подается набор аргументов (К, попев, А, Р), принимающих следующие значения:

-    К

88 99 АА ВВ СС DD ЕЕ FF 00 11 22 33 44 55 66 77 FE DC ВА 98 76 54 32 10 01 23 45 67 89 АВ CD EF.

-    попев

11 22 33 44 55 66 77 00 FF ЕЕ DD СС ВВАА99 88,

-    А

02 02 02 02 02 02 02 02 01 01 01 01 01 01 01 01 04 04 04 04 04 04 04 04 03 03 03 03 03 03 03 03 ЕА05 05 05 05 05 05 05 05.

-    Р

11 22 33 44 55 66 77 00 FF ЕЕ DD СС ВВ АА99 88 00 11 22 33 44 55 66 77 88 99ААВВ СС ЕЕ FF 0А 11 22 33 44 55 66 77 88 99ААВВ CCEEFF0A00 22 33 44 55 66 77 88 99 АА ВВ СС ЕЕ FF 0А 00 11 АА ВВ СС

Б.1.1 Зашифрование открытого текста Р

0 И попев

11 22 33 44 55 66 77 00 FF ЕЕ DD СС ВВ АА99 88 Y1=

7F 67 9D 90 BE ВС 24 30 5А 46 8D 42 В9 D4 ED CD.

Ек(у

В8 57 48 C512F3 19 90AA56 7EF1 53 35 DB 74

У2

7F 67 9D 90 BE ВС 24 30 5А 46 8D 42 В9 D4 ED СЕ

80 64 F0 12 6F АС 9В 2С 5В 6Е АС 21 61 2F 94 33

уз

7F 67 9D 90 BE ВС 24 30 5А 46 8D 42 В9 D4 ED CF.

58 58 82 1D40 СО CD 0D 0АС1 Е6 С2 47 09 8F 1C.

>4

7F 67 9D 90 BE ВС 24 30 5А 46 8D 42 В9 D4 ED DO Ek<Y4)

E4 3F 50 81 B5 8F 0B 49 01 2F 8E E8 6A CD 6D FA V5

7F 67 9D 90 BE BC 24 30 5A 46 8D 42 B9 D4 ED D1.

5с<Г5>

86 СЕ 9E2A0A1225 E3 33 56 91 82 0D5A33 48 C:

A9 75 7B 81 47 95 6E 90 55 B8 A3 3D E8 9F 42 FC 80 75 D2 21 2B F9 FD 5B D3 F7 06 9AAD Cl 6B 39 49 7A B1 59 15 A6 BA 85 93 6B 5D 0E A9 F6 85 1C C6 0C 14 D4 D3 F8 83 DO AB 94 42 06 95 C7 6D E8 2C 75 52

Б 1 2 Дополнение последнего блока дополнительных имитозащищаемых данных и последнего блока шифр-текста до длины п A- A I... I Ail 02 0202 02 02 02 02 02 01 01 01 01 01 01 01 01 04 04 04 04 04 04 04 04 03 03 03 03 03 03 03 03 ЕА 05 05 05 05 05 05 05 05 00 00 00 00 00 00 00 С = С D НС"

А9 75 7В 81 4? 95 6Е 90 55 В8 АЗ 3D Е8 9F 42 FC 80 75 D2 21 2В F9 FD 5В D3 F7 06 9AAD Cl 6В 39 49 7А В1 59 15 А6 ВА 85 93 6В 5D 0Е А9 F6 85 1C С6 ОС 14 D4 D3 F8 83 DO АВ 94 42 06 95 С7 6D ЕВ 2С 75 52 00 00 00 00 00 00 00 00 00 00 00 00 00

Б. 1.3 Выработка значения имитовставки Т от дополнительных имитозащищаемых данных А и шифртекста С происходит следующим образом 1 I попев

91 22 33 44 55 66 77 00 FF ЕЕ DD СС ВВАА99 88

7F С2 45 А8 58 6Е 66 02 А7 ВВ DB 27 86 BD С6 6F

8D В1 87 D6 53 83 0Е А4 ВС 44 64 76 95 2С 30 ОВ *2

7F С2 45 А8 58 6Е 66 03 А7 ВВ DB 27 86 BD С6 6F

нг

7А24 F7 26 30 E3 76 37 21 С8 F3CDB1 DA0E31.

*3

7F С2 45 А8 58 6Е 66 04 А7 ВВ DB 27 86 BD С6 6F

«3

44 11 96 21 17D2 06 35 C5 25E0A2 4D В4 В9 ОА 7F С2 45 А8 58 6Е 66 05 А7 ВВ DB 27 86 BD С6 6F

н4.

D8 С9 62 ЗС 4D BF Е8 14 СЕ 7С 1C ОС ЕА А9 59 DB

7F С2 45 А8 58 6Е 66 06 А7 ВВ DB 27 86 BD С6 6F "5

А5 El F1 95 33 ЗЕ 14 82 96 99 31 BF BE 6D FD 43 *6

7F С2 45 А8 58 6Е 66 07 А7 ВВ DB 27 86 BD С6 6F Н*

В4 СА 80 8С AC CF ВЗ F9 17 24 Е4 8А2С 7Е Е9 D2

Ч

7F С2 45 А8 58 6Е 66 08 А7 ВВ DB 27 86 BD С6 6F "7

72 90 8F СО 74 Е4 69 Е8 90 1BD1 88ЕА91 С3 31

z$-

7F С2 45 А8 58 6Е 66 09 А7 ВВ DB 27 86 BD С6 6F

н*

23 СА27 15 ВО 2С 68 31 3BFDAC ВЗ 9Е 4D OF В8

Ч

7F С2 45 А8 58 6Е 66 ОА А7 ВВ DB 27 86 BD С6 6F,

Н*

ВС 8С Е6 С4 1ААЗ 55 А4 14 88 62 BF 64 8D 83 0D. len(A)»/ел(С):

00 00 00 00 00 00 01 48 00 00 00 00 00 00 02 18

т

CF 5D 65 6F 40 СЗ 4F 5С 46 Е8 ВВ ОЕ 29 FC DB 4С Б.2 Пример для блочного шифра «Магма»

На вход функции MGM-Encrypt подается набор аргументов (К. попев, А, Р), принимающих следующие значения:

-    К:

FF EE DD CC BBAA99 88 77 66 55 44 33 22 11 00 F0 FI F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF.

-    nonce

12 DE F0 6B3C13 0A59;

-    A:

01 01 01 01 01 01 01 01 02 02 02 02 02 02 02 02 03 03 03 03 03 03 03 03 04 04 04 04 04 04 04 04 05 05 05 05 05 05 05 05 EA;

-    R

FF EE DD CC BBAA99 88 11 22 33 44 55 66 77 00 88 99AABBCCEE FF0A00 11 22 33 44 55 66 77 99 AA BB CC EE FF 0A00 11 22 33 44 55 66 77 88 AA BB CC EE FF OA 00 11 22 33 44 55 66 77 88 99 AA BB CC.

Б.2.1 Зашифрование открытого текста P

О II nonce

12 DE F0 6B3C13 0A59 56 23 89 01 62 DE 31 BF

38 7BDBA0E4 34 39 B3

У*

56 23 89 01 62 DE 31 CO

*К<У2>:

94 33 00 06 10 F7 F2AE.

У3

56 23 89 01 62 DE 31 Cl EK(Yз):

97 B7AA6D 73 C5 87 57

У4

56 23 89 01 62 DE 31 C2 £к(*4)

94 15 52 8B FF C9 E8 OA y5-

56 23 89 01 62 DE 31 C3

03 F7 68 BF FI 82 D6 70 У6

56 23 89 01 62 DE 31 C4 ^к(уб)

FD 05 F8 4E 9B 09 D2 FE

Yf

56 23 89 01 62 DE 31 C5 7)

DA4D90 8A95B1 75 C4 У8

56 23 89 01 62 DE 31 C6

£к(у8>

65 99 73 96 DA C2 4B D7. y9

56 23 89 01 62 DE 31 C7.

£к(у9>:

A9 00 50 4A 14 8D EE 26

C:

C7 95 06 6C5F 9EA0 3B 85 11 33 42 45 91 85 AE IF 2E 00 D6 BF 2B 78 5D 94 04 70 B8 BB 9C 8E 7D 9A5D D3 73 IF 7D DC 70 EC 27CB0ACE 6FA5 76

70 F6 5C64 6ABB 75 D5 47AA37 СЗ ВС В5 СЗ 4Е 03 ВВ 9С

Б.2.2 Дополнение последнего блока дополнительных имитозащищасмых данных и последнего блока шифртекста до длины п

А — A I I Ал1 01 01 01 01 01 01 01 01 02 02 02 02 02 02 02 02 03 03 03 03 03 03 03 03 04 04 04 04 04 04 04 04 05 05 05 05 05 05 05 05 ЕА 00 00 00 00 00 00 00 С = С, I... II С

С7 95 06 6С 5F 9Е АО 38 85 11 33 42 45 91 85 АЕ IF 2Е 00 D6 BF 2В 78 5D 94 04 70 В8 ВВ 9С 8Е 7D 9А 5D D3 73 IF 7D DC 70 ЕС 27 СВ 0АСЕ 6F А5 76 70 F6 5С 64 6А ВВ 75 D5 47 АА 37 СЗ ВС В5 СЗ 4Е

03    ВВ 9С 00 00 00 00 00

Б.2.3 Выработка значения имитовставки 7 от дополнительных имитозащищаемых данных А и шифртекста С происходит следующим образом:

1 I попев

92 DE F0 6ВЗС 13 0А59 Zy

2В 07 3F04 94 F3 72 АО Ну

70 8A78 19 1CDD22AA

2В 07 3F 05 94 F3 72 АО

н2

6F 02 СС 46 4В 2FA0A3 23

2В 07 3F 06 94 F3 72 АО "У

9F 81 F2 26 FD 19 6F 05 2В 07 3F 07 94 F3 72 АО

НА

В9 С2АС9В Е5 В5 DF F9

Zy

2В 07 3F 08 94 F3 72 АО Ну

74 В5 ЕС 96 55 IB F8 88

4

2В 07 3F 09 94 F3 72 АО Ну

7Е ВО 21 А4 03 5В 04 СЗ

Ч

2В 07 3F 0А 94 F3 72 A0 Ну.

С2А9СЗА8 70 4D9B ВО Zy

2В 07 3F 0В 94 F3 72 АО Ну

F5 D5 05А8 7В 83 83 В5.

2В 07 3F ОС 94 F3 72 АО Ну

F7 95 Е7 5F DE В8 93 ЗС Z\o

2В 07 3F 0D94 F3 72 АО

65 A1 АЗ E6 80 F0 81 45 ^11:

2B 07 3F OE 94 F3 72 AO

H„:

1C74A5 76 4C BO D5 95. Z,2:

2B 07 3F OF 94 F3 72 AO H\i

DC 84 47 A5 14 E7 83 E7. Z13

2B 07 3F10 94 F3 72 AO H13:

A7 E3AFE0 04EE 16 E3.

^14

2B 07 3F11 94 F3 72 AO "и

A5AABB OB 79 80 DO 71. ^15

2B 07 3F12 94 F3 72 AO

H\S

6E 10 4C C9 33 52 5C 5D. z\6

2B 07 3F 13 94F3 72 AO

H ie

83 11 B6 02 4AA9 66C1. ten (A) I len (C):

00 00 01 48 00 00 02 18 T:

A7 92 80 69 AA 10 FD 10

УДК 681.3.06:006.354    OKC    35.040    ОКСТУ    5002    П85

Ключевые слова: зашифрование, расшифрование, имитозащита. режим работы блочного шифра, ключ

БЗ 10—2019/64

Редактор Я С Зимилова Технический редактор И Е Черепкова Корректор ЕД Дульнееа Компьютерная верстка А Н Золотаревой

Сдано в набор 10 09 2019. Подписано в печать 25.11.2019 Формат 60 « 84'/8 Гарнитура Ариал

Уел печ л 1.86 Уч-изд л. 1.49,

Подготовлено на основе электронной версии, предоставленной раэработчиком стандарта

Создано в единичном исполнении во ФГУП «СТАНДАРТИНФОРМ» для комплектования Федерального информационного фонда стандартов. 117418 Москва. Нахимовский пр-т. д. 31. к. 2. www gostmfo ru mfo@gostmfo nj

Содержание

1    Область применения.................................................................1

2    Нормативные ссылки.................................................................1

3    Обозначения и сокращения...........................................................1

3.1    Обозначения....................................................................1

3.2    Сокращения.....................................................................3

4    Общие положения...................................................................3

5    Режим MGM........................................................................3

5.1    Зашифрование..................................................................3

5.2    Расшифрование.................................................................5

Приложение А (справочное).............................................................7

Приложение Б (справочное).............................................................8

Б.1 Пример для блочного шифра «Кузнечик»..............................................8

Б.2 Пример для блочного шифра «Магма»................................................9

Введение

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

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

Примечание — Основная часть настоящих рекомендаций дополнена приложениями А и Б

РЕКОМЕНДАЦИИ ПО СТАНДАРТИЗАЦИИ

Информационная технология

КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ

Режимы работы блочных шифров, реализующие аутентифицированное шифрование

Information technology Cryptographic data security Authenticated encryption block cipher operation modes

Дата введения — 2019—12—01

1 Область применения

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

2 Нормативные ссылки

В настоящих рекомендациях использована нормативная ссылка на следующий стандарт:

ГОСТ Р 34.12-2015 Информационная технология. Криптографическая защита информации. Блочные шифры.

Примечание — При пользовании настоящими рекомендациями целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю «Национальные стандарты», который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя «Национальные стандарты» за текущий год Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящих рекомендаций в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, применяется в части, не затрагивающей эту ссылку

3 Обозначения и сокращения

3.1 Обозначения

В настоящих рекомендациях использованы следующие обозначения:

Издание официальное

—    множество битовых строк длины s, s > 0; нумерация подстрок и компонент строки осуществляется слева направо, начиная с единицы. При s = 0 множество Vs состоит из единственной пустой строки длины 0;

V.

V*

Bs

—    множество всех битовых строк конечной длины, включая пустую строку;

—    множество байтовых строк длины s.siO. Строка а = (а,.....принадлежит множеству б5. если а,.....as е {0.....255};    при    этом элементы а,.....as называются бай

|в|

a5

0

тами строки а. При s = 0 множество Bs состоит из единственной пустой строки длины 0;

—    длина битовой строки а с V (если а — пустая строка, то |а| = 0);

—    конкатенация битовых строк; если а = (а,.....as1) с Vs1, Ь = (Ь,.....bs2)cVs2, то а II

b называется строка (а,.....as1. *1.....

—    битовая строка длины s вида а5 = (а. а.....а), а е V,. а5 с Vs:

—    операция покомпонентного сложения по модулю 2 двух битовых строк одинаковой длины;

m

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

fa/=a1e...eam;

Z2 S

MSB,: Vs-> V' lnt5.Vs-*z2s Vecs: Z2s -* Vs

к

—    кольцо вычетов по модулю 2s;

—    отображение, ставящее в соответствие битовой строке а = (а,.....а^ € Vs строку

MS8,(a) = (а,.....а) с Ц. 1 < / s s;

—    отображение, ставящее в соответствие битовой строке а = (а,.....а^ с Vs число

lnts(a) = 2s-1 а, +...+2° as;

—    отображение, обратное к отображению lnts:

—    отображение, реализующее базовый блочный шифр и осуществляющее преобразование блока открытого текста PcVnc использованием ключа (шифрования) К с Vk в блок шифртекста С с Vn: Е(Р. К) = С,

—    отображение, реализующее функцию зашифрования с использованием ключа К с У*, т е. ЕК(Р) = Е(Р. К) для всех Р с У„;

—    параметр блочного шифра, называемый длиной блока, в рамках настоящих рекомендаций измеряемый в битах и соответствующий значению 64 или 128;

—    отображение, ставящее в соответствие строке а е V5 строку len(a) = Vecnl2(\a\) €

V**

—    операция сложения в кольце Z2пГ2:

—    отобоажение ставящее в соответствие лвум стокам а - (а.. а~.....аЛ и Ь = (Ь..

—    параметр блочного шифра, называемый длиной ключа, в рамках настоящих рекомендаций измеряемый в битах;

п

toiV'-Vno

ЗЭл/2

—----------------------------------— —-------- -!•-<.....-IK— П.

b2.....bn).    a. b с строку с = a ® б = (c,. c2 c„). c e Vn: строка с соответствует многочлену c(x) = c, • x"-1    - x + cn, который является результатом

умножения двух многочленов а(х) = а, • х*-1 +...+аг>_1 • х + а„ и б(х) = Ь, • х*-1 + + ...+ бг>_1 • х + Ьп в поле GF(2n): для л = 64 задан порождающий многочлен f(x) = = х64 + х* + х3 + х+1, дляп = 128 задан порождающий многочлен /(х) = х128 + х7+ + х* + х + 1;

incTj.Vf, -* Vn — отображение, сопоставляющее строке L II R. где L, R £ Vnr2. строку incr, (LIR) = Vecni2(lntnl2(L) ffln,2 1)1 R:

incry.Vn — Vn    — отображение, сопоставляющее строке L I R, где L. R £ Vnr2, строку incrr

(L I R) = L I Vecnt2 (Int^R) ffln/2 1);

BitToByte:VQs —» Bs — биективное отображение, ставящее в соответствие битовой строке а = (а,. а2.....

a8s). а с Vgj. байтовую строку b = (/>,. Ь2.....65). b с Б5, где bt = а1+8(М) • 27 +

+ &2*8(t-i)' 26 ++ ae*8(f-i)' 2®, /= 1, 2.....$;    при этом строка 6 называется байто

вым представлением строки а;

ByteToBit:Bs —    —    биективное    отображение,    обратное    к отображению BitToByte

3.2 Сокращения

В настоящих рекомендациях применены следующие сокращения:

-    AAD — (Additional Authenticated Data) — дополнительные имитозащищаемые данные;

-    AEAD — (Authenticated Encryption with Associated Data) шифрование с имитозащитой и ассоциированными данными;

-    попсе — (number used once) уникальный вектор.

4    Общие положения

Настоящие рекомендации определяют режим MGM (Multilinear Galois Mode) — режим работы блочного шифра. Данный режим можно использовать в качестве режима работы блочного шифра с длиной блока л = 64 или п = 128. Для определенных в ГОСТ Р 34.12-2015 блочных шифров «Магма» и «Кузнечик», используемых в режиме MGM. выделены идентификаторы 1.2.643.7.1.1.5.1.3 (id-tc26-cipher-gostr3412-2015-magma-mgm) и 1.2 643.7.1.1.5.2.3 (id-tc26-cipher-gostr3412-2015-kuznyechik-mgm) соответственно.

Данный режим является AEAD-режимом и обеспечивает конфиденциальность и имитозащиту сообщений. При этом сообщения могут состоять из одной или двух частей. Если сообщение состоит из двух частей, то первая часть содержит дополнительные имитозащищаемые данные AAD и обозначается через А, а вторая часть называется открытым текстом и обозначается через Р. Если сообщение состоит из одной части, то пустой строке должны быть равны либо дополнительные имитозащищаемые данные, либо открытый текст. Дополнительные имитозащищаемые данные не подлежат шифрованию, но требуют имитозащиты. Для открытого текста обеспечены конфиденциальность и имитозащита.

Параметром режима MGM является длина имитовставки S. выраженная в битах. 32 £ S £ п. Значение S должно быть зафиксировано в рамках каждого конкретного протокола исходя из требований к производительности системы и требований к стойкости режима относительно угрозы нарушения имитозащиты.

5    Режим MGM

5.1 Зашифрование

Процесс зашифрования сообщения, изображенный на рисунке 1. осуществляется при помощи функции MGM-Encrypt.

Функция MGM-Encrypt принимает на вход следующие значения:

-    ключ шифрования К £ V

-    уникальный вектор попсе с Vf>_1. Значение вектора попсе должно быть уникальным для каждого сообщения при фиксированном ключе К. Выработка уникальных векторов может быть реализована с использованием счетчика;

-    дополнительные имитозащищаемые данные А, 0 < |А| < 2Я/2. Дополнительные имитозащищаемые данные разбивают на h блоков и представляют в виде А = А, ||...|| Ай*. где А; € Vn,j = 1.2,..., /1-1. Ah* с Vf, 1 S t S n. Если длина дополнительных имитозащищаемых данных нулевая, то последний блок Ah* равен пустой строке, а значения параметров Ли/ устанавливаются следующим образом: h = 0. / = л;

-    открытый текст Р. 0 £ |Р] < 2п'2. Открытый текст разбивают на q блоков и представляют в виде

Р = Р1 ||...|| Pqm, где Pt с Vn, i = 1.2.....q - 1. Pq“ £ Vu. 1 5 и S n. Если длина открытого текста нулевая, то

последний блок открытого текста Pq равен пустой строке, а значения параметров q и и устанавливаются следующим образом: q = 0. и = п.

При этом длины |Л| и \Р\ должны удовлетворять следующему ограничению: 0 < |А| + |Р| < 2я'2.

Функция MGM-Encrypt в результате своей работы возвращает следующие значения:

-    уникальный вектор попсе € V^:

-    дополнительные имитозащищаемые данные А.

-    шифртекст

-    имитовставка Те Vs.

Н\    w*+«+i

Рисунок 1 — Зашифрование сообщения в режиме MGM

Процесс зашифрования сообщения с помощью функции MGM-Encrypt состоит из следующих этапов.

5.1.1    Зашифрование открытого текста Р

У, = Ек( 01| попсе):

У( = //7сггм),/ = 2,3.....q:    (1)

q = P/®EK(y<)./=1.2.....<7-1;

Cq - Pq ф AIS8U (EJYJ).

Результатом данного этапа является шифртекст С = С, II...I Cq.

В случае если открытый текст Р равен пустой строке, то шифртекст С также полагается равным пустой строке.

5.1.2    Дополнение последнего блока дополнительных имитозащищаемых данных Ah* € Vt и последнего блока шифртекста Cq с Vu до длины п:

Ah = V * о*"*:

5.1.3 Выработка значения имитовставки Т от дополнительных имитозащищаемых данных А и шифртекста С:


Z1 = Ек (1 II попсе):


Z, = incr, (ZM), / = 2,3.....h + q + 1;

H' = EK(Z),i= 1,2.....Л + g+ 1;


(3)


Г = MSBs (ek (£ (H, ® A,) ® £ (H„, ® C;) Ф , ® (fen(Д)||/en(c))j .

Результатом данного этапа является значение имитовставки Т.

5.2 Расшифрование

Процесс расшифрования сообщения, изображенный на рисунке 2. осуществляется при помощи функции MGM-Decrypt.


-1)

-2)

Ну

Н,

Л+Ч+1


0 II попсе -*&*■*'>


incrr


\MSBU\


-3)


Л

Рисунок 2 — Расшифрование сообщения в режиме MGM


Функция MGM-Decrypt принимает на вход следующие значения:

-    ключ шифрования К с КЛ;

-    уникальный вектор попсе е Vn_

-    дополнительные имитозащищаемые данные А. 0 < |Л| < 2п!2. Дополнительные имитозащищае-

мые данные разбивают на h блоков и представляют в виде А = Л, I...I Ah\ где А{ е Vn,j = 1,2.....Л - 1,


Ah* £ V,, 1 </Sr). Если длина дополнительных имитозащищаемых данных нулевая, то последний блок Ah* равен пустой строке, а знамения параметров h и t устанавливаются следующим образом: h = 0. t = л.

-    шифртекст С. 0 £ |С| < 2пГ2. Шифртекст разбивают на q блоков и представляют в виде С =

= Су I...I Cq, где С,€ Vn, I-1.2 q- 1. Cq с l/u, 1 £ ий п. Если длина шифртекста нулевая, то последний

блок шифртекста Cq‘ равен пустой строке, а значения параметров q и и устанавливаются следующим образом: q = 0. и = п\

-    имитовставка 7 с Vs.

Функция MGM-Decrypt в результате своей работы возвращает либо ошибку, либо следующие значения:

-    дополнительные имитозащищаемые данные А.

-    открытый текст Ре V,q.

Процесс расшифрования сообщения с помощью функции MGM-Decrypt состоит из следующих этапов.

5.2.1 Дополнение последнего блока дополнительных имитозащищаемых данных Ah" е Vt и последнего блока шифртекста Cq с Vu до длины п:

(4)


Ah = Ah'l 0^; Cq = Cq II 0"“u.

5.2.2 Выработка значения Т от дополнительных имитозащищаемых данных А и шифртекста С:

Zy = Ек (1 I попсе)-,

(5)

Z, = incr, (Z^y), i = 2.3.....h*q* 1;


/-i


V = MS8s


Hj = EK (Zj), / = 1.2.....h + q* 1;

Если выработанное значение Г отлично от значения Т, то возвращается ошибка. Если значения Г и 7совпали, то осуществляется переход к следующему этапу,

5.2.3 Расшифрование шифртекста С:

У, = Ек (0 I попсе),

Yf-incrr( Ум),/ = 2.3.....<г,

р^ = q 0 Ек (У^). / = 1.2.....q- 1;    (6)

Pq- = Cq-®MSBu(EK(YJ).

Результатом данного этапа является открытый текст Р= Р, ||...|| Pq.

В том случае если шифртекст С равен пустой строке, то открытый текст Р также полагается равным пустой строке.

В результате своей успешной работы функция MGM-Decrypt возвращает набор данных (Л, Р). В противном случае функция возвращает сообщение об ошибке.