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

     
Р 50.1.112-2016

Группа П85

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

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

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

Транспортный ключевой контейнер

Information technology. Cryptographic data security. Transport key container



ОКС 35.040

ОКСТУ 5002

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

Предисловие

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

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

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

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


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

Введение


Настоящие рекомендации содержат расширения документов PKCS#8 "PrivateKey Information Syntax Standard" версии 1.2* [1] и PKCS#12 "Personal Information Exchange Syntax" версии 1.0 [2], описывающие формирование транспортных ключевых контейнеров для ключей, созданных в соответствии с ГОСТ Р 34.10.

________________

* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - Примечание изготовителя базы данных.


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

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

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


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

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


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

ГОСТ 28147-89 Системы обработки информации. Защита криптографическая. Алгоритмы криптографического преобразования

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

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

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

Р 50.1.111-2016 Информационная технология. Криптографическая защита информации. Парольная защита ключевой информации

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

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

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


Р - пароль, представляющий собой символьную строку в кодировке Unicode UTF-8;

S - случайное значение синхропосылки;

II - конкатенация двух байтовых строк; для двух байтовых строк , их конкатенацией называется байтовая строка .

     4 Представление ключей ГОСТ Р 34.10 и ГОСТ 28147-89


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

Алгоритм наложения маски определен базовой операцией криптографического преобразования алгоритма. Для ключей по ГОСТ Р 34.10 это умножение в поле F, для ключей по ГОСТ 28147-89 - сложение по модулю 2.

Задана последовательность из k масок . Через обозначают операцию наложения i-й маски, а через - операцию снятия i-й маски, . Имеется ключ K. Маскированный ключ K получается в результате k-кратного применения операции наложения маски, а именно . Демаскирование выполняется при помощи k-кратного применения операции снятия маски, но в обратном порядке, а именно . Маскированный ключ представляется как последовательность , где "||" - операция конкатенации. Предположим, ключ K имеет n двоичных разрядов, тогда для представления в памяти последовательности I понадобится (k+1)n двоичных разрядов или k+1 n-разрядных блоков.

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

Таким образом, пара ключей для алгоритма по ГОСТ Р 34.10 представлена в виде:

GostR3410-2012-KeyValuelnfo :: = SEQUENCE{

GostR3410-2012-KeyValueMask,

GostR3410-2012-PublicKey }, где

GostR3410-2012-KeyValueMask ::= OCTET STRING { K||M||M||....||M}, и

GostR3410-2012-PublicKey :: = OCTET STRING {PubKeyX|PubKeyY}.

Для алгоритма ГОСТ 28147-89 ключ представляется в виде:

Gost28147-89-Key-KeyValueMask ::= OCTET STRING { K||M||M||....||M}

Возможно использование немаскированного закрытого ключа (т.e. k=0, ).

Для обеспечения унификации между представлениями ключей в PFX и сертификатах формата Х.509, как секретный, так и открытый ключи представляются в формате little-endian (старший байт справа).

Операцией наложения маски является умножение ключа на число, обратное маске:

,


где значение Q взято из параметров ключа. Соответственно операцией снятия маски является умножение маскированного ключа на маску:

.

     4.1 Портфель ключевой информации KеyBаg


В соответствии с [1] и [2] портфель ключевой информации KеуВаg представлен в следующем виде:

PrivateKeyInfo ::= SEQUENCE {

version Version,

privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,

privateKey PrivateKey,

attributes [0] IMPLICIT Attributes OPTIONAL}

Version ::= INTEGER

Версия структуры на данный момент равна нулю.

PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier

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

PrivateKey ::= OCTET STRING

Содержимым данного типа является значение закрытого ключа, закодированное в соответствии с типом GostR3410-2012-PrivateKey:

GostR3410-2012-PrivateKey ::= CHOICE {

GostR3410-2012-KeyValueMask,

GostR3410-2012-KeyValuelnfo }

Attributes ::= SET OF Attribute

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

Ключ в зашифрованном виде представлен в виде структуры:

EncryptedPrivateKeyInfo ::= SEQUENCE {

encryptionAlgorithm EncryptionAlgorithmldentifier,

encryptedData EncryptedData }

EncryptionAlgorithmldentifier ::= AlgorithmIdentifier

При шифровании должен быть использован алгоритм PBES2 по Р 50.1.111-2016. Алгоритм и параметры шифрования EncryptionAlgorithmldentifier указаны в соответствии с Р 50.1.111-2016.

EncryptedData ::= OCTET STRING

Содержимым данного типа является результат зашифрования кодированной структуры PrivateKeyInfo.

     4.2 Данные, защищаемые в транспортном ключевом контейнере


В соответствии с 4.1 [2] каждый раздел транспортных ключевых контейнеров (далее - ТКК), содержащий конфиденциальные сведения, должен быть зашифрован в рамках ContentInfo типа AuthenticatedSafe. Портфель сертификата (CertBag - см. 4.2.3 [2]), соответствующий присутствующему в ТКК портфелю закрытого ключа (KеуВаg), несет в себе информацию, облегчающую потенциальному злоумышленнику задачу первичного анализа перехваченного зашифрованного сообщения, в частности по данным, содержащимся в сертификате, можно получить информацию о владельце секретного ключа. В этой связи содержащийся в ТКК CertBag также может быть зашифрован.

Формирование парольного ключа для шифрования различных ContentInfo и портфелей закрытого ключа KеуВаg должно быть осуществлено с использованием различных уникальных синхропосылок, что исключает повторное использование одного и того же секретного ключа для шифрования различных разделов ТКК.

     4.3 Обеспечение целостности и конфиденциальности ключей

Доступ к полной версии документа ограничен
Этот документ или информация о нем доступны в системах «Техэксперт» и «Кодекс».
Нужен полный текст и статус документов ГОСТ, СНИП, СП?
Попробуйте «Техэксперт: Лаборатория. Инспекция. Сертификация» бесплатно
Реклама. Рекламодатель: Акционерное общество "Информационная компания "Кодекс". 2VtzqvQZoVs