Главная // Актуальные документы // ПриказСПРАВКА
Источник публикации
М.: ФГБУ "РСТ", 2022
Примечание к документу
Документ
введен в действие с 01.05.2023.
Название документа
"Р 1323565.1.041-2022. Рекомендации по стандартизации. Информационная технология. Криптографическая защита информации. Транспортный ключевой контейнер"
(утв. и введены в действие Приказом Росстандарта от 20.10.2022 N 1161-ст)
"Р 1323565.1.041-2022. Рекомендации по стандартизации. Информационная технология. Криптографическая защита информации. Транспортный ключевой контейнер"
(утв. и введены в действие Приказом Росстандарта от 20.10.2022 N 1161-ст)
Утверждены и введены в действие
по техническому регулированию
и метрологии
от 20 октября 2022 г. N 1161-ст
РЕКОМЕНДАЦИИ ПО СТАНДАРТИЗАЦИИ
ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ
КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ
ТРАНСПОРТНЫЙ КЛЮЧЕВОЙ КОНТЕЙНЕР
Information technology. Cryptographic information
security. Transport key container
Р 1323565.1.041-2022
Дата введения
1 мая 2023 года
1 РАЗРАБОТАНЫ Подкомитетом 2 Технического комитета по стандартизации ТК 26 "Криптографическая защита информации"
2 ВНЕСЕНЫ Техническим комитетом по стандартизации ТК 026 "Криптографическая защита информации"
3 УТВЕРЖДЕНЫ И ВВЕДЕНЫ В ДЕЙСТВИЕ
Приказом Федерального агентства по техническому регулированию и метрологии от 20 октября 2022 г. N 1161-ст
4 ВВЕДЕНЫ ВПЕРВЫЕ
Правила применения настоящих рекомендаций установлены в статье 26 Федерального закона от 29 июня 2015 г. N 162-ФЗ "О стандартизации в Российской Федерации". Информация об изменениях к настоящим рекомендациям публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящих рекомендаций соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.rst.gov.ru)
Настоящие рекомендации содержат расширения документов
[1] и
[2], описывающие формирование транспортных ключевых контейнеров для ключей и сертификатов ключей проверки электронной подписи, созданных в соответствии с
ГОСТ Р 34.10-2012.
Настоящие рекомендации предназначены для применения в информационных системах, не обрабатывающих информацию, содержащую сведения, составляющие государственную тайну, и предполагающих необходимость обеспечения имитозащиты и конфиденциальности ключей подписи и сертификатов ключей проверки электронной подписи. Указанные ключи должны быть сформированы в соответствии с
ГОСТ Р 34.10-2012.
В настоящих рекомендациях использованы нормативные ссылки на следующие документы:
ГОСТ Р 34.10-2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи
ГОСТ Р ИСО/МЭК 8824-1 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации
ГОСТ Р ИСО/МЭК 8825-1 Информационная технология. Правила кодирования АСН.1. Часть 1. Спецификация базовых (BER), канонических (CER) и отличительных (DER) правил кодирования
Р 50.1.113-2016 Информационная технология. Криптографическая защита информации. Криптографические алгоритмы, сопутствующие применению алгоритмов электронной цифровой подписи и функции хэширования
Р 1323565.1.023-2022 Информационная технология. Криптографическая защита информации. Использование алгоритмов ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012 в сертификате, списке аннулированных сертификатов (CRL) и запросе на сертификат PKCS #10 инфраструктуры ключей проверки подписи X.509
Р 1323565.1.025-2019 Информационная технология. Криптографическая защита информации. Форматы сообщений, защищенных криптографическими методами
Р 1323565.1.040-2022 Информационная технология. Криптографическая защита информации. Парольная защита ключевой информации
Примечание - При пользовании настоящими рекомендациями целесообразно проверить действие ссылочных документов в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю "Национальные стандарты", который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя "Национальные стандарты" за текущий год. Если заменен ссылочный документ, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого документа с учетом всех внесенных в данную версию изменений. Если заменен ссылочный документ, на который дана датированная ссылка, то рекомендуется использовать версию этого документа с указанным выше годом утверждения (принятия). Если после утверждения настоящих рекомендаций в ссылочный документ, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный документ отменен без замены, то положение, в котором дана ссылка на него, применяется в части, не затрагивающей эту ссылку.
3 Термины, определения и обозначения
3.1 Термины и определения
В настоящих рекомендациях применены следующие термины с соответствующими определениями:
3.1.1 электронная подпись; ЭП: Строка бит, полученная в результате процесса формирования подписи.
3.1.2 ключ подписи: Элемент секретных данных, специфичный для субъекта и используемый только данным субъектом в процессе формирования электронной подписи.
3.1.3 ключ проверки подписи: Элемент данных, математически связанный с ключом подписи и используемый проверяющей стороной в процессе проверки электронной подписи.
3.1.4 сертификат ключа проверки электронной подписи: Электронный документ, выданный удостоверяющим центром либо доверенным лицом удостоверяющего центра и подтверждающий принадлежность ключа проверки электронной подписи владельцу сертификата ключа проверки электронной подписи.
3.1.5 асимметричная ключевая пара: Пара ключей, содержащая ключ подписи и соответствующий ему ключ проверки подписи.
3.1.7
BER: Правило кодирования структур данных, созданных в соответствии с АСН.1, описанное в
ГОСТ Р ИСО/МЭК 8825-1.
3.1.8
DER: Правило кодирования структур данных, созданных в соответствии с АСН.1, описанное в
ГОСТ Р ИСО/МЭК 8825-1.
В настоящих рекомендациях использованы следующие обозначения:
P - пароль, представляющий собой символьную строку в кодировке Unicode UTF-8;
S - случайное значение синхропосылки;
Bs - множество байтовых строк длины
s,
s >= 0. Строка
b = (
b1, ...,
bs) принадлежит множеству
Bs, если

;
a|
b - конкатенация двух байтовых строк. Для двух строк

,

их конкатенацией
a|
b называется строка

;
INT(
b) - целое число
INT(
b) =
b1 +
b2·256 + ... +
bs·256
s-1, где

;
Fq - конечное простое поле, представляемое как множество из q целых чисел {0, 1, ..., q - 1}, где q > 3 - простое число.
4 Транспортный ключевой контейнер
Транспортный ключевой контейнер (ТКК) предназначен для контроля целостности ключей подписи и сертификатов ключей проверки подписи, а также их конфиденциальности в случае использования процедуры шифрования.
Примеры контейнеров, защищенных различными методами, приведены в
приложении А.
Транспортный ключевой контейнер представлен следующей структурой:
PFX ::= SEQUENCE
{
version INTEGER {v3(3)}(v3,...),
authSafe ContentInfo,
macData MacData OPTIONAL
}
Поля структуры PFX имеют следующее значение:
version - номер версии;
authSafe - поле содержит данные и имеет тип ContentInfo, описанный в
разделе 5 Р 1323565.1.025-2019. Структура authSafe типа ContentInfo содержит поле content, которое принимает следующие значения в зависимости от метода контроля целостности ТКК:
- при использовании парольной защиты представляется как тип Data (см. Р 1323565.1.025-2019,
раздел 6) и содержит BER-закодированное значение структуры AuthenticatedSafe (см.
4.2);
- при использовании электронной подписи пользователя информационной системы, формирующего ТКК, представляется как тип SignedData (см. Р 1323565.1.025-2019,
раздел 7), и в этом случае поле eContent структуры EncapsulatedContentInfo (см. Р 1323565.1.025-2019,
раздел 7) в составе структуры SignedData содержит BER-закодированное значение структуры AuthenticatedSafe (см.
4.2);
macData - структура типа MacData (см.
9.1), в зависимости от метода контроля целостности ТКК:
- при использовании парольной защиты в полях структуры содержатся значения параметров для выработки ключа из пароля, алгоритм вычисления и значение контрольной суммы, вычисленной от содержимого поля content структуры authSafe. Контроль целостности обеспечивается с использованием алгоритма HMAC_GOSTR3411_2012_512 (см.
7.1). При обработке транспортного ключевого контейнера значение данного поля проверяется в первую очередь;
- при использовании электронной подписи пользователя информационной системы, формирующего ТКК, поле macData отсутствует. Информация о сертификате ключа проверки электронной подписи пользователя информационной системы, формирующего ТКК, и электронная подпись размещены в структуре signedData в соответствии с Р 1323565.1.025-2019,
раздел 7.
4.2 Структура AuthenticatedSafe
Структура AuthenticatedSafe представляет собой последовательность данных типа ContentInfo:
AuthenticatedSafe ::= SEQUENCE OF ContentInfo.
Элементы последовательности ContentInfo могут содержать:
- Data if unencrypted (отсутствие шифрования данных);
- EncryptedData if password-encrypted (шифрование данных с использованием парольной защиты);
- EnvelopedData if public key-encrypted (шифрование данных на ключе, экспортируемом с использованием протокола Диффи-Хеллмана).
В случае представления данных в виде структур EncryptedData или EnvelopedData, поле encryptedContent структуры EncryptedContentInfo (см.
Р 1323565.1.025-2019) представляет собой BER-закодированное значение структуры SafeContents (см.
4.3).
4.2.1 Отсутствие шифрования данных
Если данные не шифруются, то поле content представляет собой BER-закодированное значение структуры SafeContents (см.
4.3) с указанием contentType (см.
Р 1323565.1.025-2019), равным id-data.
4.2.2 Использование механизма PBES2
При использовании парольной защиты (см.
7.1) данные представляются в виде структуры EncryptedData. Структура EncryptedData в формате АСН.1 описана в Р 1323565.1.025-2019,
раздел 10, за исключением следующей структуры:
ContentEncryptionAlgorithmIdentifier ::= SEQUENCE
{
encryptionAlgorithmOID OBJECT IDENTIFIER,
parameters PBES2-params
}
Тип PBES2-params определен в Р 1323565.1.040-2022,
подраздел 7.2.
Шифрование содержимого осуществляется согласно алгоритму шифрования данных в схеме PBES2, описанному в Р 1323565.1.040-2022,
раздел 5.
При шифровании в режиме CTR-ACPKM используются те же размеры секций, что и в Р 1323565.1.025-2019,
пункт 8.3.1.
В поле EncryptedData.EncryptedContentInfo.contentEncryptionAlgorithm.encryptionAlgorithmOID должен быть указан следующий идентификатор:
{
iso(1) member-body(2) us(840) rsadsi(113549)
pkcs(1) pkcs-5(5) pbes2(13)
}
Зашифрованное содержимое помещается в поле EncryptedData.EncryptedContentInfo.encryptedContent.
4.2.3 Использование протокола Диффи-Хеллмана
При использовании протокола Диффи-Хеллмана для выработки ключа (см.
7.2) данные представляются в виде структуры EnvelopedData в соответствии с Р 1323565.1.025-2019,
раздел 8. Шифрование содержимого и согласование ключей, применяемых для экспорта ключей шифрования, должны осуществляться в соответствии с Р 1323565.1.025-2019,
подраздел 8.3 и
подпункт 8.4.2.1 соответственно.
4.3 Структуры SafeContents и SafeBag
Структура SafeContents представляет собой последовательность структур SafeBag:
SafeContents ::= SEQUENCE OF SafeBag
Структура SafeBag может содержать объекты различного типа: ключи, сертификаты ключа проверки электронной подписи. Тип объектов определяется объектным идентификатором.
SafeBag ::= SEQUENCE
{
bagId BAG-TYPE.&id ({PKCS12BagSet})
bagValue [0] EXPLICIT BAG-TYPE.&Type({PKCS12BagSet}{@bagId}),
bagAttributes SET OF PKCS12Attribute OPTIONAL
}
Поля структуры SafeBag имеют следующий смысл:
bagId - объектный идентификатор, определяет тип хранимого объекта;
bagValue - поле содержит значение объекта;
bagAttributes - поле является опциональным, может содержать пользовательские псевдонимы, идентификаторы ключей и другую дополнительную информацию.
В настоящих рекомендациях рассматривается три типа объектов структуры SafeBag:
- keyBag;
- pkcs8ShroudedKeyBag;
- certBag.
При использовании протокола Диффи-Хеллмана ключ подписи представляется как:
keyBag BAG-TYPE ::=
{
KeyBag IDENTIFIED BY {bagtypes 1}
}
Поле bagValue в этом случае содержит ключ подписи и информацию о нем в виде структуры PrivateKeyInfo (см.
5.2).
При использовании парольной защиты ключ подписи представляется как:
pkcs8ShroudedKeyBag BAG-TYPE ::=
{
PKCS8ShroudedKeyBag IDENTIFIED BY {bagtypes 2}
}
Поле bagValue в этом случае содержит ключ подписи и информацию о нем в зашифрованном виде. Представляется в виде структуры EncryptedPrivateKeyInfo (см.
5.4).
Сертификат ключа проверки электронной подписи независимо от выбранного способа обеспечения конфиденциальности представляется как:
certBag BAG-TYPE ::=
{
CertBag IDENTIFIED BY { bagtypes 3 }
}
Поле bagValue в этом случае содержит сертификат ключа проверки электронной подписи в виде структуры CertBag (см.
раздел 6). При использовании парольной защиты для шифрования сертификата ключа проверки электронной подписи зашифрованная структура CertBag (см.
раздел 6) помещается в структуру EncryptedData в соответствии с Р 1323565.1.025-2019,
раздел 10. При использовании протокола Диффи-Хеллмана зашифрованная структура CertBag (см.
раздел 6) помещается в структуру EnvelopedData в соответствии с Р 1323565.1.025-2019,
раздел 8. При отсутствии шифрования сертификата ключа проверки электронной подписи структура CertBag помещается в структуру Data.
В данном разделе рассматриваются способы представления ключей подписи:
- портфель ключевой информации;
- портфель зашифрованной ключевой информации.
Ключ проверки подписи задается парой координат (
x,
y), определенной в
ГОСТ Р 34.10-2012, представленных в следующем формате:
- ключ проверки подписи, соответствующий алгоритму
ГОСТ Р 34.10-2012 с длиной ключа 256 бит, задается байтовой строкой длины 64 байта, где старшие 32 байта содержат представление координаты
x в формате little-endian, а младшие 32 байта содержат представление координаты
x в формате little-endian;
- ключ проверки подписи, соответствующий алгоритму
ГОСТ Р 34.10-2012 с длиной ключа 512 бит, задается байтовой строкой длины 128 байт, где старшие 64 байта содержат представление координаты
x в формате little-endian, а младшие 64 байта содержат представление координаты
y в формате little-endian.
Алгоритм наложения маски является опциональным. Требования к маскам и порядок их формирования и хранения определяются с учетом теоретических и практических ограничений конкретных СКЗИ. Свойства безопасности, связанные с алгоритмом маскирования выходят за рамки настоящих рекомендаций.
Ключ
K задается байтовой последовательностью длины
n,

.
Пусть задана последовательность из
k масок

. Через
Mi() обозначим операцию наложения
i-й маски, а через

- операцию снятия
i-й маски, 1 <=
i <=
k. Маскированный ключ
KM получается в результате
k-кратного применения операции наложения маски, а именно
KM =
MK(...(
M2(
M1(
K))..). Демаскирование выполняется при помощи
k-кратного применения операции снятия маски, но в обратном порядке, а именно

. Маскированный ключ представляется как последовательность:

.
Возможно использование немаскированного ключа подписи (т.е. k = 0, KM = K).
Для ключей алгоритма
ГОСТ Р 34.10-2012 операцией наложения маски является умножение ключа на число, обратное маске, то есть:
INT(KM) = INT(K)·INT(M)-1 mod q,
где значение q взято из параметров ключа.
Соответственно, операцией снятия маски является умножение маскированного ключа на маску: INT(K) = INT(KM)·INT(M) mod q.
Портфель ключевой информации определяется как информация о ключе подписи, представляемая структурой PrivateKeyInfo:
KeyBag ::= PrivateKeyInfo
Информация о ключе подписи представляется в следующем виде (см.
5.3):
PrivateKeyInfo ::= OneAsymmetricKey.
5.3 Структура OneAsymmetricKey
Структура OneAsymmetricKey предназначена для хранения ключа подписи.
Структура OneAsymmetricKey имеет следующий вид:
OneAsymmetricKey::= SEQUENCE
{
version Version,
privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,
privateKey PrivateKey,
attributes [0] Attributes OPTIONAL,
...,
[[2:publicKey [1] PublicKey OPTIONAL]],
...
}
Version ::= INTEGER { v1(0), v2(1) } (v1, ..., v2)
PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier
PrivateKey ::= OCTET STRING
PublicKey ::= BIT STRING
Attributes ::= SET OF Attribute
Поля структуры OneAsymmetricKey имеют следующий смысл:
version - версия структуры. Если присутствует ключ проверки подписи, то версия равна 1, иначе версия равна 0;
privateKeyAlgorithm - идентификатор алгоритма ключа подписи и параметры ключа подписи (опционально). Для ключей подписи
ГОСТ Р 34.10-2012 используются идентификаторы соответствующих ключей проверки подписи <*>. Использование идентификаторов и параметров ключей проверки подписи представлено в рекомендациях Р 1323565.1.023-2018,
подраздел 5.2;
--------------------------------
<*> Идентификаторы объектов приведены на сайте Технического комитета по стандартизации "Криптографическая защита информации" https://tc26.ru/about/protsedury-i-reglamenty/identifikatory-obektov-oid-tekhnicheskogo-komiteta-po-standartizatsii-kriptograficheskaya-zashchita-1.html
privateKey - поле типа OCTET STRING, содержимым которого является значение маскированного ключа подписи
I (см.
5.1);
attributes - атрибуты, которые могут содержать дополнительную необходимую информацию о ключе. Поле является опциональным;
publicKey - поле типа BIT STRING, содержимым которого является значение ключа проверки подписи. Поле является опциональным.
Портфель зашифрованной ключевой информации определяется как информация о зашифрованном ключе подписи, представляемая структурой EncryptedPrivateKeyInfo:
PKCS8ShroudedKeyBag::= EncryptedPrivateKeyInfo
Информация о зашифрованном ключе подписи представляется в следующем виде:
EncryptedPrivateKeyInfo ::= SEQUENCE
{
encryptionAlgorithm EncryptionAlgorithmIdentifier,
encryptedData EncryptedData
}
EncryptionAlgorithmIdentifier ::= AlgorithmIdentifier
EncryptedData ::= OCTET STRING
Поля структуры EncryptedPrivateKeyInfo имеют следующий смысл:
encryptionAlgorithm - идентификатор алгоритма шифрования. При шифровании должна быть использована схема PBES2 в соответствии с
Р 1323565.1.040-2022. Алгоритм и параметры шифрования указываются в соответствии с
Р 1323565.1.040-2022;
encryptedData - содержимым данного типа является результат зашифрования DER-закодированной структуры PrivateKeyInfo.
В данном разделе рассматривается способ представления сертификатов ключей проверки электронной подписи.
Информация о сертификате ключа проверки электронной подписи представляет собой портфель сертификата ключа проверки электронной подписи и определяется следующей структурой:
CertBag ::= SEQUENCE
{
certId BAG-TYPE.&id ({CertTypes}),
certValue [0] EXPLICIT BAG-TYPE.&Type ({CertTypes}{@certId})
}
Поля структуры CertBag имеют следующий смысл:
certId - идентификатор типа данных "сертификат ключа проверки электронной подписи";
certValue - сертификат ключа проверки электронной подписи.
Портфель сертификата ключа проверки электронной подписи содержит сертификат ключа проверки электронной подписи определенного типа. Объектные идентификаторы используются для отличия сертификатов ключей проверки электронной подписи разных типов.
Структура CertBag может храниться как в открытом, так и в зашифрованном виде (см.
4.3).
7 Механизмы защиты транспортного ключевого контейнера
Для обеспечения целостности и конфиденциальности ключей и сертификатов ключей проверки электронной подписи с использованием механизмов, описанных в
разделе 4, используют ключи, выработанные одним из способов, перечисленных в
7.1,
7.2.
7.1 Выработка ключа из пароля
Пусть у пользователей информационной системы имеется предварительно согласованный пароль
P. Пользователь, формирующий ТКК, с использованием алгоритма PBKDF2 в соответствии с
Р 1323565.1.040-2022 вырабатывает ключ, который использует для шифрования ключа подписи (упаковывает ключ подписи в ТКК). Пользователь, извлекающий данные из ТКК, с использованием алгоритма PBKDF2 (и тех же входных параметров) в соответствии с
Р 1323565.1.040-2022 независимо вырабатывает ключ, который используется для расшифрования ключа подписи (извлекает ключ подписи из ТКК).
Для шифрования различных ключей подписи (структур EncryptedPrivateKeyInfo), содержащихся в одном ТКК используется один и тот же пароль
P и одинаковое значение параметра
c, но различные синхропосылки
S длиной от 8 до 32 байт, где
S и
P являются входными параметрами функции PBKDF2. Пароль должен быть представлен в кодировке Unicode UTF-8 и подан на вход алгоритма PBKDF2 в качестве параметра
P. Значения синхропосылки
S и параметра
c необходимо выбирать в соответствии с
Р 1323565.1.040-2022.
В случае шифрования набора сертификатов в составе ТКК (структура EncryptedData) используется тот же пароль P, что и для шифрования ключей подписи, и собственная синхропосылка S. Порядок создания ключа шифрования такой же, как и при шифровании ключей подписи.
Целостность ТКК обеспечивается с использованием алгоритма HMAC_GOSTR3411_2012_512 в соответствии с
Р 50.1.113-2016. Ключ для данного алгоритма также вырабатывается по алгоритму PBKDF2 в соответствии с
Р 1323565.1.040-2022 с теми же значениями пароля
P и параметра
c, что и при шифровании, и новой случайной синхропосылкой
S длиной от 8 до 32 байт. Параметр
dkLen для алгоритма PBKDF2 устанавливается равным 96 байт. Ключом алгоритма HMAC_GOSTR3411_2012_512 должны быть младшие 32 байта 96-байтовой последовательности, выработанной с помощью алгоритма PBKDF2. Функция HMAC_GOSTR3411_2012_512 вычисляется от содержимого поля content поля структуры authSafe. Поле структуры authSafe является полем структуры PFX (см.
раздел 4).
Ввиду простоты реализации этот способ является наиболее приемлемым для большинства практических приложений. Вместе с тем в соответствии с Р 1323565.1.040-2022,
раздел 1, ТКК, защищенный данным методом, может передаваться только по доверенным каналам связи или храниться при соблюдении дополнительных организационных мер, ограничивающих к нему доступ.
7.2 Использование протокола Диффи-Хеллмана
В случае наличия у пользователей информационной системы предварительно выработанной асимметричной ключевой пары, сформированной по алгоритму
ГОСТ Р 34.10-2012, и соответствующего сертификата ключа проверки электронной подписи для согласования ключей защиты ТКК должны быть использованы алгоритмы, описанные в Р 1323565.1.025-2019,
подпункт 8.4.2.1.
Целостность контейнера в этом случае обеспечивается электронной подписью, при создании которой используется ключ подписи пользователя информационной системы, формирующего ТКК.
При формировании ТКК необходимо выполнять следующие условия:
- при формировании ТКК с использованием парольной защиты для шифрования каждой структуры данных типа SafeBag и SafeContent должен использоваться один и тот же пароль P и одинаковое значение параметра c, но различные синхропосылки S длиной от 8 до 32 байт;
- при формировании ТКК с использованием протокола Диффи-Хэллмана у пользователей информационной системы должна быть предварительно выработанная асимметричная ключевая пара.
Максимально допустимое значение для числа ключей в зависимости от вероятности успешного применения методов криптографического анализа, длины синхропосылки и вектора UKM приведены в
таблицах 1 -
3.
Таблица 1
Число ключей, которые могут быть получены
с использованием одного пароля
Длина синхропосылки (в байтах) | Вероятность успешного применения методов криптоанализа | Число ключей |
8 | 10-3 | 2,6·105/1,9·108 |
10-5 | 5,7·104/1,9·107 |
10-9 | 2,6·103/1,9·105 |
16 | 10-3 | 2,6·105/6,98·1011 |
10-5 | 5,7·104/1,5·1011 |
10-9 | 2,6·103/6,98·109 |
32 | 10-3 | 2,6·105/6,98·1011 |
10-5 | 5,7·104/1,5·1011 |
10-9 | 2,6·103/6,98·109 |
Таблица 2
Число ключей, которые могут быть получены с использованием
одной асимметричной ключевой пары
Длина ключевого материала (в байтах) | Длина UKM (в байтах) | Вероятность успешного применения методов криптоанализа | Число ключей |
32 | 8 | 10-3 | 1,9·108 |
10-5 | 1,9·107 |
10-9 | 1,9·105 |
16 | 10-3 | 8,2·1017 |
10-5 | 8,2·1016 |
10-9 | 8,2·1014 |
32 | 10-3 | 1,5·1037 |
10-5 | 1,5·1036 |
10-9 | 1,5·1034 |
64 | 16 | 10-3 | 8,2·1017 |
10-5 | 8,2·1016 |
10-9 | 8,2·1014 |
32 | 10-3 | 1,5·1037 |
10-5 | 1,5·1036 |
10-9 | 1,5·1034 |
64 | 10-3 | 3,7·1075 |
10-5 | 3,7·1074 |
10-9 | 3,7·1072 |
Таблица 3
Число ключей, которые могут быть экспортированы
с использованием одного ключа, полученного с помощью
одной асимметричной ключевой пары
Длина блока (в байтах) | Вероятность успешного применения методов криптоанализа | Число ключей |
6 | 10-3 | 2,9·103 |
10-5 | 2,9·102 |
10-9 | 2 |
16 | 10-3 | 1,9·108 |
10-5 | 1,9·107 |
10-9 | 1,9·105 |
Процесс создания ТКК состоит из следующих шагов:
- пусть SC1,..., SCn - несколько экземпляров структуры SafeContents, каждый из которых может содержать несколько экземпляров структур SafeBag. В ТКК может быть произвольное число экземпляров структуры SafeContents. Каждый экземпляр может быть зашифрован (или нет) отдельно;
- для каждого SCi в зависимости от выбранного способа шифрования создается структура ContentInfo CIi:
а) если
SCi не шифруется, то создается структура ContentInfo
CIi типа "простые данные" (структура Data, см. Р 1323565.1.025-2019,
раздел 6). Содержимое структуры
CIi (поле content) представляет собой OCTET STRING и содержит BER-закодированное значение структуры SafeContents (включая тег, длину и значения октетов);
б) если для шифрования
SCi используется парольная защита, то создается структура ContentInfo
SIi типа "зашифрованные данные" (структура EncryptedData, см. Р 1323565.1.025-2019,
раздел 10). Поле encryptedContentInfo в составе структуры
CIi содержит поле contentType со значением id-data, а поле encryptedContent содержит зашифрованное BER-закодированное значение структуры
SCi (включая тег, длину и значения октетов);
в) если для шифрования
SCi используется ключ, экспортируемый с использованием протокола Диффи-Хеллмана, то создается структура ContentInfo
CIi типа "конверт данных" (структура EnvelopedData, см. Р 1323565.1.025-2019,
раздел 8, режим шифрования CTR_ACPKM). Поле encryptedContentInfo в составе структуры
CIi содержит поле contentType со значением id-data, а поле encryptedContent содержит зашифрованное BER-закодированное значение структуры
SCi (включая тег, длину и значения октетов);
- создается структура AuthenticatedSafe, путем соединения в последовательность SEQUENCE;
- создается структура ContentInfo
T типа "простые данные" (структура Data, см. Р 1323565.1.025-2019,
раздел 6). Содержимое структуры
T (поле content) представляет собой OCTET STRING и содержит BER-закодированное значение структуры AuthenticatedSafe (включая тег, длину и значения октетов);
- в зависимости от выбранного алгоритма проверки целостности ТКК выполняются следующие шаги:
а) если целостность ТКК проверяется с помощью электронной подписи, то создается структура ContentInfo
S типа "подписанные данные" (структура SignedData, см. Р 1323565.1.025-2019,
раздел 7). Поле contentInfo в составе структуры
S содержит значение структуры
T. Структура
S в структуре ТКК является значением authSafe, поле macData отсутствует;
б) если целостность ТКК обеспечивается с использованием парольной защиты, то:
1) структура T является значением authSafe ТКК;
2) вырабатывается ключ в соответствии с
7.1. Параметры
S и
c алгоритма PBKDF2 сохраняются в полях структуры MacData (см.
9.1), macData.Salt и macData.iterations соответственно;
3) вычисляется значение контрольной суммы по алгоритму HMAC_GOSTR3411_2012_512 от содержимого поля content структуры T, не включая тег OCTET STRING и байты длины;
4) значение вычисленной контрольной суммы записывается в поле macData.mac.digest. В поле macData.mac.digestAlgorithm.algorithm. записывается идентификатор алгоритма хэширования:
id-tc26-gost3411-12-512 :: =
{
iso(1) member-body(2) ru(643) rosstandart(7) tc26(1) algorithms (1) digest(2)
gost3411-2012-512(3)
}
Поле macData.mac.digestAlgorithm.parameters не используется и должно отсутствовать полностью.
MacData ::= SEQUENCE
{
mac DigestInfo,
macSalt OCTET STRING,
iterations INTEGER DEFAULT 1
-- Note: The default is for historical reasons and its
-- use is deprecated.
}
Поля структуры MacData имеют следующее значение:
mac - поле содержит структуру DigestInfo (см.
9.2);
macSalt - значение соли;
iterations - число итераций.
DigestInfo ::= SEQUENCE
{
digestAlgorithm DigestAlgorithmIdentifier,
digest Digest
}
DigestAlgorithmIdentifier ::= AlgorithmIdentifier
Digest ::= OCTET STRING
Поля структуры DigestInfo имеют следующее значение:
digestAlgorithm - идентификатор и параметры используемого алгоритма хэширования;
digest - результат хэширования.
9.3 Тип AlgorithmIdentifier
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER
parameters ANY DEFINED BY algorithm OPTIONAL
}
Поля структуры AlgorithmIdentifier имеют следующее значение:
algorithm - идентификатор используемого алгоритма;
parameters - параметры используемого алгоритма.
9.4 Тип AsymmetricKeyPackage
В данном подразделе вводится новый тип содержимого для структур, описанных в
Р 1323565.1.025-2019: "пакет асимметричных ключей" (AsymmetricKeyPackage). Данный тип используется для хранения и передачи одной или нескольких асимметричных ключевых пар от одного пользователя к другому.
Тип "пакет асимметричных ключей" (AsymmetricKeyPackage) определяется следующим идентификатором:
ct-asymmetric-key-package CONTENT-TYPE ::=
{
AsymmetricKeyPackage IDENTIFIED BY id-ct-KP-aKeyPackage
}
id-ct-KP-aKeyPackage OBJECT IDENTIFIER ::=
{
joint-iso-itu-t(2) country(16) us(840)
organization(1) gov(101) dod(2) infosec(1)
formats(2) key-package-content-types(78) 5
}
Данный тип представляет собой последовательность структур OneAsymmetricKey (см.
5.3):
AsymmetricKeyPackage ::= SEQUENCE SIZE (1..MAX) OF OneAsymmetricKey
Для обеспечения защиты содержимого типа AsymmetricKeyPackage могут использоваться другие типы содержимого, описанные в
Р 1323565.1.025-2019:
- при вычислении электронной подписи содержимого типа AsymmetricKeyPackage используется тип SignedData;
- при применении симметричного шифрования содержимого типа AsymmetricKeyPackage используется тип EncryptedData, если пользователи информационной системы уже выработали общий ключ шифрования;
- при применении симметричного шифрования содержимого типа AsymmetricKeyPackage используется тип EnvelopedData, если пользователи информационной системы еще не выработали общий ключ шифрования;
| | ИС МЕГАНОРМ: примечание. В официальном тексте документа, видимо, допущена опечатка: имеется в виду подраздел 8.1 Р 1323565.1.025-2019, а не 8.2. | |
- при вычислении контрольной суммы содержимого типа AsymmetricKeyPackage используется структура AuthenticatedData, где схема управления ключами такая же, как для типа EnvelopedData (см. Р 1323565.1.025-2019,
подраздел 8.2).
PKCS-12RU
{
iso(1) member-body(2) ru(643) rosstandart(7)
tc26(1) modules(0) pkcs-12ruSyntax(5)
}
DEFINITIONS EXPLICIT TAGS ::=
BEGIN
IMPORTS
GostR3410-2012-PublicKey
FROM GostR3410-2012-PKISyntax
{
iso(1) member-body(2) ru(643) rosstandart(7) tc26(1)
modules(0) gostR3410-2012-PKISyntax(2)
};
Ниже приводится сводка обновлений настоящих рекомендаций в сравнении с предыдущей версией:
- введено использование типа OneAsymmetricKey вместо типа PrivateKeyInfo;
- удален избыточный IMPLICIT из атрибутов структуры OneAsymmetricKey;
- в связи с введением структуры OneAsymmetricKey удалено использование структур GostR3410-2012-PrivateKey и GostR3410-2012-KeyValueInfo для представления ключа подписи;
- обновлены ссылки на RFC и методические рекомендации.
(справочное)
В данном приложении приведены примеры использования российских криптографических алгоритмов для создания транспортного ключевого контейнера.
А.1 Данные для контрольных примеров
Во всех контрольных примерах ниже использованы следующие данные.
А.1.1 Данные удостоверяющего центра
Ключ ЭП УЦ:
092F8D059E97E22B90B1AE99F0087FC4D26620B91550CBB437C191005A29081016
Идентификатор кривой УЦ:
1.2.643.7.1.2.1.1.1
Сертификат ключа проверки электронной подписи УЦ, представленный в кодировке BASE64:
MIIB+TCCAaagAwIBAgIEAYy6gTAKBggqhQMHAQEDAjA4MQ0wCwYDVQQKEwRUSzI2MScwJQYDVQQDEx5DQSBUSzI2O
iBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwHhcNMDEwMTAxMDAwMDAwWhcNNDkxMjMxMDAwMDAwWjA4MQ0wCwYDVQQKEw
RUSzI2MScwJQYDVQQDEx5DQSBUSzI2OiBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwXjAXBggqhQMHAQEBATALBgkqhQM
HAQIBAQEDQwAEQBpKgpyPDnhQAJyLqy8Qs0XQhgxEhby6tSypqYimgbjpcKqtU64jpDXc3h3BxGxtl2oHJ/4YLZ/
ll87dto3ltMqjgZgwgZUwYwYDVR0jBFwwWoAUrGwOTERmokKW4p8JOyVm88ukUyqhPKQ6MDgxDTALBgNVBAoTBFRL
MjYxJzAlBgNVBAMTHkNBIFRLMjY6IEdPU1QgMzQuMTAtMTIgMjU2LWJpdIIEAYy6gTAdBgNVHQ4EFgQUrGwOTERmo
kKW4p8JOyVm88ukUyowDwYDVR0TAQH/BAUwAwEB/zAKBggqhQMHAQEDAgNBABGg3nhgQ5oCKbqlEdVaRxH+1WX4wV
kawGXuTYkr1AC2OWw3ZC14Vvg3nazm8UMWUZtkvu1kJcHQ4jFKkjUeg2E=
А.1.2 Тестовый сертификат ключа проверки электронной подписи
Тестовый сертификат ключа проверки электронной подписи присутствует во всех приведенных контрольных примерах в качестве сертификата ключа проверки электронной подписи, подлежащего упаковке в контейнер. Значение тестового сертификата ключа проверки электронной подписи, представленного в кодировке BASE64:
MIICLjCCAdugAwIBAgIEAYy6hDAKBggqhQMHAQEDAjA4MQ0wCwYDVQQKEwRUSzI2MScwJQYDVQQDEx5DQSBUSzI2O
iBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwHhcNMDEwMTAxMDAwMDAwWhcNNDkxMjMxMDAwMDAwWjA7MQ0wCwYDVQQKEw
RUSzI2MSowKAYDVQQDEyFPUklHSU5BVE9SOiBHT1NUIDM0LjEwLTEyIDUxMi1iaXQwgaAwFwYIKoUDBwEBAQIwCwY
JKoUDBwECAQIBA4GEAASBgLSLt1q8KQ4YZVxioU+1LV9QhE7MHR9gBEh7S1yVNGlqt7+rNG5VFqmrPM74rbUsOlhV
8M+zZKprXdk35Oz8lSW/n2oIUHZxikXIH/SSHj4rv3K/Puvz7hYTQSZl/xPdp78nUmjrEa6d5wfX8biEy2z0dgufF
vAkMw1Ua4gdXqDOo4GHMIGEMGMGA1UdIwRcMFqAFKxsDkxEZqJC1uKfCTslZvPLpFMqoTykOjA4MQ0wCwYDVQQKEw
RUSzI2MScwJQYDVQQDEx5DQSBUSzI2OiBHT1NUIDM0LjEwLTEyIDI1Ni1iaXSCBAGMuoEwHQYDVR0OBBYEFH4GVwm
YDK1rCKhX7nkAWDrJ16CkMAoGCCqFAwcBAQMCA0EACl6p8dAbpi9Hk+3mgMyI0WIh17IrlrSp/mB0F7ZzMt8XUD1D
wz3JrrnxeXnfMvOA5BdUJ9hCyDgMVAGs/IcEEA==
А.1.3 Тестовый ключ
Тестовый ключ присутствует во всех приведенных контрольных примерах в качестве ключа, подлежащего упаковке в контейнер.
F95A5D44C5245F63F2E7DF8E782C1924EADCB8D06C52D91023179786154CBDB1561B4DF759D69F67EE1FBD5B6
8800E134BAA12818DA4F3AC75B0E5E6F925691116
А.2 Пример контейнера с парольной защитой ключа, сертификат ключа проверки электронной подписи в открытом виде
В данном примере для хранения ключа используется структура pkcs8ShroudedKeyBag, которая помещается в структуру Data. Для хранения сертификата ключа проверки электронной подписи используется структура certBag, которая помещается в структуру Data.
Для шифрования ключа и контроля целостности используется пароль:
"Пароль для PFX".
Пароль в бинарном виде:
D09FD0B0D180D0BED0BBD18C20D0B4D0BBD18F2050465816
Идентификатор алгоритма шифрования ключа:
1.2.643.7.1.1.5.2.2
А.2.1 Представление контейнера в кодировке BASE64
MIIFKwIBAzCCBMQGCSqGSIb3DQEHAaCCBLUEggSxMIIErTCCAswGCSqGSIb3DQEHAaCCAr0EggK5MIICtTCCArEGC
yqGSIb3DQEMCgEDoIICSjCCAkYGCiqGSIb3DQEJFgGgggI2BIICMjCCAi4wggHboAMCAQICBAGMuoQwCgYIKoUDB
wEBAwIwODENMAsGA1UEChMEVEsyNjEnMCUGA1UEAxMeQ0EgVEsyNjogR09TVCAzNC4xMC0xMiAyNTYtYm10MB4XD
TAxMDEwMTAwMDAwMFoXDTQ5MTIzMTAwMDAwMFowOzENMAsGA1UEChMEVEsyNjEqMCgGA1UEAxMhT1JJR0lOQVRPUj
ogR09TVCAzNC4xMC0xMiA1MTItYm10MIGgMBcGCCqFAwcBAQECMAsGCSqFAwcBAgECAQOBhAAEgYC0i7davCkOGG
VcYqFPtS1fUIROzB0fYARIeOtclTRpare/qzRuVRapqzzO+K21LDpYVfDPs2Sqa13ZN+Ts/JUlv59qCFB2cYpFyB/
0kh4+K79yvz7r8+4WE0EmZf8T3ae/J1Jo6xGunecH1/G4hMts9HYLnxbwJDMNVGuIHV6gzqOBhzCBhDBjBgNVHSME
XDBagBSsbA5MRGaiQpbinwk7JWbzy6RTKqE8pDowODENMAsGA1UEChMEVEsyNjEnMCUGA1UEAxMeQ0EgVEsyNjogR
09TVCAzNC4xMC0xMiAyNTYtYml0ggQBjLqBMB0GA1UdDgQWBBR+BlcJmAytawioV+55AFg6ydegpDAKBggqhQMHAQ
EDAgNBAApeqfHQG6YvR5Pt5oDMiNFiIdeyK5a0qf5gdBe2czLfF1A9Q8M9ya658Xl53zLzgOQXVCfYQsg4DFQBrPy
HBBAxVDAjBgkqhkiG9w0BCRUxFgQUeVV0+dS25MICJChpmGc/8AoUwE0wLQYJKoZIhvcNAQkUMSAeHgBwADEAMgBG
AHIAaQBlAG4AZABsAHkATgBhAG0AZTCCAdkGCSqGSIb3DQEHAaCCAcoEggHGMIIBwjCCAb4GCyqGSIb3DQEMCgECo
IIBVzCCAVMwWQYJKoZIhvcNAQUNMEwwKQYJKoZIhvcNAQUMMBwECKf4N7NMwugqAgIIADAMBggqhQMHAQEEAgUAMB
8GCSqFAwcBAQUCAjASBBAlmt2WDfaPJlsAs0mLKglzBIH1DMvEacbbWRNDVSnXJLWygYrKoipdOjDA/2HEnBZ34uF
OLNheUqiKpCPoFpbR2GBiVYVTVK9ibiczgacaEQYzDXtcS0QCZOxpKWfteAlbdJLC/SqPurPYyKi0MVRUPROhbisF
ASDT38HDH1Dh0dL5f6ga4aPWLrWbbgWERFOoOPyh4DotlPF37AQOwiEjsbyyRHq3HgbWiaxQRuAheqHOn4QVGY92/
HFvJ7u3TcnQdLWhTe/lh1RHLNF3RnXtN9if9zC23laDZOiWZplUyLrUiTCbHrtn1RppPDmLFNMt9dJ7KKgCkOi7Zm
5nhqPChbywX13wcfYxVDAjBgkqhkiG9w0BCRUxFgQUeVV0+dS25MICJChpmGc/8AoUwE0wLQYJKoZIhvcNAQkUMSA
eHgBwADEAMgBGAHIAaQBlAG4AZABsAHkATgBhAG0AZTBeME4wCgYIKoUDBwEBAgMEQAkBKw4ihn7pSIYTEhu0bcvT
PZjI3WgVxCkUVlOsc80G69EKFEOTnObGJGSKJ51UKkOsXF0a7+VBZf3BcVVQh9UECIVEtO+VpuskAgIIAA==
А.2.2 АСН.1 представление контейнера
0 1323:SEQUENCE:
4 1: INTEGER: 3
7 1220: SEQUENCE:
11 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
22 1205: CONTEXT SPECIFIC (0):
26 1201: OCTET STRING:
30 1197: SEQUENCE:
34 716: SEQUENCE:
38 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
49 701: CONTEXT SPECIFIC (0):
53 697: OCTET STRING:
57 693: SEQUENCE:
61 689: SEQUENCE:
65 11: OBJECT IDENTIFIER:pkcs-12-certBag [1.2.840.113549.1.12.10.1.3]
78 586: CONTEXT SPECIFIC (0):
82 582: SEQUENCE:
86 10: OBJECT IDENTIFIER:x509Certificate [1.2.840.113549.1.9.22.1]
98 566: CONTEXT SPECIFIC (0):
102 562: OCTET STRING:
106 558: SEQUENCE:
110 475: SEQUENCE:
114 3: CONTEXT SPECIFIC (0):
116 1: INTEGER:2
119 4: INTEGER:26000004
125 10: SEQUENCE:
127 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
137 56: SEQUENCE:
139 13: SET:
141 11: SEQUENCE:
143 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
148 4: PRINTABLE STRING:
: 'TK26'
154 39: SET:
156 37: SEQUENCE:
158 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
163 30: PRINTABLE STRING:
: 'CA TK26: GOST 34.10-12 256-bit'
195 30: SEQUENCE:
197 13: UTC TIME:'010101000000Z'
212 13: UTC TIME:'491231000000Z'
227 59: SEQUENCE:
229 13: SET:
231 11: SEQUENCE:
233 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
238 4: PRINTABLE STRING:
: 'TK26'
244 42: SET:
246 40: SEQUENCE:
248 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
253 33: PRINTABLE STRING:
: 'ORIGINATOR: GOST 34.10-12 512-bit'
288 160: SEQUENCE:
291 23: SEQUENCE:
293 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.1.2]
303 11: SEQUENCE:
305 9: OBJECT IDENTIFIER:[1.2.643.7.1.2.1.2.1]
316 132: BIT STRING UnusedBits:0:
320 128: OCTET STRING:
: B48BB75ABC290E18655C62A14FB52D5F50844ECC1D1F60
: 04487B4B5C9534696AB7BFAB346E5516A9AB3CCEF8ADB5
: 2C3A5855F0CFB364AA6B5DD937E4ECFC9525BF9F6A0850
: 76718A45C81FF4921E3E2BBF72BF3EEBF3EE1613412665
: FF13DDA7BF275268EB11AE9DE707D7F1B884CB6CF4760B
: 9F16F024330D546B881D5EA0CE
451 135: CONTEXT SPECIFIC (3):
454 132: SEQUENCE:
457 99: SEQUENCE:
459 3: OBJECT IDENTIFIER:authorityKeyIdentifier
[2.5.29.35]
464 92: OCTET STRING:
466 90: SEQUENCE:
468 20: CONTEXT SPECIFIC (0):
: AC6C0E4C4466A24296E29F093B2566F3CBA45
: 32A
490 60: CONTEXT SPECIFIC (1):
492 58: CONTEXT SPECIFIC (4):
494 56: SEQUENCE:
496 13: SET:
498 11: SEQUENCE:
500 3: OBJECT IDENTIFIER:organizationName
[2.5.4.10]
505 4: PRINTABLE STRING:
: 'TK26'
511 39: SET:
513 37: SEQUENCE:
515 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
520 30: PRINTABLE STRING:
: 'CA TK26: GOST 34.10-12'
: ' 256-bit'
552 4: CONTEXT SPECIFIC (2):
: 018CBA81
558 29: SEQUENCE:
560 3: OBJECT IDENTIFIER:subjectKeyIdentifier [2.5.29.14]
565 22: OCTET STRING:
567 20: OCTET STRING:
: 7E065709980CAD6B08A857EE7900583AC9D7A0A4
589 10: SEQUENCE:
591 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
601 65: BIT STRING UnusedBits:0:
: 0A5EA9F1D01BA62F4793EDE680CC88D16221D7B22B96B4A9FE60741
: 7B67332DF17503D43C33DC9AEB9F17979DF32F380E4175427D842C8
: 380C5401ACFC870410
668 84: SET:
670 35: SEQUENCE:
672 9: OBJECT IDENTIFIER:localKeyID [1.2.840.113549.1.9.21]
683 22: SET:
685 20: OCTET STRING:
: 795574F9D4B6E4C20224286998673FF00A14C04D
707 45: SEQUENCE:
709 9: OBJECT IDENTIFIER:friendlyName [1.2.840.113549.1.9.20]
720 32: SET:
722 30: BMP STRING:'p12FriendlyName'
754 473: SEQUENCE:
758 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
769 458: CONTEXT SPECIFIC (0):
773 454: OCTET STRING:
777 450: SEQUENCE:
781 446: SEQUENCE:
785 11: OBJECT IDENTIFIER:pkcs-12-pkcs-8ShroudedKeyBag [1.2.840.113549.1.12.10.1.2]
798 343: CONTEXT SPECIFIC (0):
802 339: SEQUENCE:
806 89: SEQUENCE:
808 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.13]
819 76: SEQUENCE:
821 41: SEQUENCE:
823 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.12]
834 28: SEQUENCE:
836 8: OCTET STRING:'A7F837B34CC2E82A'
846 2: INTEGER:2048
850 12: SEQUENCE:
852 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.4.2]
862 0: NULL:
864 31: SEQUENCE:
866 9: OBJECT IDENTIFIER:[1.2.643.7.1.1.5.2.2]
877 18: SEQUENCE:
879 16: OCTET STRING:
: 259ADD960DF68F265B00B3498B2A0973
897 245: OCTET STRING:
: 0CCBC469C6DB5913435529D724B5B2818ACAA22A5D3A30C0FF61C49C1677E2E1
: 4E2CD85E52A88AA423E81696D1D8606255855354AF626E273381A71A1106330D
: 7B5C4B440264EC692967ED78095B7492C2FD2A8FBAB3D8C8A8B43154543D13A1
: 6E2B050120D3DFC1C31F50E1D1D2F97FA81AE1A3D62EB59B6E05844453A838FC
: A1E03A2D94F177EC040EC22123B1BCB2447AB71E06D689AC5046E0217AA1CE9F
: 8415198F76FC716F27BBB74DC9D074B5A14DEFE58754472CD1774675ED37D89F
: F730B6DE568364E896669954C8BAD489309B1EBB67D51A693C398B14D32DF5D2
: 7B28A80290E8BB666E6786A3C285BCB05F5DF071F6
1145 84: SET:
1147 35: SEQUENCE:
1149 9: OBJECT IDENTIFIER:localKeyID [1.2.840.113549.1.9.21]
1160 22: SET:
1162 20: OCTET STRING:
: 795574F9D4B6E4C20224286998673FF00A14C04D
1184 45: SEQUENCE:
1186 9: OBJECT IDENTIFIER:friendlyName [1.2.840.113549.1.9.20]
1197 32: SET:
1199 30: BMP STRING:'p12FriendlyName'
1231 94: SEQUENCE:
1233 78: SEQUENCE:
1235 10: SEQUENCE:
1237 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.2.3]
1247 64: OCTET STRING:
: 09012B0E22867EE9488613121BB46DCBD33D98C8DD6815C429145653AC73CD06EBD10A1443
939CE6C624648A279
: D542A43AC5C5D1AEFE54165FDC171555087D5
1313 8: OCTET STRING:'8544B4EF95A6EB24'
1323 2: INTEGER:2048
А.2.3 Расшифрованное значение ключа в кодировке BASE64
MIHiAgEBMBcGCCqFAwcBAQECMAsGCSqFAwcBAgECAQRAEWkl+eblsHWs86SNgRKqSxMOgGhbvR/uZ5/WWfdNGlax
vUwVhpcXIxDZUmzQuNzqJBkseI7f5/JjXyTFRF1a+YGBgQG0i7davCkOGGVcYqFPtS1fUIROzB0fYARIe0tclTRp
are/qzRuVRapqzzO+K21LDpYVfDPs2Sqa13ZN+Ts/JUlv59qCFB2cYpFyB/0kh4+K79yvz7r8+4WE0EmZf8T3ae/
JlJo6xGunecHl/G4hMts9HYLnxbwJDMNVGuIHV6gzg==
А.2.4 АСН.1 представление расшифрованного ключа
0 226:SEQUENCE :
3 1: INTEGER : 1
6 23: SEQUENCE :
8 8: OBJECT IDENTIFIER : [1.2.643.7.1.1.1.2]
18 11: SEQUENCE :
20 9: OBJECT IDENTIFIER : [1.2.643.7.1.2.1.2.1]
31 64: OCTET STRING :
: 116925F9E6E5B075ACF3A48D8112AA4B130E8068SBBD1FEE679FD6
: 59F74D1B56B1BD4C158697172310D9526CD0B8DCEA24192C788EDF
: E7F2635F24C5445D5AF9
97 129: CONTEXT SPECIFIC (1) :
: 01B48BB75ABC290E18655C62A14FB52D5F50844ECC1D1F6004487B
: 4B5C9534696AB7BFAB346E5516A9AB3CCEF8ADB52C3A5855F0CFB3
: 64AA6B5DD937E4ECFC9525BF9F6A085076718A45C81FF4921E3E2B
: BF72BF3EEBF3EE1613412665FF13DDA7BF275268EB11AE9DE707D7
: F1B884CB6CF4760B9F16F024330D546B881D5EA0CE
А.3 Пример контейнера с использованием парольной защиты ключа и сертификата ключа проверки электронной подписи
В данном примере для хранения ключа используется структура pkcs8ShroudedKeyBag, которая помещается в структуру Data. Для хранения сертификата ключа проверки электронной подписи используется структура certBag, которая помещается в структуру EncryptedData.
Для шифрования данных и контроля целостности используется пароль:
"Пароль для PFX".
Пароль в бинарном виде:
D09FD0B0D180D0BED0BBD18C20D0B4D0BBD18F2050465816
Идентификатор алгоритма шифрования ключа:
1.2.643.7.1.1.5.1.1
Идентификатор алгоритма шифрования сертификата ключа проверки электронной подписи:
1.2.643.7.1.1.5.1.2
А.3.1 Представление контейнера в кодировке BASE64
MIIFjAIBAzCCBSUGCSqGSIb3DQEHAaCCBRYEggUSMIIFDjCCA0EGCSqGSIb3DQEHBqCCAzIwggMuAgEAMIIDJwYJK
oZIhvcNAQcBMFUGCSqGSIb3DQEFDTBIMCkGCSqGSIb3DQEFDDAcBAgUuSVGsSwGjQICCAAwDAYIKoUDBwEBBAIFA
DAbBgkqhQMHAQEFAQIwDgQM9Hk3dagtS48+G/x+gIICwWGPqxxN+sTrKbruRf9R5Ya9cf5AtO1frqMnfleULfmZm
Tg/BdE51QQ+Vbnh3v1kmspr6h2+e4Wli+ndEeCWG6A6X/G22h/RAHW2YrVmf6cCWxW+YrqzT4h/8RQL/9haunD5Lm
HPLVsYrEai0OwbgXayDSwARVJQLQYqsLNmZK5ViN+fRiS5wszVJ3AtVq8EuPt41aQEKwPy2gmH4S6WmnQRC6W7ao
qmIifFPJENJNn5K2M1J6zNESs6bFtYNKMArNqtvv3rioY6eAaaLy6AV6ljsekmqodHmQjvY4eEioJs0xhpXhZY69P
XT+ZBeHv6MSheBhwXqxAdlDqtPTafMjNK8rqKCap9TtPGvONvo5W9dgwegxRRQzlum8dzV4mlW9Aq4W7t8/UcxDWR
z3k6ijFPlGaA9+8ZMTEORHhBRvM6OY2/VNNxbgxWfGYuPxpSi3YnCZIPmBEe5lU/Xv7KjzFusGM38F8YR61k4/QNp
KI1QUv714YKfaUQznshGGzILv1NGID62pl1+JI3vuawi2mDMrmkuM9QFU9v/kRP+c2uBHDuOGEUUSNhF08p7+w3vx
platGWXH9fmIsPBdk2f3wkn+rwoqrEuijMI/bCaylU/M0DMKhAo9j31UYSZdi4fsfRWYDJMq/8FPn96tuo+oCpbqv
3NUwpZM/8Li4xqgTHtYw/+fRG0/P6XadNEiII/TYjenLfVHXjAHOVJsVeCu/t3EsMYHQddNChrFk/Ic2PdIQOyB4/
enpW0qrKegSbyZNuF1WI4zl4mI89L8dTQBUkhy45yQXZlDD8klErYdtdEsPtz/4zuSpbnmwCEIRoOuSXtGuJP+tbc
WEXRKM2UBgi3qBjpn7DU18MtsrRM9pDdadl8mT/Vfh9+B8dZBZVxgQu70lMPEGexbUkYHuFCCnyi9J0V92StbIzEl
xla1VebjCCAcUGCSqGSIb3DQEHAaCCAbYEggGyMIIBrjCCAaoGCyqGSIb3DQEMCgECoIIBQzCCAT8wVQYJKoZIhvc
NAQUNMEgwKQYJKoZIhvcNAQUMMBwECP0EQk0O1twvAgIIADAMBggqhQMHAQEEAgUAMBsGCSqFAwcBAQUBATAOBAzw
xSqgAAAAAAAAAAAEgeUqj9mI3RDfK5hMd0EeYws7foZK/5ANr2wUhP5qnDjAZgn76lExJ+wuvlnS9PChfWVugvdl/
9XJgQvvr9Cu4pOh4ICXplchcy0dGk/MzItHRVC5wK2nTxwQ4kKTkG9xhLFzoDl6dhtqX0+/dQg9G8pE5EzCBIYRXL
m1Arcz9k7KVsTJuNMjFrr7EQuuTr80ATSQOtsq50zpFyrpznVPGCrOdIjpymZxNdvw48bZxqTtRVDxCYATOGqz0pw
HClWULHD9LIajLMB2GhBKyQw6ujIlltJs0T+WNdX/AT2FLi1LFSS3+Cj9MVQwIwYJKoZIhvcNAQkVMRYEFHlVdPnU
tuTCAiQoaZhnP/AKFMBNMC0GCSqGSIb3DQEJFDEgHh4AcAAxADIARgByAGkAZQBuAGQAbAB5AE4AYQBtAGUwXjBOM
AoGCCqFAwcBAQIDBEDp4e22JmXdnvR0xA99yQuzQuJ8pxBeOpsLm2dZQqt3Fje5zqW1uk/7VOcfV5r2bKm8nsLOs2
rPT8hBOoeAZvOIBAjGIUHw6IjG2QICCAA=
А.3.2 АСН.1 представление контейнера
0 1420:SEQUENCE:
4 1: INTEGER:3
7 1317: SEQUENCE:
11 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
22 1302: CONTEXT SPECIFIC (0):
26 1298: OCTET STRING:
30 1294: SEQUENCE:
34 833: SEQUENCE:
38 9: OBJECT IDENTIFIER:encryptedData [1.2.840.113549.1.7.6]
49 818: CONTEXT SPECIFIC (0):
53 814: SEQUENCE:
57 1: INTEGER:0
60 807: SEQUENCE:
64 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
75 85: SEQUENCE:
77 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.13]
88 72: SEQUENCE:
90 41: SEQUENCE:
92 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.12]
103 28: SEQUENCE:
105 8: OCTET STRING:'14B92546B12C068D'
115 2: INTEGER:2048
119 12: SEQUENCE:
121 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.4.2]
131 0: NULL:
133 27: SEQUENCE:
135 9: OBJECT IDENTIFIER:[1.2.643.7.1.1.5.1.2]
146 14: SEQUENCE:
148 12: OCTET STRING:
: F4793775A82D4B8F3E1BFC7E
162 705: CONTEXT SPECIFIC (0):
: 618FAB1C4DFAC4EB29BAEE45FF51E586BD71FE40B4ED5FAEA3277F57942DF99999383F
: 05D139D5043E55B9E1DEFD649ACA6BEA1DBE7B85A58BE9DD11E0961BA03A5FF1B6DA1F
: D10075B662B5667FA7025B15BE62BAB34F887FF1140BFFD85ABA70F92E61CF2D5B18AC
: 46A2D0EC1B8176B20D2C004552502D062AB0B36664AE5588DF9F4624B9C2CCD527702D
: 56AF04B8FB78D5A4042B03F2DA0987E12E969A74110BA5BB6A8AA62227C53C910D24D9
: F92B633527ACCD112B3A6C5B5834A300ACDAADBEFDEB8A863A78069A2F2E8057A963B1
: E926AA87479908EF6387848A826CD318695E1658EBD3D74FE641787BFA31285E061C17
: AB101DD43AAD3D369F32334AF2BA8A09AA7D4ED3C6BCE36FA395BD760C1E8314514339
: 6E9BC7735789B55BD02AE16EEDF3F51CC43591CF793A8A314F946680F7EF1931310E44
: 784146F33A398DBF54D3716E0C567C662E3F1A528B762709920F98111EE6553F5EFECA
: 8F316EB06337F05F1847AD64E3F40DA4A235414BFBD7860A7DA510CE7B21186CC82EFD
: 4D1880FADA9975F89237BEE6B08B698332B9A4B8CF50154F6FFE444FF9CDAE0470EE38
: 6114512361174F29EFEC37BF1A656AD1965C7F5F988B0F05D9367F7C249FEAF0A2AAC4
: BA28CC23F6C2032954FCCD0330A840A3D8F7D5461265D8B87EC7D15980C932AFFC14F9
: FDEADBA8FA80A96EABF7354C2964CFFC2E2E31AA04C7B58C3FF9F446D3F3FA5DA74D12
: 2208FD36237A72DF5475E300739526C55E0AEFEDDC4B0C60741D74D0A1AC593F21CD8F
: 74840EC81E3F7A7A56D2AACA7A049BC9936E175588E33978988F3D2FC753401524872E
: 39C905D99430FC93512B61DB5D12C3EDCFFE33B92A5B9E6C021084683AE497B46B893F
: EB5B71611744A336501822DEA063A67EC3535F0CB6CAD133DA4375A765F264FF55F87D
: F81F1D641655C6042EEF494C3C419EC5B524607B850829F28BD27457DD92B5B233125C
: 656B555E6E
871 453: SEQUENCE:
875 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
886 438: CONTEXT SPECIFIC (0):
890 434: OCTET STRING:
894 430: SEQUENCE:
898 426: SEQUENCE:
902 11: OBJECT IDENTIFIER:pkcs-12-pkcs-8ShroudedKeyBag [1.2.840.113549.1.12.10.1.2]
915 323: CONTEXT SPECIFIC (0):
919 319: SEQUENCE:
923 85: SEQUENCE:
925 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.13]
936 72: SEQUENCE:
938 41: SEQUENCE:
940 9: OBJECT IDENTIFIER:[1.2.840.113549.1.5.12]
951 28: SEQUENCE:
953 8: OCTET STRING:
: FD04424D0ED6DC2F
963 2: INTEGER:2048
967 12: SEQUENCE:
969 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.4.2]
979 0: NULL:
981 27: SEQUENCE:
983 9: OBJECT IDENTIFIER:[1.2.643.7.1.1.5.1.1]
994 14: SEQUENCE:
996 12: OCTET STRING:
: F0C52AA00000000000000000
1010 229: OCTET STRING:
: 2A8FD988DD10DF2B984C77411E630B3B7E864AFF900DAF6C1484FE6A9C38C
: 06609FBEA513127EC2EBE59D2F4F0A17D656E82F765FFD5C9810BEFAFD0AE
: E293A1E08097A65721732D1D1A4FCCCC8B474550B9C0ADA74F1C10E242939
: 06F7184B173A03D7A761B6A5F4FBF75083D1BCA44E44CC20486115CB9B502
: B733F64ECA56C4C9B8D32316BAFB110BAE4EBF340134903ADB2AE74CE9172
: AE9CE754F182ACE7488E9CA667135DBF0E3C6D9C6A4ED4550F1098013386A
: B3D29C070A55942C70FD2C86A32CC0761A104AC90C3ABA322596D26CD13F9
: 635D5FF013D852E2D4B1524B7F828FD
1242 84: SET:
1244 35: SEQUENCE:
1246 9: OBJECT IDENTIFIER:localKeyID [1.2.840.113549.1.9.21]
1257 22: SET:
1259 20: OCTET STRING:
: 795574F9D4B6E4C20224286998673FF00A14C04D
1281 45: SEQUENCE:
1283 9: OBJECT IDENTIFIER:friendlyName [1.2.840.113549.1.9.20]
1294 32: SET:
1296 30: BMP STRING:'p12FriendlyName'
1328 94: SEQUENCE:
1330 78: SEQUENCE:
1332 10: SEQUENCE:
1334 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.2.3]
1344 64: OCTET STRING:
: E9E1EDB62665DD9EF474C40F7DC90BB342E27CA7105E3A9B0B9B675942AB771637B9CEA5B5BA4FFB54E71F57
: 9AF66CA9BC9EC2CEB36ACF4FC8413A878066F388
1410 8: OCTET STRING:'C62141F0E888C6D9'
1420 2: INTEGER:2048
А.3.3 Расшифрованное значение ключа в кодировке BASE64
MIHiAgEBMBcGCCqFAwcBAQECMAsGCSqFAwcBAgECAQRAEWkl+eblsHWs86SNgRKq
SxMOgGhbvR/uZ5/WWfdNG1axvUwVhpcXIxDZUmzQuNzqJBkseI7f5/JjXyTFRF1a
+YGBgQG0i7davCkOGGVcYqFPtS1fUIROzB0fYARIe0tclTRpare/qzRuVRapqzzO
+K21LDpYVfDPs2Sqa13ZN+Ts/JUlv59qCFB2cYpFyB/0kh4+K79yvz7r8+4WE0Em
Zf8T3ae/J1Jo6xGunecH1/G4hMts9HYLnxbwJDMNVGuIHV6gzg==
А.3.4 АСН.1 представление расшифрованного ключа
0 226:SEQUENCE :
3 1: INTEGER : 1
6 23: SEQUENCE :
8 8: OBJECT IDENTIFIER : [1.2.643.7.1.1.1.2]
18 11: SEQUENCE :
20 9: OBJECT IDENTIFIER : [1.2.643.7.1.2.1.2.1]
31 64: OCTET STRING :
: 116925F9E6E5B075ACF3A48D8112AA4B130E80685BBD1FEE679FD6
: 59F74D1B56B1BD4C158697172310D9526CD0B8DCEA24192C788EDF
: E7F2635F24C5445D5AF9
97 129: CONTEXT SPECIFIC (1) :
: 01B48BB75ABC290E18655C62A14FB52D5F50844ECC1D1F6004487B
: 4B5C9534696AB7BFAB346E5516A9AB3CCEF8ADB52C3A5855F0CFB3
: 64AA6B5DD937E4ECFC9525BF9F6A085076718A45C81FF4921E3E2B
: BF72BF3EEBF3EE1613412665FF13DDA7BF275268EB11AE9DE707D7
: F1B884CB6CF4760B9F16F024330D546B881D5EA0CE
А.4 Пример контейнера с использованием протокола Диффи-Хеллмана для защиты данных
В данном примере для хранения ключа используется структура keyBag, которая помещается в структуру EnvelopedData. Для хранения сертификата ключа проверки электронной подписи используется структура certBag, которая помещается в структуру Data.
В примере используются следующие данные:
А.4.1 Данные пользователя информационной системы, формирующего ТКК
Ключ ЭП пользователя информационной системы, формирующего ТКК:
0B20810E449978C7C3B76C6FF77A16C532421139344A058EF56310B6B6F377E816
Идентификатор кривой пользователя информационной системы, формирующего ТКК:
1.2.643.7.1.2.1.1.1
Сертификат ключа проверки электронной подписи пользователя информационной системы, формирующего ТКК, представленный в кодировке BASE64:
MIIB6zCCAZigAwIBAgIEAYy6gjAKBggqhQMHAQEDAjA4MQ0wCwYDVQQKEwRUSzI2MScwJQYDVQQDEx5DQSBUSzI2O
iBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwHhcNMDEwMTAxMDAwMDAwWhcNNDkxMjMxMDAwMDAwWjA7MQ0wCwYDVQQKEw
RUSzI2MSowKAYDVQQDEyFPUklHSU5BVE9SOiBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwXjAXBggqhQMHAQEBATALBgk
qhQMHAQIBAQEDQwAEQJYpDRNiWWqDgaZje0EmLLOldQ35o5XlZuZNSKequYQc/soI3OgDMWD7ThJJCk0lIelCeb6M
sBmG4lol+pnpVtOjgYcwgYQwYwYDVR0jBFwwWoAUrGwOTERmokKW4p8JOyVm88ukUyqhPKQ6MDgxDTALBgNVBAoTB
FRLMjYxJzAlBgNVBAMTHkNBIFRLMjY6IEdPU1QgMzQuMTAtMTIgMjU2LWJpdIIEAYy6gTAdBgNVHQ4EFgQUPx5Rgc
jkifhlJm4/jQdkbm30rVQwCgYIKoUDBwEBAwIDQQA68x7Vk6PvP/8xOGHhf8PuqaXAYskSyJPuBu+3Bo/PEj10dev
wc1J9uYWIDCGdKKPybSlnQHqUPBBPM30YX1YN
А.4.2 Данные пользователя информационной системы, извлекающего данные из ТКК
Ключ ЭП пользователя информационной системы, извлекающего данные из ТКК:
0DC8DC1FF2BC114BABC3F1CA8C51E4F58610427E197B1C2FBDBA4AE58CBFB7CE16
Идентификатор кривой пользователя информационной системы, извлекающего данные из ТКК:
1.2.643.7.1.2.1.1.1
Сертификат ключа проверки электронной подписи пользователя информационной системы, извлекающего данные из ТКК, представленный в кодировке BASE64:
MIIB6jCCAZegAwIBAgIEAYy6gzAKBggqhQMHAQEDAjA4MQ0wCwYDVQQKEwRUSzI2MScwJQYDVQQDEx5DQSBUSzI2O
iBHT1NUIDM0LjEwLTEyIDI1Ni1iaXQwHhcNMDEwMTAxMDAwMDAwWhcNNDkxMjMxMDAwMDAwWjA6MQ0wCwYDVQQKEw
RUSzI2MSkwJwYDVQQDEyBSRUNJUElFTlQ6IEdPU1QgMzQuMTAtMTIgMjU2LWJpdDBeMBcGCCqFAwcBAQEBMAsGCSq
FAwcBAgEBAQNDAARAvyeCGXMsYwpYe5aE0w8w3m4vpKQapGInqpnFlv7h08psFP0s1W80q3BR534F4TmR+o5+iU+A
W6ycvWuc73JEQ6OBhzCBhDBjBgNVHSMEXDBagBSsbA5MRGaiQpbinwk7JWbzy6RTKqE8pDowODENMAsGA1UEChMEV
EsyNjEnMCUGA1UEAxMeQ0EgVEsyNjogR09TVCAzNC4xMC0xMiAyNTYtYml0ggQBjLqBMB0GA1UdDgQWBBQ35gHPN1
bx8l2eEMTbrtIg+5MU0TAKBggqhQMHAQEDAgNBABF2RHDaRqQuBS2yu7yGIGFgA6c/LG4GKjSOwYsRVmXJNNkQ4TB
7PB8j3q7gx2koPsVBm90WfMWSL6SNSh3muuM=
А.4.3 Представление контейнера в кодировке BASE64
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
А.4.4 АСН.1 представление контейнера
0 2647:SEQUENCE:
4 1: INTEGER:3
7 2640: SEQUENCE:
11 9: OBJECT IDENTIFIER:signedData [1.2.840.113549.1.7.2]
22 2625: CONTEXT SPECIFIC (0):
26 2621: SEQUENCE:
30 1: INTEGER:1
33 12: SET:
35 10: SEQUENCE:
37 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.2.2]
47 1827: SEQUENCE:
51 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
62 1812: CONTEXT SPECIFIC (0):
66 1808: OCTET STRING:
70 1804: SEQUENCE:
74 669: SEQUENCE:
78 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
89 654: CONTEXT SPECIFIC (0):
93 650: OCTET STRING:
97 646: SEQUENCE:
101 642: SEQUENCE:
105 11: OBJECT IDENTIFIER:pkcs-12-certBag [1.2.840.113549.1.12.10.1.3]
118 586: CONTEXT SPECIFIC (0):
122 582: SEQUENCE:
126 10: OBJECT IDENTIFIER:x509Certificate [1.2.840.113549.1.9.22.1]
138 566: CONTEXT SPECIFIC (0):
142 562: OCTET STRING:
146 558: SEQUENCE:
150 475: SEQUENCE:
154 3: CONTEXT SPECIFIC (0):
156 1: INTEGER:2
159 4: INTEGER:26000004
165 10: SEQUENCE:
167 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
177 56: SEQUENCE:
179 13: SET:
181 11: SEQUENCE:
183 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
188 4: PRINTABLE STRING:
: 'TK26'
194 39: SET:
196 37: SEQUENCE:
198 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
203 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
235 30: SEQUENCE:
237 13: UTC TIME:
: '010101000000Z'
252 13: UTC TIME:
: '491231000000Z'
267 59: SEQUENCE:
269 13: SET:
271 11: SEQUENCE:
273 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
278 4: PRINTABLE STRING:
: 'TK26'
284 42: SET:
286 40: SEQUENCE:
288 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
293 33: PRINTABLE STRING:
: 'ORIGINATOR:GOST 34.10-12 512-b'
: 'it'
328 160: SEQUENCE:
331 23: SEQUENCE:
333 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.1.2]
343 11: SEQUENCE:
345 9: OBJECT IDENTIFIER:[1.2.643.7.1.2.1.2.1]
356 132: BIT STRING UnusedBits:0:
:
360 128: OCTET STRING:
: B48BB75ABC290E18655C62A14FB52D5F50
: 844ECC1D1F6004487B4B5C9534696AB7BF
: AB346E5516A9AB3CCEF8ADB52C3A5855F0
: CFB364AA6B5DD937E4ECFC9525BF9F6A08
: 5076718A45C81FF4921E3E2BBF72BF3EEB
: F3EE1613412665FF13DDA7BF275268EB11
: AE9DE707D7F1B884CB6CF4760B9F16F024
: 330D546B881D5EA0CE
491 135: CONTEXT SPECIFIC (3):
494 132: SEQUENCE:
497 99: SEQUENCE:
499 3: OBJECT IDENTIFIER:authorityKeyIdentifier
[2.5.29.35]
504 92: OCTET STRING:
506 90: SEQUENCE:
508 20: CONTEXT SPECIFIC (0):
: AC6C0E4C4466A24296E29F093
: B2566F3CBA4532A
530 60: CONTEXT SPECIFIC (1):
532 58: CONTEXT SPECIFIC (4):
534 56: SEQUENCE:
536 13: SET:
538 11: SEQUENCE:
540 3: OBJECT IDENTIFIER:organizationName
[2.5.4.10]
545 4: PRINTABLE STRING:
: 'TK26'
551 39: SET:
553 37: SEQUENCE:
555 3: OBJECT IDENTIFIER:commonName
[2.5.4.3]
560 30: PRINTABLE STRING:
: 'CA TK26:G'
: 'OST 34.10-'
: '12 256-bit'
592 4: CONTEXT SPECIFIC (2):
: 018CBA81
598 29: SEQUENCE:
600 3: OBJECT IDENTIFIER:subjectKeyIdentifier
[2.5.29.14]
605 22: OCTET STRING:
607 20: OCTET STRING:
: 7E065709980CAD6B08A857EE7900
: 583AC9D7A0A4
629 10: SEQUENCE:
631 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
641 65: BIT STRING UnusedBits:0:
: 0A5EA9F1D01BA62F4793EDE680CC88D16221D7B22B9
: 6B4A9FE607417B67332DF17503D43C33DC9AEB9F179
: 79DF32F380E4175427D842C8380C5401ACFC870410
708 37: SET:
710 35: SEQUENCE:
712 9: OBJECT IDENTIFIER:localKeyID [1.2.840.113549.1.9.21]
723 22: SET:
725 20: OCTET STRING:
: 795574F9D4B6E4C20224286998673FF00A14C04D
747 1127: SEQUENCE:
751 9: OBJECT IDENTIFIER:envelopedData [1.2.840.113549.1.7.3]
762 1112: CONTEXT SPECIFIC (0):
766 1108: SEQUENCE:
770 1: INTEGER:2
773 499: CONTEXT SPECIFIC (0):
777 495: CONTEXT SPECIFIC (0):
781 491: SEQUENCE:
785 408: SEQUENCE:
789 3: CONTEXT SPECIFIC (0):
791 1: INTEGER:2
794 4: INTEGER:26000002
800 10: SEQUENCE:
802 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
812 56: SEQUENCE:
814 13: SET:
816 11: SEQUENCE:
818 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
823 4: PRINTABLE STRING:
: 'TK26'
829 39: SET:
831 37: SEQUENCE:
833 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
838 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
870 30: SEQUENCE:
872 13: UTC TIME:'010101000000Z'
887 13: UTC TIME:'491231000000Z'
902 59: SEQUENCE:
904 13: SET:
906 11: SEQUENCE:
908 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
913 4: PRINTABLE STRING:
: 'TK26'
919 42: SET:
921 40: SEQUENCE:
923 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
928 33: PRINTABLE STRING:
: 'ORIGINATOR:GOST 34.10-12 256-bit'
963 94: SEQUENCE:
965 23: SEQUENCE:
967 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.1.1]
977 11: SEQUENCE:
979 9: OBJECT IDENTIFIER:[1.2.643.7.1.2.1.1.1]
990 67: BIT STRING UnusedBits:0:
993 64: OCTET STRING:
: 96290D1362596A8381A6637B41262CB3A5750DF9A395F5
: 66E64D48A7AAB9841CFECA08DCE8033160FB4E12490A4D
: 3521E94279BE8CB01986E25A25FA99E956D3
1059 135: CONTEXT SPECIFIC (3):
1062 132: SEQUENCE:
1065 99: SEQUENCE:
1067 3: OBJECT IDENTIFIER:authorityKeyIdentifier [2.5.29.35]
1072 92: OCTET STRING:
1074 90: SEQUENCE:
1076 20: CONTEXT SPECIFIC (0):
: AC6C0E4C4466A24296E29F093B2566F3CBA45
: 32A
1098 60: CONTEXT SPECIFIC (1):
1100 58: CONTEXT SPECIFIC (4):
1102 56: SEQUENCE:
1104 13: SET:
1106 11: SEQUENCE:
1108 3: OBJECT IDENTIFIER:organizationName
[2.5.4.10]
1113 4: PRINTABLE STRING:
: 'TK26'
1119 39: SET:
1121 37: SEQUENCE:
1123 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
1128 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12'
: ' 256-bit'
1160 4: CONTEXT SPECIFIC (2):
: 018CBA81
1166 29: SEQUENCE:
1168 3: OBJECT IDENTIFIER:subjectKeyIdentifier [2.5.29.14]
1173 22: OCTET STRING:
1175 20: OCTET STRING:
: 3F1E5181C8E489F865266E3F8D07646E6DF4AD54
1197 10: SEQUENCE:
1199 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
1209 65: BIT STRING UnusedBits:0:
: 3AF31ED593A3EF3FFF313861E17FC3EEA9A5C062C912C893EE06EFB
: 7068FCF123D7475EBF073527DB985880C219D28A3F26D2967407A94
: 3C104F337D185F560D
1276 255: SET:
1279 252: CONTEXT SPECIFIC (1):
1282 1: INTEGER:3
1285 66: CONTEXT SPECIFIC (0):
1287 64: SEQUENCE:
1289 56: SEQUENCE:
1291 13: SET:
1293 11: SEQUENCE:
1295 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
1300 4: PRINTABLE STRING:
: 'TK26'
1306 39: SET:
1308 37: SEQUENCE:
1310 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
1315 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
1347 4: INTEGER:26000002
1353 34: CONTEXT SPECIFIC (1):
1355 32: OCTET STRING:
: 1B787E37B2FA4F02D43DCE68C71AF3097A8778F70BA3806EBC7CAE6
: C5792DB10
1389 23: SEQUENCE:
1391 9: OBJECT IDENTIFIER:[1.2.643.7.1.1.7.2.1]
1402 10: SEQUENCE:
1404 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.6.1]
1414 118: SEQUENCE:
1416 116: SEQUENCE:
1418 64: SEQUENCE:
1420 56: SEQUENCE:
1422 13: SET:
1424 11: SEQUENCE:
1426 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
1431 4: PRINTABLE STRING:
: 'TK26'
1437 39: SET:
1439 37: SEQUENCE:
1441 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
1446 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
1478 4: INTEGER:26000003
1484 48: OCTET STRING:
1486 41: CONTEXT SPECIFIC (25):
: 59A7BA2157DA63798FD22CD163B89F738D5F0135DD276B664
: E5FB5BE2B64484DAF2C22970CB97DD0A7
1529 3: PRIVATE (7):'A80D98'
1534 340: SEQUENCE:
1538 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
1549 31: SEQUENCE:
1551 9: OBJECT IDENTIFIER:[1.2.643.7.1.1.5.2.1]
1562 18: SEQUENCE:
1564 16: OCTET STRING:
: 16112C84404ED8B90000000000000000
1582 292: CONTEXT SPECIFIC (0):
: 18BCBA53FFC6B311725F7A4C86BB2BC4F549155FE028F2C7EEF4CCBF73858
: 055134C859902A83F816CFC01B08CCDB176488BDAD71807EC3F3EF168EF44
: 50564F8CD396B45FC4D35A09806FA060B167EEA02210572644BA6D487B9A9
: CD1E7ED8A25E881EEB215F851A5BD8446BF2FA785431FE1A0386B3599D64D
: 7359B4DB87B8C182F5DCE11E14F17E47636585C3BFE33BA6C563E7C26EB44
: DD4D9DE2983129C04F74C3B8BE5E3EDBB7082B1419159536CEE09524B60BA
: A63D3E6908190C989AB2EDB6701CE27D901ABF4C651FF2224661208DADEDD
: 14CD2DB7134E4EEB66B6E232416C1B76E8AF37A7A68B92E4405C0A406DF0C
: 8F49EFB0C0AEF62A474EE5B0C3B2E5B659170A394D5C5522E992375721D6E
: 420E9821BA3416899C6201C26E1A5E86C19
1878 495: CONTEXT SPECIFIC (0):
1882 491: SEQUENCE:
1886 408: SEQUENCE:
1890 3: CONTEXT SPECIFIC (0):
1892 1: INTEGER:2
1895 4: INTEGER:26000002
1901 10: SEQUENCE:
1903 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
1913 56: SEQUENCE:
1915 13: SET:
1917 11: SEQUENCE:
1919 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
1924 4: PRINTABLE STRING:'TK26'
1930 39: SET:
1932 37: SEQUENCE:
1934 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
1939 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
1971 30: SEQUENCE:
1973 13: UTC TIME:'010101000000Z'
1988 13: UTC TIME:'491231000000Z'
2003 59: SEQUENCE:
2005 13: SET:
2007 11: SEQUENCE:
2009 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
2014 4: PRINTABLE STRING:'TK26'
2020 42: SET:
2022 40: SEQUENCE:
2024 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
2029 33: PRINTABLE STRING:
: 'ORIGINATOR:GOST 34.10-12 256-bit'
2064 94: SEQUENCE:
2066 23: SEQUENCE:
2068 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.1.1]
2078 11: SEQUENCE:
2080 9: OBJECT IDENTIFIER:[1.2.643.7.1.2.1.1.1]
2091 67: BIT STRING UnusedBits:0:
2094 64: OCTET STRING:
: 96290D1362596A8381A6637B41262CB3A5750DF9A395F566E64D48A7AAB9841CFECA08
: DCE8033160FB4E12490A4D3521E94279BE8CB01986E25A25FA99E956D3
2160 135: CONTEXT SPECIFIC (3):
2163 132: SEQUENCE:
2166 99: SEQUENCE:
2168 3: OBJECT IDENTIFIER:authorityKeyIdentifier [2.5.29.35]
2173 92: OCTET STRING:
2175 90: SEQUENCE:
2177 20: CONTEXT SPECIFIC (0):
: AC6C0E4C4466A24296E29F093B2566F3CBA4532A
2199 60: CONTEXT SPECIFIC (1):
2201 58: CONTEXT SPECIFIC (4):
2203 56: SEQUENCE:
2205 13: SET:
2207 11: SEQUENCE:
2209 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
2214 4: PRINTABLE STRING:'TK26'
2220 39: SET:
2222 37: SEQUENCE:
2224 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
2229 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
2261 4: CONTEXT SPECIFIC (2):'018CBA81'
2267 29: SEQUENCE:
2269 3: OBJECT IDENTIFIER:subjectKeyIdentifier [2.5.29.14]
2274 22: OCTET STRING:
2276 20: OCTET STRING:
: 3F1E5181C8E489F865266E3F8D07646E6DF4AD54
2298 10: SEQUENCE:
2300 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.3.2]
2310 65: BIT STRING UnusedBits:0:
: 3AF31ED593A3EF3FFF313861E17FC3EEA9A5C062C912C893EE06EFB7068FCF123D7475EBF073527
: DB985880C219D28A3F26D2967407A943C104F337D185F560D
2377 270: SET:
2381 266: SEQUENCE:
2385 1: INTEGER:1
2388 64: SEQUENCE:
2390 56: SEQUENCE:
2392 13: SET:
2394 11: SEQUENCE:
2396 3: OBJECT IDENTIFIER:organizationName [2.5.4.10]
2401 4: PRINTABLE STRING:'TK26'
2407 39: SET:
2409 37: SEQUENCE:
2411 3: OBJECT IDENTIFIER:commonName [2.5.4.3]
2416 30: PRINTABLE STRING:
: 'CA TK26:GOST 34.10-12 256-bit'
2448 4: INTEGER:26000002
2454 10: SEQUENCE:
2456 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.2.2]
2466 105: CONTEXT SPECIFIC (0):
2468 24: SEQUENCE:
2470 9: OBJECT IDENTIFIER:contentType [1.2.840.113549.1.9.3]
2481 11: SET:
2483 9: OBJECT IDENTIFIER:data [1.2.840.113549.1.7.1]
2494 28: SEQUENCE:
2496 9: OBJECT IDENTIFIER:signingTime [1.2.840.113549.1.9.5]
2507 15: SET:
2509 13: UTC TIME:'210414192112Z'
2524 47: SEQUENCE:
2526 9: OBJECT IDENTIFIER:messageDigest [1.2.840.113549.1.9.4]
2537 34: SET:
2539 32: OCTET STRING:
: D57380CCD6BBD7442E5EC9F9FB221FDDC3538853903204E2051241CFC4EBE08D
2573 10: SEQUENCE:
2575 8: OBJECT IDENTIFIER:[1.2.643.7.1.1.1.1]
2585 64: OCTET STRING:
: 02C835A97DEF01D76221BEC34CB34A428EB348D165EC344BBDEBFDC7E4FEC5283371
CA28811B2AB
: BAF9407623AA5FF1CB152131FEC931146E905051FCBAEA17F
:
А.4.5 Расшифрованное значение ключа в кодировке BASE64
MIHiAgEBMBcGCCqFAwcBAQECMAsGCSqFAwcBAgECAQRAEWkl+eblsHWs86SNgRKqSxMOgGhbvR/uZ5/WWfdNG1ax
vUwVhpcXIxDZUmzQuNzqJBkseI7f5/JjXyTFRF1a+YGBgQG0i7davCkOGGVcYqFPtS1fUIROzB0fYARIe0tclTRp
are/qzRuVRapqzzO+K21LDpYVfDPs2Sqa13ZN+Ts/JUlv59qCFB2cYpFyB/0kh4+K79yvz7r8+4WE0EmZf8T3ae/
J1Jo6xGunecH1/G4hMts9HYLnxbwJDMNVGuIHV6gzg==
А.4.6 АСН.1 представление расшифрованного ключа
0 226:SEQUENCE :
3 1: INTEGER : 1
6 23: SEQUENCE :
8 8: OBJECT IDENTIFIER : [1.2.643.7.1.1.1.2]
18 11: SEQUENCE :
20 9: OBJECT IDENTIFIER : [1.2.643.7.1.2.1.2.1]
31 64: OCTET STRING :
: 116925F9E6E5B075ACF3A48D8112AA4B130E80685BBD1FEE679FD6
: 59F74D1B56B1BD4C158697172310D9526CD0B8DCEA24192C788EDF
: E7F2635F24C5445D5AF9
97 129: CONTEXT SPECIFIC (1) :
: 01B48BB75ABC290E18655C62A14FB52D5F50844ECC1D1F6004487B
: 4B5C9534696AB7BFAB346E5516A9AB3CCEF8ADB52C3A5855F0CFB3
: 64AA6B5DD937E4ECFC9525BF9F6A085076718A45C81FF4921E3E2B
: BF72BF3EEBF3EE1613412665FF13DDA7BF275268EB11AE9DE707D7
: F1B884CB6CF4760B9F16F024330D546B881D5EA0CE
| RFC5958 | С. Тернер. Пакеты асимметричных ключей [S. Turner, Asymmetric Key Packages, 2010] |
| RFC7292 | PKCS#12 (версия 1.1) Синтаксис обмена персональной информацией [K. Moriarty, M. Nystrom, Personal Information Exchange Syntax (v. 1.1), 2014] |
УДК 681.3.06:006.354 | | |
Ключевые слова: ключевой контейнер, пароль, ключ |