Статус документа
Статус документа

Р 50.1.113-2016

Группа П85

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

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

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

Криптографические алгоритмы, сопутствующие применению алгоритмов электронной цифровой подписи и функции хэширования

Information technology. Cryptographic data security. Cryptographic algorithms to accompany the usage of digital signature and hash function algorithms



ОКС 35.040

ОКСТУ 5002

Дата введения 2017-06-01

    

Предисловие

1 РАЗРАБОТАНЫ подкомитетом N 1 Технического комитета по стандартизации ТК 26 "Криптографическая защита информации"

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

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

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


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


ВНЕСЕНА поправка, опубликованная в ИУС N 11, 2020 год

Поправка внесена изготовителем базы данных

Введение


Использование национальных криптографических алгоритмов, определенных ГОСТ Р 34.10 и ГОСТ Р 34.11, в средствах защиты информации осуществляют, как правило, в рамках криптографических протоколов, базирующихся на сопутствующих алгоритмах.

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

Необходимость разработки настоящих рекомендаций вызвана потребностью в обеспечении совместимости криптографических протоколов различных производителей, использующих алгоритмы ГОСТ Р 34.10 и ГОСТ Р 34.11.

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

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


Настоящие рекомендации предназначены для применения в информационных системах, использующих механизмы шифрования и защиты аутентичности данных, с использованием алгоритмов электронной (цифровой) подписи по ГОСТ Р 34.10 и функции хэширования по ГОСТ Р 34.11 в общедоступных и корпоративных сетях для защиты информации, не содержащей сведений, составляющих государственную тайну.

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


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

ГОСТ Р 34.10-2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи

ГОСТ Р 34.11-2012 Информационная технология. Криптографическая защита информации. Функция хэширования

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

     3 Термины, определения и обозначения

     

     3.1 Термины и определения


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

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

3.1.2 ключ K: Произвольный элемент из V, если , то его длина равна n бит, где n может быть произвольным натуральным числом.

3.1.3 псевдослучайная функция PRF: Отображение, позволяющее вырабатывать псевдослучайные последовательности байтов.

3.1.4 функция диверсификации KDF: Отображение, позволяющее порождать производные ключи и ключевой материал по корневому ключу и произвольным данным с использованием псевдослучайной функции.

3.1.5 выработка ключей обмена VKO: Алгоритм согласования ключей (основан на алгоритме Диффи-Хеллмана и некоторой хэш-функции).

3.1.6 битовое представление: Для элемента , битовым представлением называют вектор , где ,  являются элементами пространства V.

3.1.7 байтовое представление: Если n кратно r=n/8, то байтовым представлением элемента , называют байтовый вектор , , где , являются элементами пространства V.

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


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

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

V - конечномерное векторное пространство над GF(2) размерности n с операцией сложения ; при n, равном 0, пространство V состоит из единственного пустого элемента длины 0; если U - элемент V, то в битовом представлении , ;

V - множество байтовых векторов длины r, ; при r=0 множество состоит из единственного пустого вектора длины 0; если W - элемент V, r>0, то в байтовом представлении , где w, w,..., w принадлежат пространству V;

A|B - конкатенация байтовых векторов A и B; если , ; , , то , ;

H - хэш-функция Н с длиной выхода, равной 256 битам, определенная в ГОСТ Р 34.11-2012 (раздел 8);

Н - хэш-функция Н с длиной выхода, равной 512 битам, определенная в ГОСТ Р 34.11-2012 (раздел 8).

(Поправка. ИУС N 11-2020).

     4 Описание алгоритмов


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

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

- функции, описанные в 4.2;

- алгоритм диверсификации KDF_TREE_GOSTR3411_2012_256, описанный в 4.5.

Далее все данные (элементы пространства V), если явно не указано иное, считают приведенными в байтовом представлении.

Если используемая функция определена вне настоящего документа (например, Н) и ее определение использует аргументы в битовом представлении, то подразумевается, что битовое представление аргументов формируется непосредственно перед вычислением функции (в частности, только после применения операции "|" к байтовому представлению аргументов).

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

     4.1 Алгоритмы НМАС


В настоящем подразделе определены алгоритмы вычисления кода аутентификации сообщения НМАС на основе хэш-функции Н, определенной в ГОСТ Р 34.11-2012 (раздел 8) с различными длинами выходных значений.

4.1.1 HMAC_GOSTR3411_2012_256

Алгоритм HMAC_GOSTR3411_2012_256 предназначен для вычисления кода аутентификации сообщения НМАС на основе хэш-функции с длиной выхода, равной 256 битам, определенной в ГОСТ Р 34.11-2012 (раздел 8), и имеет следующий идентификатор:

id-tc26-HMAC-gost-3411-12-256, "1.2.643.7.1.1.4.1".


Результатом работы данного алгоритма является значение функции HMAC(K,T), вычисление которой для данных Т произвольной длины на ключе K длины n бит состоит в формировании байтовой строки K* длины 64 байта и выполнении преобразований над K* и данными Т с использованием хэш-функции Н.

Допускаются любые значения длины n из интервала от 256 до 512.

Для формирования ключа K* при n<512 следует положить строку равной байтовому представлению битовой строки K|А, где ; если n=512 положить K* равной байтовому представлению K. Значение HMAC(K,T) определено выражением:

,                     (1)


где в байтовом представлении

,

.


Данный алгоритм использует H в качестве хэш-функции в конструкции НМАС, описанной в [1]. Указанный способ формирования ipad и opad также приведен в [1]. Длина выхода HMAC равна 32 байтам, длина блока итерационной процедуры функции сжатия для H  равна 64 байтам (в обозначениях [1]: L=32, В=64).

4.1.2 HMAC_GOSTR3411_2012_512

Доступ к полной версии документа ограничен
Этот документ или информация о нем доступны в системах «Техэксперт» и «Кодекс».