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


Р 50.1.110-2016

Группа П85

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

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

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

Контейнер хранения ключей

Information technology. Cryptographic data security. Key storage container

ОКС 35.040

ОКСТУ 5002

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

Предисловие

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

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

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

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


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


Введение

Настоящие рекомендации содержат описание расширения документа PKCS#15 "Cryptographic Token Information Format Standard"* [1], разработанного и опубликованного RSA Laboratories. Он описывает синтаксис представления ключевой информации, цифровых сертификатов, аутентификационной информации и других данных при их хранении на внешних носителях.

________________

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


Данное расширение [1] позволяет использовать синтаксис базового стандарта для создания контейнеров хранения ключевой информации, используемой в криптографических алгоритмах по ГОСТ Р 34.10 и ГОСТ 28147-89.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В настоящих рекомендациях применены термины, определения и обозначения, определенные в документах, приведенных в разделе "Библиография".

     4 Базовые типы [1]

Базовые типы подробно описаны в 6.1 [1]. Этих базовых типов достаточно для спецификации информации о ключах, включая назначение ключей, сроки действия, данные о владельце, издателе и т.п.

В [1] отсутствует определение "имя контейнера", и для наименования объектов применена метка (6.1.3 [1]).

Label ::= UTF8String (SIZE(0..pkcs15-ub-label))

Объекты закрытых, открытых ключей и сертификатов содержат идентификатор iD (см. структуры CommonKeyAttributes, CommonCertificateAttributes [1]). Идентификатор имеет следующий тип:

Identifier ::= OCTET STRING (SIZE(0..pkcs15-ub-identifier).

Идентификатор является уникальным для объекта одного типа в рамках одного контейнера [1]. Совпадение идентификаторов объектов разного типа означает их взаимосвязь. Например, соответствие закрытого ключа открытому ключу или соответствие ключа сертификату.

Для идентификации ключей также могут использоваться поля subjectName, содержащие имя субъекта ключа (см. структуры CommonPrivateKeyAttributes, CommonPublicKeyAttributes [1]).

В [1] объекты могут храниться как в виде значений, так и в виде ссылок на другие объекты. Для этого применен тип данных PathOrObjects (6.1.7 [1]).

PathOrObjects {ObjectType} ::= CHOICE {

path Path,

objects [0] SEQUENCE OF ObjectType,

...,

indirect-protected [1] ReferencedValue {EnvelopedData {SEQUENCE OF

ObjectType} },

direct-protected [2] EnvelopedData {SEQUENCE OF ObjectType},

}

Настоящие рекомендации определяют, что для хранения неконфиденциальных объектов (открытые ключи, сертификаты) должен использоваться вариант objects[0], а для хранения конфиденциальных объектов (закрытые и симметричные ключи) - вариант direct-protected[2].

Для идентификации параметров объектов и области их применения используется тип KeyInfo (6.1.13 [1]).

KeyInfo {ParameterType, OperationsType} ::= CHOICE {

reference Reference,

paramsAndOps SEQUENCE {

parameters ParameterType,

supportedOperations OperationsType OPTIONAL

}

}

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

PKCS15Object {ClassAttributes, SubClassAttributes, TypeAttributes} ::= SEQUENCE {

commonObjectAttributes CommonObjectAttributes,

classAttributes ClassAttributes,

subClassAttributes [0] SubClassAttributes OPTIONAL,

typeAttributes [1] TypeAttributes

}

     5 Объекты для хранения ключей

[1] определено, что в контейнере могут храниться ключи трех типов: закрытые, открытые и симметричные. Ниже определены расширения соответствующих структур для хранения ключей алгоритмов ГОСТ Р 34.10 и ГОСТ 28147-89.

     5.1 Представление ключа

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

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

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

Подробное описание данных представлений ключей изложено в разделе 4 Р 50.1.112-2016.

     5.2 Объект закрытого ключа

В соответствии с 6.3.1 [1]:

PrivateKeyType ::= CHOICE {

privateRSAKeyPrivateKeyObject {PrivateRSAKeyAttributes},

privateECKey [0] PrivateKeyObject {PrivateECKeyAttributes},

privateDHKey [1] PrivateKeyObject {PrivateDHKeyAttributes},

privateDSAKey[2] PrivateKeyObject {PrivateDSAKeyAttributes},

privateKEAKey[3] PrivateKeyObject {PrivateKEAKeyAttributes},

... -- For future extensions

}

PrivateKeyObject {KeyAttributes} ::= PKCS15Object {

CommonKeyAttributes, CommonPrivateKeyAttributes, KeyAttributes}


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

privateGostR3410-2012Key [27] PrivateKeyObject {

PrivateGostR3410-2012KeyAttributes}


PrivateGostR3410-2012KeyAttributes ::= SEQUENCE {

value ObjectValue {GostR3410-2012PrivateKey},

keyInfo KeyInfo {GostPrivateKeyParameters, PublicKeyOperations}

OPTIONAL,

... -- For future extensions

}

GostR3410-2012PrivateKey ::= GostR3410-2012-KeyValueMask

GostPrivateKeyParameters ::= CHOICE {

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