Купить Р 1323565.1.023-2018 — бумажный документ с голограммой и синими печатями. подробнее
Распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль"
Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.
Рекомендации являются дополнением к ГОСТ Р ИСО/МЭК 9594-8. В рекомендациях описываются правила использования алгоритма подписи ГОСТ Р 34.10 и функции хэширования ГОСТ Р 34.11-2012 в инфраструктуре открытых ключей (PKI) X.509. Для ключей, соответствующих алгоритму подписи ГОСТ Р 34.10-2012, определены идентификаторы алгоритмов и соответствующих им параметров. Также в документе указаны идентификаторы алгоритмов функции хэширования ГОСТ Р 34.11-2012 с алгоритмом подписи ГОСТ Р 34.10-2012. В документе определено содержимое полей signature, signatureAlgorithm и subjectPublicKey в сертификатах X.509, списках аннулированных сертификатов и запросах на сертификаты PKCS #10.
1 Область применения
2 Нормативные ссылки
3 Термины и определения
4 Используемые структуры
4.1 Запрос на сертификат
4.2 Сертификат
4.3 Список отозванных сертификатов
5 Порядок использования российских алгоритмов
5.1 Подпись ГОСТ Р 34.10—2012
5.2 Открытый ключ и его параметры (структура SubjectPublicKeyInfo)
5.3 Область использования ключа
Приложение А (справочное) Контрольные примеры
Библиография
Дата введения | 01.06.2019 |
---|---|
Добавлен в базу | 01.02.2020 |
Актуализация | 01.01.2021 |
26.12.2018 | Утвержден | Федеральное агентство по техническому регулированию и метрологии | 1155-ст |
---|---|---|---|
Разработан | ОАО ИнфоТеКС | ||
Издан | Стандартинформ | 2018 г. |
Чтобы бесплатно скачать этот документ в формате PDF, поддержите наш сайт и нажмите кнопку:
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ
Р 1323565.1.023— 2018
РЕКОМЕНДАЦИИ ПО СТАНДАРТИЗАЦИИ
Информационная технология
КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ
Использование алгоритмов ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012 в сертификате, списке аннулированных сертификатов (CRL) и запросе на сертификат PKCS #10 инфраструктуры открытых ключей Х.509
Издание официальное
Москва
Стандартинформ
2018
1 РАЗРАБОТАНЫ Открытым акционерным обществом «Информационные технологии и коммуникационные системы (ОАО «ИнфоТеКС»)
2 ВНЕСЕНЫ Техническим комитетом по стандартизации ТК 26 «Криптографическая защита информации»
3 УТВЕРЖДЕНЫ И ВВЕДЕНЫ В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 26 декабря 2018 г. № 1155-ст
4 ВВЕДЕНЫ ВПЕРВЫЕ
Правила применения настоящих рекомендаций установлены в статье 26 Федерального закона от 29 июня 2015 г. № 162-ФЗ «О стандартизации в Российской Федерации». Информация об изменениях к настоящим рекомендациям публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе «Национальные стандарты», а официальный текст изменений и поправок — в ежемесячном информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящих рекомендаций соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)
©Стандартинформ. оформление. 2018
Настоящие рекомендации не могут быть полностью или частично воспроизведены, тиражированы и распространены в качестве официального издания без разрешения Федерального агентства по техническому регулированию и метрологии
II
Данное поле должно присутствовать, если используется алгоритм подписи ГОСТ Р 34.10-2012 с длиной ключа 256 бит при следующих значениях поля publ icKcyParamSct:
id-GostR3410-2001-CryptoPro-A-ParamSet, «1.2.643.2.2.35.1*; id-GostR3410-2001-CryptoPro-B-ParamSet, «1.2.643.2.2.35.2»; id-GostR3410-2001-CryptoPro-C-ParamSet, «1.2.643.2.2.35.3*; id-GostR3410-2001-CryptoPro-XchA-ParamSet, «1.2.643.2.2.36.0»; id-GostR3410-2001-CryptoPro-XchB-ParamSet, «1.2.643.2.2.36.1».
При этом идентификатор aigestParamSet должен быть равен идентификатору алгоритма хэширования ГОСТ Р 34.11-2012 с длиной выхода 256 бит: id-tc26-gost3411 -12-256, «1.2.643.7.1.1.2.2»;
Данное поле не рекомендуется включать, если используется алгоритм подписи ГОСТ Р 34.10— 2012 с длиной ключа 256 бит при следующем значении поля publ icKcyPaiarnSet: id-tc26-gost•3410-2012-256-paramSetA, «1.2.643.7.1.2.1.1.1»;
Данное поле должно отсутствовать, если используется алгоритм подписи ГОСТ Р 34.10-2012 с длиной ключа 256 бит при следующих значениях поля publ icKeyParamSet:
id -tc26-gost- 3410-2012-256-paramSetB, «1.2.643.7.1.2.1.1.2»; id-tc26-gost-3410-2012-256-paramSetC, «1.2.643.7.1.2.1.1.3»; id-tc26-gost-3410-2012-256-paramSetD, «1.2.643.7.1.2.1.1.4».
5.2.2 Поле subjectPublicKey структуры SubjectPublicKeylnfo
Поле subjectPublicKey структуры Subject Publ icXey nfo содержит открытый ключ, который задается парой координат (х.у). определенной в ГОСТ Р 34.10-2012. представленных в следующем формате:
- Открытый ключ, соответствующий алгоритму ГОСТ Р 34.10-2012 с длиной ключа 256 бит. имеет представлениеCoslr3410-2012 -256-Publ icKcy. которое задается байтовой строкой длины 64 байта. где первые 32 байта содержат представление координаты х в формате little-endian, а последние 32 байта содержат представление координаты у в формате little-endian.
- Открытый ключ, соответствующий алгоритму ГОСТ Р 34.10-2012 с длиной ключа 512 бит. имеет представление GostR3410-2012-512-Publ icKey, которое задается байтовой строкой длины 128 байт, где первые 64 байта содержат представление координаты х в формате little-endian, а последние 64 байта содержат представление координаты у в формате little-endian.
Ключи проверки подписи GostR3410-2012-256-PublicKey и GostR3410-2012-512-PublicKey должны быть представлены в DER-кодировке в виде строки октетов (OCTET STRING) в соответствии с ГОСТ Р ИСО/МЭК 8825-1—2003 (раздел 8.6):
GOSLR3410-2012-256-PublicKey ;:= OCTET STRING (64),
GoslR3410-2012-512 -PublicKey OCTET STRING (128).
5.3 Область использования ключа
Расширение KeyUsage (см. [3]. раздел 4 2.1.3) является опциональным полем структуры TBSCeriif icate (см. 4.2.1). Для ключей, соответствующих алгоритму подписи ГОСТ Р 34.10-2012. данное расширение может иметь следующие флаги:
KeyUsage BIT STRING
(
aigitalSignature |
(0) |
contentCommitment |
(1) |
keyAgreement |
(4) |
keyCcrtSign |
(5) |
cRLSign |
(6) |
encipherOnly |
(7) |
decipherOnly |
(8) |
)
При этом если ключ может использоваться для формирования ключей согласования, то флаг keyAgreement обязательно должен присутствовать в расширении KeyUsage, а флаги encipherOnly и decipherOnly могут присутствовать опционально. При этом флаги encipherOnly и decipherOnly не могут присутствовать в расширении KeyUsage одновременно.
Приложение A (справочное)
Контрольные примеры
В данном разделе приводятся примеры запроса на сертификат PKCS #10. сертификата и списка аннулированных сертификатов с параметром алгоритма подписи ГОСТ Р 34.10-2012 с длиной клкуча 256 бит
А.1 Пример 1
А. 1.1 Значения параметров
В данном примере используются следующие параметры, определенные в ГОСТ Р 34 10—2012. приложение А.1:
- Модуль эллиптической кривой;
- Коэффициенты эллиптической кривой.
- Порядок группы точек эллиптической кривой.
- Порядок циклической подгруппы точек эллиптической кривой;
- Координаты базовой точки эллиптической кривой
В качестве идентификатора приведенных выше параметров используется значение «1 2 64322350*. В качестве ключа подписи используется ключ, определенный в ГОСТ Р 34 10—2012. приложение А 1 1.6:
d - 7A929ADE789BB9BE10ED359DD39A72C11360961F49397EEE1D19CE9891EC3B2816
В качестве открытого ключа используется клкы проверки подписи, определенный в ГОСТ Р 34 10—2012, приложение А 1.1.7:
Xq - 7F2B49E270DB6D90D8S95BEC458B50C585853A1D4E9B788F6689D3D8E56FD80B16 Yq - 26F1B489D6701DD185C8413A977B3CBBAF64D1C593D26627DFFB10:A87FF77DA1(.
В качестве случайного числа для подписи используется к. определенный в ГОСТ Р 34 1 0—2012, приложение
А 1.2:
k - 77105C9B20BCD3122823C8CF6FCC7B956DE33814E95B7FE64FED924594DCEAB316 А.1.2 Запрос на сертификат А 1.2.1 Запрос на сертификат в кодировке BASE64
МI НТК ICBAg ЕАМ ВIX EDAOBQNVBAMTBOV4 YW1 wbGUwZ J A f BrjgqhQXHAQEBATATBgcq hQMCAi MABggqhQMHAQECAgNUAARAC9hv5djbiWaPeJtOHbqFhcVQi OXsW1nYkG3 b c(XJJK3/ad/*HGhD73ycLn0pPF0WSvuzx71zpByIXRHXDWibTxJqAAMAoGCCqFAwc3 AQMCAOEAaqqzj }X'JqqUXlA>IBoZEi2FVITlefTLuWl jzf 3zrMQypBqljS8asUgoDN ntVv7aQZdAUlVKQnZ7g60EP9OdwEI<w--
A1.2 2 ACH 1 представление запроса на сертификат
| ||||||||||||||||||||||||
) |
<2 5 4 3)
)
28
30
32
42
44
53
102
31
8
19
7
63
66
67
64
SEQUENCE (
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-gost3410-12-256 (1.2.643.7.1.1.1.1)
SEQUENCE {
OBJECT IDENTIFIER
id-GostR3410-2001-TescParamSet (1 2 643 2 2 35 0) OBJECT IDENTIFIER
id-tc26-gost3411-12-256 (1.2.643.7.1.1.2.2)
)
BIT STRING OCTET STRING
0B D8 6F E5 D8 D3 89 66 8F 78 9B 4E ID BA 85 85 C5 50 8B 45 EC 5B 59 D8 90 6D D3 70 E2 49 2B 7F
DA 77 FF 87 1A 10 FB DF 27 66 D2 93 C5 D1 64 AF BB 3C 7B 97 ЗА 41 C8 85 D1 ID 70 D6 89 B4 FI 26
133 | |
135 |
10 |
137 |
8 |
147 |
65 |
CONTEXT SPECIFIC (O) (
}
)
SEQUENCE {
OBJECT IDENTIFIER
id*tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
)
BIT STRING
6Л AA ВЗ 8E 35 D4 AA Л5 17 94 03 01 79 91 22 D8
55 48 4F 57 9F 4C BB 96 D6 3C DF DF ЗА CC 43 2A
41 AA 28 D2 FI AB 14 82 80 CD 9E D5 6F ED A4 19
74 05 35 54 A4 27 67 B8 ЗА DO 43 FD 39 DC 04 93
M11BG DC3xqADAg ECAgE KMAoGCCq FAwe BAQXCMВIX EDA03gNVBAMTB0V4 YW1wbGUwIBcNXDKwMTAxMDAwMDAwWhg PM jAiMDEyMzEwXDAwMDBaMBIxEDAOBgNVBAMT30V4YWlwbGUwZjAfBggqhQMHAQEBATATBgcqhQMCAiMABggqhQMHAQ ECAgNDAARAC9hv5dJblWaPeJtOHbqFhcVQ10XsWlnYkG3bcOJJK3/ad/*KGhD73ycbOpPFOWSvuzx7lzp3yIXRKXD WibTxJjAKBgcqhQM3AQEDAgN3AEOGDlxBQFcTPHxIEpISzpCT8rrasslFbiDokJqzGC2u.QaooOvGrFIKAzZ7Vb.2k GXQFNVSkJ2e40tBD/TncBJM-
0 280 4 198
7 3
9 1
12 1 15 10
17 8
27 18
29 16
31 14
33 3
38 7
47 32
49 13
64 15
81 18 83 16
85 14
87 3
92 7
101 102 103 31
105 8
115 19
117 7
SEQUENCE {
SEQUENCE (
INTEGER 2 )
INTEGER 10 SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
)
SEQUENCE {
SET (
SEQUENCE {
OBJECT IDENTIFIER conroonNatne (2 5 4 3)
PrintableString 'Exarrple'
)
)
SEQUENCE {
UTCTime 01/01/2001 00:00:00 GMT GeneralizedTime 31/12/2050 00:00:00 GMT )
SEQUENCE {
SET (
SEQUENCE (
OBJECT IDENTIFIER coiwronName (2 5 4 3)
PrintableString 'Example'
)
)
)
SEQUENCE {
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-gost3410-12-256 (1.2.643.7.1.1.1.1)
SEQUENCE {
OBJECT IDENTIFIER
id-GostR3410-2001-TestParamSet (1 2 643 2 2 35 0)
OBJECT IDENTIFIER
126 8
136 67
139 64
205 10
207 8
217 65
Id-tc26-gost3411-12-256 (1.2.643.7.1.1.2.2)
)
)
BIT STRING
OCTET STRING | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
}
)
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-sigr.withdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
>
BIT STRING
OF D2 33 A6 C5 10 4A 94 BA 81 58 ОС DO Cl 52 77
39 45 E6 DA IB EA 06 84 3B 02 29 C7 2D 08 B6 7F
41 AA 28 D2 FI AB 14 82 80 CD 9E D5 6F ED A4 19
74 05 35 54 A4 27 67 B8 ЗА DO 43 FD 39 DC 04 93
A.1.4 Список аннулированных сертификатов
A 1 4 1 Список аннулированных сертификатов в кодировке BASE64
MIGSMEECAQEwCgYIKoUDBwEBAwIwEjEQMA4GAlUEAxMHRXhhbXBsZRcNXTQwMTAxyDAwyDAwWhcNXTQwMTAyyDAwX DAwWjAKBggqhQMHAQEDAgNBAEK/OSoUO*vpV68*RstQvl9CIaADrTOXJlPJSpw3oxOgQuooOvGrFIKAzZ7Vb*2)cGX QFNVSkJ2e40tBD/TncBJM-
A 1.4.2 ACH.1 представление списка аннулированных сертификатов
О 146: SEQUENCE {
3 65: SEQUENCE {
5 1: INTEGER 1
8 10: SEQUENCE {
10 8: OBJECT IDENTIFIER
: id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
: )
20 18: SEQUENCE (
22 16: SET {
24 14: SEQUENCE (
26 3: OBJECT IDENTIFIER correnonName (2 5 4 3)
31 7: PrintableString 'Example'
: )
: )
: )
40 13: UTCTime 01/01/2014 00:00:00 СУТ
55 13: UTCTirne 02/01/2014 00:00:00 GMT
: >
70 10: SEQUENCE {
72 8: OBJECT IDENTIFIER
: id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
: >
82 65: BIT STRING
42 BF 39 2A 14 D3 ЕВ E9 57 AF 3E 46 CB 50 BF 5F
: 42 21 AO 03 AD 3D 17 27 53 C9 4A 9C 37 A3 ID 20
: 41 AA 28 D2 FI AB 14 82 80 CD 9E D5 6F ED A4 19
: 74 05 35 54 A4 27 67 B8 ЗА DO 43 FD 39 DC 04 93
: >
A.2 Пример 2
В данном разделе приводятся примеры запроса на сертификат PKCS #10. сертификата и списка аннулированных сертификатов с параметром алгоритма подписи ГОСТ Р 34 10—2012 «1 2 643 7 1 21.1.1» с ключом подписи длины 256 бит для скрученной эллиптической кривой Эдвардса
A.2.1 Значения параметров
В данном примере используются следующие параметры
- Модуль эллиптической кривой,
- Коэффициенты эллиптической кривой;
- Порядок группы точек эллиптической кривой;
- Порядок циклической подгруппы точек эллиптической кривой,
- Координаты базовой точки эллиптической кривой
В качестве идентификатора приведенных выше параметров используется значение «1.2 643 7.1 2 1 1.1» из Р 50 1 114—2016. приложение А 3 В качестве клкча подписи используется ключ
d - 7A929ADE789BB9BE10ED359DD39A72C11B60961F49397EEE1D19СЕ9891ЕСЗВ2816
В качестве ключа проверки подписи используется ключ, соответствующий выбранному пшену подписи:
Xq - DC38EA3CDDF95C6D77A00BCE47E31354D156D9D0C54A2240403E9859C1F4422B16 Yq - 568C1E8197EF5270E24AB0214C6F6F9CA4FDEFD2C154DB7ACFC9A4CE3A4888AB16
В качестве случайного числа для подписи используется следующее значение к
к - 27105C9B20BCD3122823C8CF6FCC7B956DE33814E95B7FE64FED924594DCEAB316 А.2.2 Запрос на сертификат А 2 2 1 Запрос на сертификат в кодировке BASE64
MIHKMHkCAQAwEj EQMA4GAlUEAxMHRXhhbXBsZTBoMBcGCCqFAwcBAQEBMAsGCSqF AwcBAgEBAQNDAARAK0i,0wVmYPkBAIkrF0NlW0VQT40fOC6B3bVz53TzquNyriEg6 zqTJz3rbVMHS7/2knG9vTCGwSuJwUu*XgR6MVqAAMAoGCCqFAwcBAQXCA0EADrt8 UlTrnk0Fi-9PQ7w63N/qoqc8*LPJktdNvXlwEpsdDh2lv;JR8bxtSVseurCAKlkrH em9bOg4Jcxjnrm7naQ--
A 2 2 2 ACH 1 представление запроса на сертификат
|
'Example' | ||||||||||||||||||||||||
} |
(2 5 4 3)
)
28
30
32
42
44
94
23
8
11
9
SEQUENCE {
SEQUENCE {
OBJECT IDENTIFIER
id*tc26-gost3410-12-256 (1.2.643.7.1.1.1.1)
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-gost-3410-2012-256-paramSetA (1.2.643.7.1.2.1.1.1)
55
58
67
64
> BIT STRING OCTET STRING | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CONTEXT SPECIFIC ) (0) { |
124
126
128
10
8
138 65
)
<
SEQUENCE
OBJECT IDENTIFIER
id-tc26-signwithdigest-go8t3410-12-256 (1.2.643.7.1.1.3.2)
)
BIT STRING
0E BB 7C 53 54 ЕВ 9E 4D 05 8B EF 4F 43 ВС ЗА 04
DF EA A2 A7 3C F8 ВЗ C9 92 D7 4D BD 79 70 12 93
ID OE ID A5 BE 34 7C 6F IB 52 56 C7 AE AC 20 OA
D6 4A C7 7A 6F 5B ЗА OE 09 73 18 E7 AE 6E E7 69
: )
MIIBEDCBvqADAgECAgEKMAoGCCqFAwcBAQMCMBIxEDAOBgNVBAyT30V4YWlwbGUw:BcNMDEwMTAxX:VVwMUAwWhgPM j A1 MDEyMz EwMDAwMD3aXB I x EDAOBgNVBAMTBOV4 YW IwbGUwXjAXBggqhQMHAQEBATAL Bg kqhQMHAQIBAQEDQwAEQA vYb*XY2Ilmj 3ibTh26hYXFUItF7FtZ2JBt23DiSSt/2nf/hXoQ*98nZtKTxdFkr7s8e5c6QciF0Rlwlom08SYwCgY IKoUDBwEBAwlDQQAdDh2 lvjR8bxtSVseurCAKlkrHem9bOg4Jcxjnrm7naTePiX/cZ4wlywyMeJAfhcCxsSnRTiLn 3QOJXcqW38rB
О 272 4 190
7 3
9 1
12 1 15 10
17 8
27 18
29 16
31 14
33 3
38 7
47 32
49 13
64 15
81 18 83 16
85 14
87 3
92 7
101 94
103 23
105 8
115 11
117 9
128 67
131 64
197 10
199 8
209 65
SEQUENCE {
SEQUENCE { tOJ {
INTEGER 2
INTEGER 10 SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
)
SEQUENCE (
SET {
SEQUENCE {
OBJECT IDENTIFIER corenonName (2 5 4 3)
PrintableString •Example'
SEQUENCE {
UTCTime 01/01/2001 00:00:00 GMT GeneralizodTine 31/12/2050 00:00:00 GMT )
SEQUENCE (
SET {
SEQUENCE {
OBJECT IDENTIFIER corrcnonName (2 5 4 3)
PrintableString 'Example'
)
SEQUENCE {
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-gost3410-12-256 (1.2.643.7.1.1.1.1)
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-gost-3410-2012-256-paramSetA (1.2.643.7.1.2.1.1.1)
)
BIT STRING OCTET STRING
0B |
D8 |
6F |
E5 |
D8 |
D8 |
89 |
66 |
8F |
78 |
9B |
4E |
ID |
BA |
85 |
85 |
C5 |
50 |
8B |
45 |
EC |
5B |
59 |
D8 |
90 |
6D |
D3 |
70 |
E2 |
49 |
2B |
7F |
DA |
77 |
FF |
87 |
1A |
10 |
FB |
DF |
27 |
66 |
D2 |
93 |
C5 |
D1 |
64 |
AF |
BB |
3C |
7B |
97 |
ЗА |
41 |
C8 |
85 |
D1 |
ID |
70 |
D6 |
89 |
B4 |
FI |
26 |
)
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
BIT STRING
}
37 8F 89 7F DC 67 8C 25 СВ ОС 8C 78 90 IF 85 CO
B1 B1 29 D1 4E 22 Б7 DD 03 89 5D CA 96 DF CA Cl
ID OE ID A5 BE 34 7C 6F IB 52 56 C7 AE AC 20 OA
D6 4Л C7 7A 6F 5B 3Л OE 09 73 18 E7 AE 6E E7 69
A.2.4 Список аннулированных сертификатов
A 2 4 1 Список аннулированных сертификатов в 16-ричном формате
MIGSMEECAQEwCQYIKoUDBwEBAwIwE3EQMA4CAlUEAxKKRXhhbX3sZRcNMTQwMTAxMDAw«DAWWhcNMTQWMTAyMDAta«
DAwWjAKBggqhQMHAQEDAgNBABS9aAh8O5A8eqKLB/6yS71v4JY/VjJnNZ9c2Oq0UFintHQ4dpb40fG8bUlbHrqwgC:t
ZXx3pvWzoOCXMY565u52k-
А 2 4 2 АСН 1 представление списка аннулированных сертификатов
о
3
5
8
10
146
65
1
10
8
20
22
24
26
31
18
16
14
3
7
SEQUENCE {
SEQUENCE {
INTEGER 1 SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
)
SEQUENCE {
SET {
SEQUENCE {
OBJECT IDENTIFIER coirnonNatne (2 5 4 3)
PrintableString 'Example'
)
}
)
40
55
70
72
13
13
10
8
UTCTimc 01/01/2014 00:00:00 GMT UTCTime 02/01/2014 00:00:00 GMT )
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwlthdigest-gost3410-12-256 (1.2.643.7.1.1.3.2)
)
BIT STRING
14 BD 68 08 7C 3B 90 ЗС 7Л A2 8B 07 FE B2 E7 BD
6F EO 96 3F 56 32 67 35 9F 5C D8 EA B4 50 59 AD
ID OE ID A5 BE 34 7C 6F IB 52 56 C7 AE AC 20 OA
D6 4Л C7 7A 6F 5B ЗА OE 09 73 18 E7 AE 6E E7 69
}
A.3 Пример 3
В данном разделе приводятся примеры запроса на сертификат PKCS #10. сертификата и списка аннулированных сертификатов с параметром алгоритма подписи ГОСТ Р 34 1 0—2012 «1.2.643.7.1.2.1.2.0*с ключом подписи длины 512 бит
А.3.1 Значения параметров
В данном примере используются следующие параметры
- Модуль эллиптической кривой;
- Коэффициенты эллиптической кривой;
- Порядок группы точек эллиптической кривой.
- Порядок циклической подгруппы точек эллиптической кривой,
- Координаты базовой точки эллиптической кривой
В качестве идентификатора приведенных выше параметров используется значение «1 .2.643.7.1.2.1.2. » из ГОСТ Р 34 10—2012. приложение А 2. В качестве ключа подписи используется ключ, определенный в ГОСТ Р34 10—2012, приложение А 2 16:
d - 0BA6048AADAE241BA40936D47756D7C93091A0E8514669700EE7508E50831020W 72E8123B2200A0563322DAD2827E2714A2636B7BFD18AADFC62967821FA18DD4,6
В качестве клюна проверки подписи используется ключ, определенный в ГОСТ Р 34.10-2012, приложение А. 2.1.7:
Xq - 115DC5BC96760C7B48598D8AB9E740D4C4A85A65BE33C1815B5C320C854621DD\\ 5A515856D13314AF69BC5B924C8B4DDFF75C4 5415C1D9DD9DD33612CD530EFE1 Yq - 37C7C90CD4030F5621DC3ACIB751CFA0E2634FA0503B3D52639F5D7FB72AFD6IW EA199441D943FFE7FOC70A2759A3CD384C114ElF9339FDF27F35ECA93677BEECj6
82
65
k - 0359E7F431410FEACC570456C6801496946312120B39D019D455986E364F3658W 86748ED7A44ВЗЕ794434006011842286212273A6D14CF70EA3AF718BlAE679Fljg А.3.2 Запрос на сертификат А 3 2 1 Запрос на сертификат в кодировке BASE64
MIIBTzCBvAIВ ADASX RAwDgYDVQQDEwdFeGF tcGx1МIGgMBcGCCqFAweBAQECMAsG CSqFAwcBAgECAAOBhAAEgYDh7zDVLGEz3djndHVxBRVz3302LTJJbvGmvFDPRVlhR Wt0hRoUMMlxbgcEzvmVdqMTUQ0eSiolZSHsMdpa8xV0R7L53NqnsNX/y/'nriTH04R TLjNolknCsfw5/9D2UGUGeph/Sq3fl2fYlI901CgT2Pioy9Rt8E63CFWDvrvUDMnH N6AAMAoGCCqFAwcBAQMDA4G3AEM7KWzkClHx5XN.sWqlxoOCiikBbnZEn4hJg/Jlq wF2HvyTibEUnilwhkqdbqtoiTq9YKTn/xvwP9L10Xr6HZRVgvhvpgo I EJGi PdeV4e PGie5RXjyC7g3MJkPHjuqPys01SSVYSGsg8cnsGXy0dZhQJgyTvLzZxcMxfhk0Th c642
0
4
7
10
12
14
16
21
335
188
1
18
16
14
3
7
SEQUENCE {
SEQUENCE {
INTEGER 0 SEQUENCE <
SET {
SEQUENCE {
OBJECT IDENTIFIER cownonName (2543) PrintableString 'Example'
}
)
30
33
35
45
47
160
23
8
11
9
)
SEQUENCE {
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-gost3410-12-512 (1.2.643.7.1.1.1.2)
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-gost-3410-12-512-paramSetTest (1.2.643.7.1.2.1.2.0)
)
58
62
132
128
BIT STRING OCTET STRING
El |
EF |
30 |
D5 |
2C |
61 |
33 |
DD |
D9 |
9D |
ID |
5C |
41 |
45 |
5C |
F7 |
DF |
4D |
8B |
4C |
92 |
5B |
ВС |
69 |
AF |
14 |
33 |
D1 |
56 |
58 |
51 |
5A |
DD |
21 |
46 |
85 |
ОС |
32 |
5C |
5B |
81 |
Cl |
33 |
BE |
65 |
5A |
A8 |
C4 |
D4 |
40 |
E7 |
B9 |
8A |
8D |
59 |
48 |
7B |
ОС |
76 |
96 |
BC |
C5 |
5D |
11 |
EC |
BE |
77 |
36 |
A9 |
EC |
35 |
7F |
F2 |
FD |
39 |
93 |
IF |
4 E |
11 |
4C |
B8 |
CD |
A3 |
59 |
27 |
OA |
C7 |
FO |
E7 |
FF |
43 |
D9 |
41 |
94 |
19 |
EA |
61 |
FD |
2A |
B7 |
7F |
5D |
9F |
63 |
52 |
3D |
3B |
50 |
AO |
4F |
63 |
E2 |
A0 |
CF |
51 |
B7 |
Cl |
ЗА |
DC |
21 |
56 |
OF |
OB |
D4 |
ОС |
C9 |
C7 |
37 |
195
195
197
207
0
10
8
)
CONTEXT SPECIFIC (0){
)
}
SEQUENCE (
OBJECT IDENTIFIER
id-tc26-8ignwithdigest-go8t3410-12-512 (1.2.643.7.1.1.3.3)
BIT STRING 43 3B ID |
6C |
E4 |
OA |
51 |
FI |
E5 |
73 |
7E |
B1 |
6A |
A2 |
C6 |
83 | ||
82 |
9A |
40 |
5B |
9D |
91 |
27 |
E2 |
12 |
60 |
FC |
9D |
6A |
CO |
5D |
87 |
BF |
24 |
E2 |
6C |
45 |
27 |
8A |
5C |
21 |
92 |
A7 |
5B |
A9 |
49 |
93 |
AB |
D6 |
07 |
4E |
7F |
FI |
BF |
03 |
FD |
2F |
53 |
97 |
AF |
A1 |
D9 |
45 |
58 |
2F |
86 |
FA |
60 |
AO |
81 |
09 |
1A |
23 |
DD |
79 |
5E |
IE |
3C |
68 |
9E |
E5 |
12 |
A3 |
C8 |
2E |
EO |
DC |
C2 |
64 |
3C |
78 |
EE |
A8 |
FC |
AC |
D3 |
54 |
92 |
55 |
84 |
86 |
B2 |
OF |
1C |
9E |
Cl |
97 |
C9 |
06 |
99 |
85 |
02 |
60 |
C9 |
3B |
CB |
CD |
9C |
SC |
33 |
17 |
El |
93 |
44 |
El |
73 |
AE |
36 |
)
A.3.3 Сертификат
A 3 3 1 Сертификат в кодировке BASE64
MIIBlTCCAQGgAwIBAglBCzAKSggqhQMKAQEDAzASMRAwDgYDVQQDEwdFeGFtcGxlMCAXDTAxMDEwMTAwMDAwMFoYD zIwNTAxMjMxMDAwMDAwWjASMRAwDgYDVQQDEwdFeGFtcGxlMIGgMBcGCCqFAwcBAQECMAsGCSqFAwcBAgECAAOBhA AEgYDh7zDVLGEz3dirdHVxBRVz3302LTJJbvCmvFDPRVlhRWt0hRoUMMlxbgcEzvmVaqMTUQOe5iolZSH8Mdpa8xV0 R7L53NqnsNX/y/TmTK04RTLjNolknC8fw5/9D2UGUGeph/Sq3f12fY1I901CgT2PioM9Rt8E63CFWDwvUDKnHNzAK BggqhQMHAQEDAwOBgQA9Vd5th8PV*£7oRo60iy2W4DQS5«enYn2gg-fFdnQn22r2MVNyGRUyCJ2h*aNGM7r87Q72B PcvG»UvN6IYEpJsL4b6YKCBCRo13XleH1xonuUSo8gu4NzCZDx47qJ8rNNUklWEhrIPHJ7B18kGmYUCY>!k7y82cXD MX4ZNE4XOuNg«■
О 405 4 257
8 3
10 1
13 1
16 10 18 8
A.3.3 2 ACH 1 представление сертификата
SEQUENCE 1 SEQUENCE {
(0) <
INTEGER 2
)
INTEGER 11 SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwithdlgest-gost3410-12-512 (1.2.643.7.1.1.3.3)
28 18 30 16
32 14
34 3
39 7
)
SEQUENCE {
SET (
SEQUENCE <
OBJECT IDENTIFIER comroonName (2 5 4 3)
PrlntableStrlng 'Example'
)
48 32
50 13
65 15
82 18 84 16
86 14
88 3
93 7
)
SEQUENCE {
UTCTime 01/01/2001 00:00:00 GMT GeneralizedTime 31/12/2050 00:00:00 GMT )
SEQUENCE (
SET {
SEQUENCE (
OBJECT IDENTIFIER comroonName (2543)
PrlntableStrlng 'Example'
)
)
102 160 105 23
107 8
117 11
119 9
)
SEQUENCE {
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-gost3410-12-512 (1.2.643.7.1.1.1.2)
SEQUENCE <
OBJECT IDENTIFIER
Id-tc26-gost-3410-12-512-paramSetTest (1.2.643.7.1.2.1.2.0)
) BIT STRING | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
)
130 132
134 128
265 10
)
SEQUENCE (
267
277 129
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-512 (1.2.643.7.1.1.3.3)
} BIT STRING | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
)
A.3.4 Список аннулированных сертификатов
M:HTV.EECAQEwCgYIKoUDBwEBAwMwSjEOMA4GAlUEAx.yHRXhhbXBs2RcNy.TOwMTAx«DAwMDAwWhcNy.TX?wMTAyMD
Av^DAwW!AXBggqhQXHAQEDAwOBgQA6E/t67NtVY072E3z8XdZCkXMiJV7NpCh/Ax.ik7uoIMHlkjU3ArGxGqHs/
vkx69C6jQlnHlZVMo5/zq77ZBR9NL4b6YKCBCRoj3XleHjxonuUSo8gu4NzCZDx47qj8rNNUklWEhrIPHJ7B18kGm
YUCYMk7y82cXDXX4ZNE4XOuNg--
о
3
5
8
10
211
65
1
10
8
20
22
24
26
31
18
16
14
3
7
SEQUENCE {
SEQUENCE {
INTEGER 1 SEQUENCE (
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.3)
)
SEQUENCE (
SET {
SEQUENCE {
OBJECT IDENTIFIER correnonName (2 5 4 3)
PrintableString 'Example'
)
)
)
40
55
70
72
13
13
10
8
82 129
UTCTime 01/01/2014 00:00:00 GMT UTCTime 02/01/2014 00:00:00 GMT >
SEQUENCE {
OBJECT IDENTIFIER
id-tc26-signwithdigest-gost3410-12-256 (1.2.643.7.1.1.3.3)
BIT STRING ЗА 13 FB |
7A |
EC |
DB |
55 |
60 |
EE |
F6 |
13 |
7C |
FC |
5D |
D6 |
46 | ||
91 |
73 |
2E |
BF |
B3 |
69 |
0Л |
IF |
CO |
C7 |
E8 |
Л4 |
EE |
EA |
08 |
30 |
7D |
64 |
8D |
4D |
CO |
98 |
6C |
46 |
A8 |
7B |
3F |
BE |
4C |
7A |
F4 |
2E |
A3 |
43 |
59 |
C7 |
95 |
95 |
4C |
A3 |
9F |
F3 |
AB |
BE |
D9 |
05 |
IF |
4D |
2F |
86 |
FA |
60 |
Л0 |
81 |
09 |
1A |
23 |
DD |
79 |
5E |
IE |
3C |
68 |
9E |
E5 |
12 |
A3 |
C8 |
2E |
EO |
DC |
C2 |
64 |
3C |
78 |
EE |
A8 |
FC |
AC- |
D3 |
54 |
92 |
55 |
84 |
86 |
32 |
OF |
1C |
9E |
Cl |
97 |
C9 |
06 |
99 |
85 |
02 |
60 |
C9 |
3B |
CB |
CD |
9C |
5C |
33 |
17 |
El |
93 |
44 |
El |
73 |
AE |
36 |
1 Область применения....................................................................................................................................1
2 Нормативные ссылки....................................................................................................................................1
3 Термины и определения...............................................................................................................................2
4 Используемые структуры.............................................................................................................................2
4.1 Запрос на сертификат............................................................................................................................2
4.2 Сертификат.............................................................................................................................................3
4.3 Список отозванных сертификатов.........................................................................................................4
5 Порядок использования российских алгоритмов.......................................................................................5
5.2 Открытый ключ и его параметры (структура SubjectPuWicKeylnfo)....................................................6
5.3 Область использования ключа..............................................................................................................7
Приложение А (справочное) Контрольные примеры....................................................................................8
Библиография................................................................................................................................................17
(1J ITU-T Recommendation X690 (1997) | ISO/1EC 8825-1:1998. Information Technology —
ACH 1 Encoding Rules Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)
(2) Nystrom M, Kaliski В . PKCS #10: Certification Request Syntax Specification, version 1.7,
November 2000
(3) IETF RFC 5280 Cooper D Santesson S., Farrell S.. Boeyen S , Housley R and W Polk, Internet X 509 Public
Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile. IETF RFC 5280. May 2008
Настоящие рекомендации содержат описание форматов кодирования, идентификаторов и форматов параметров для алгоритмов ГОСТ Р 34.10-2012 и ГОСТ Р 34,11—2012 при их использовании на территории Российской Федерации, в учреждениях Российской Федерации за рубежом и в находящихся за рубежом обособленных подразделениях юридических лиц. образованных в соответствии с законодательством Российской Федерации.
Необходимость разработки новой версии настоящих рекомендаций вызвана потребностью в обеспечении совместимости использования российских алгоритмов подписи ГОСТ Р 34 10—2012. алгоритмов функции хэширования ГОСТ Р 34.11-2012. алгоритмов согласования ключей в инфраструктуре открытых ключей (PKI). а также принятием алгоритмов шифрования ГОСТ Р 34.12-2015 и режимов шифрования ГОСТ Р 34.13-2015.
Использование алгоритмов ГОСТ Р 34.10—2012, ГОСТ Р 34.11—2012 в сертификате, списке аннулированных сертификатов (CRL) и запросе на сертификат PKCS #10 инфраструктуры открытых ключей Х.509
Information technology Cryptographic information security Usage of GOST R 34 10—2012 and GOST R 34.11—2012 algorithms in certificate. CRL and PKCS#10 certificate request in X 509 public key infrastructure
Дата введения — 2019—06—01
Настоящие рекомендации являются дополнением к ГОСТ Р ИСО/МЭК 9594-8 В рекомендациях описываются правила использования алгоритма подписи ГОСТ Р 34.10 и функции хэширования ГОСТ Р 34.11-2012 в инфраструктуре открытых ключей (PKI) Х.509.
Для ключей, соответствующих алгоритму подписи ГОСТ Р 34.10-2012, определены идентификаторы алгоритмов и соответствующих им параметров. Также в документе указаны идентификаторы алгоритмов функции хэширования ГОСТ Р 34.11-2012 с алгоритмом подписи ГОСТ Р 34.10-2012.
В документе определено содержимое полей signature. signatureAlgorithm и subjoctPubl icKcy в сертификатах Х.509. списках аннулированных сертификатов и запросах на сертификаты PKCS#10.
В настоящих рекомендациях использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 34.10-2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи
ГОСТ Р 34.11-2012 Информационная технология. Криптографическая защита информации. Функция хэширования
ГОСТ Р ИСО/МЭК 8824-1 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации
ГОСТ Р ИСО/МЭК 8825-1—2003 Информационная технология. Правила кодирования АСН.1. Часть 1. Спецификация базовых (BER). канонических (CER) и отличительных (DER) правил кодирования
ГОСТ Р ИСО/МЭК 9594-8—98 Информационная технология. Взаимосвязь открытых систем. Справочник. Часть 8. Основы аутентификации
Р 50.1.113—2016 Информационная технология. Криптографическая защита информации. Криптографические алгоритмы, сопутствующие применению алгоритмов электронной цифровой подписи и функции хэширования
Р 50.1.114—2016 Информационная технология. Криптографическая защита информации. Параметры эллиптических кривых для криптографических алгоритмов и протоколов
Примечание — При пользовании настоящими рекомендациями целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю «Национальные стандарты», который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя «Национальные стандарты» за текущий год Если заменен ссы-
Издание официальное
л очный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящих рекомендаций в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, применяется в части, не затрагивающей эту ссылку
3 Термины и определения
В настоящих рекомендациях применены следующие термины с соответствующими определениями.
3.1 АСН.1: Абстрактная синтаксическая нотация, определенная в ГОСТ Р ИСО/МЭК 8824-1.
3.2 DER: Правило кодирования структур данных, созданных в соответствии с АСН.1. описанное
Примечание — В настоящих рекомендациях термины «ключ проверки подписи» и «ключ подписи». введенные в ГОСТ Р 34.10-2012, являются синонимами терминов «открытый ключ» и «закрытый ключ» соответственно.
Отечественные наборы параметров и алгоритмы, используемые в рекомендациях, определены в Р 50.1.114—2016 и Р 50.1.113—2016.
4 Используемые структуры
Механизм информационного обмена при использовании сертификатов описывается следующим образом:
1 Субьект формирует запрос на сертификат в соответствии с 4.1 и посылает данный запрос удостоверяющему центру (УЦ);
2 УЦ формирует на основании данного запроса сертификат с открытым ключом в формате Х.509 в соответствии с 4.2 и посылает его субьекту;
3 Для отзыва сертификатов до истечения срока их действия УЦ формирует список отозванных сертификатов в соответствии с 4.3
4.1 Запрос на сертификат
Запрос на сертификат представляет собой структуру Cert i f icationRequest в формате АСН.1 (см. (2]):
CertificationRequest SEQUENCE (
ccrtif icationRequestInfo Cert ificationRequestInfo,
signaturcAlgorithm
Algor i thinIdent i f ier {{SignaturcAlgor i thms}}, signature BIT STRING
}
Поля структуры имеют следующие значения:
certi f icationRequest Info — информация запроса на сертификат, содержащая, в частности, открытый ключ субъекта, сформированная в соответствии с 4.1.1;
signatureAlgorithm — информация об алгоритме подписи, который использовался при формировании подписи данных поля certificationRecuestlnfo структуры CertificationRequest. сформированная в соответствии с 4.1.2;
signature — подпись данных ПОЛЯ cert if icationRequest Info структуры Cer ti f icationRequest, сформированная в соответствии с 4.1.3.
4.1.1 Поле certificationRequestinfo структуры CertificationRequest
Поле certificationRequestinfo структуры CertificationRequest задается структурой Certi f icat ionRequestlnfo в формате АСН.1:
CertificationRequestinfo SEQUENCE (
version INTEGER { vl<0> > (vl,...),
subject Name,
subjectPKInfo SubjectPublicKeyInfo{(PKInfoAlgorithms)},
attributes|0| Attributes{(CRIAttributes)}
Поля структуры имеют следующие значения:
version — номер версии стандарта. Для стандарта PKCS#10 vl.7 данное поле должно принимать значение 0;
subject — имя субъекта, чей открытый ключ используется для формирования сертификата; subjectPKInfo — набор элементов, содержащих информацию об открытом ключе сертификата и сам ключ;
attributes — набор атрибутов.
Более подробное описание полей структуры Cer t i f i cat i onReques 11 n f с можно найти в [2]. Поле
subjectPKInfo структуры Cert i f icat ionRequest Info имеет структуру SubjectPubl icKey Info и задается в соответствии с 5.2.
4.1.2 Поле signatureAlgorithm структуры CertificationRequest
Поле signatureAlgorithm структуры CertificationRequest задается структурой Algor i thmldent i f ier, описанной в 5.1.1, и содержит информацию об алгоритме подписи, который использовался при формировании поля signature структуры Certi f icat ionRequest (см. 4.1.3). При этом используемый алгоритм подписи должен соответствовать открытому ключу субъекта, указанному в поле subjectPubl icKey структуры SubjectPubl icKeylnfo (см. 5.2.2).
4.1.3 Поле signature структуры CertificationRequest
Поле signature структуры Cert i f icat ionRequest содержит в себе подпись значения поля
cert i f icat ionRequest Inf с структуры Cert i f icat ionRequest, закодированного в формате DER. Значение подписи формируется в соответствии с алгоритмом, указанным в поле signatureAlgor i thm структуры CertificationRequest на закрытом ключе субъекта, соответствующем открытому ключу субъекта, указанному в поле subjectPubl icKey структуры SubjectPubl icKeylnfo (CM. 5.2.2). и формируется в соответствии с 5.1.2.
4.2 Сертификат
Сертификат формата х.509 задается структурой Certificate в формате АСН.1 (см. [3D:
Certificate SEOUENCE
tbsCcrtificate TBSCertificate,
signatureAlgor ithm Algorithmldenti f ier,
signaturcValuc BIT STRING
Поля структуры имеют следующие значения:
tbsCcr t i f icatc — набор параметров сертификата, которые должны быть подписаны: signatureAlgorithm — информация об алгоритме подписи, который использовался при формировании подписи данных поля tbsCcrtif icatc структуры Certi f icatc;
s ignatu revalue — значение подписи, сформированное от данных поля tbsCer t i f icatc структуры Certificate в соответствии с алгоритмом, указанным в поле signatureAlgorithm структуры Certi f icate.
4.2.1 Поле tsbCertificate структуры Certificate
Поле tbsCcrt if icate структуры Certificate содержит в себе информацию о сертификате, которая должна быть подписана, и задается структурой TBSCert if icatc. представляющейся в формате АСН.1 следующим образом:
vcrsionlO] serialNumber signature issuer validity subject
subjectPublicKeylnfo issucrUniqucIDl1)
TBSCertificatc ::= SEQUENCE
EXPLICIT Version DEFAULT vl.
Certi f icatcScrialNumbcr,
Algorithmldentifier.
Name,
Validity.
Name,
SubjectPublicKeylnfo,
IMPLICIT Uniqucldcntifier OPTIONAL,
subjectUniqueIDl2) IMPLICIT UniqueIdentifier OPTIONAL,
extensions[3 I EXPLICIT Extensions OPTIONAL
}
Более подробное описание всех полей структуры iBSCcrti f icatc содержится в (3).
Поле signature структуры TBSCertificate задается структурой Algorithmidentificr в соответствии с 5.1.1 и должно совпадать со значением поля signaturcAlgor Uhm структуры Cor L i f icate (CM.4.2.2).
Поле subjectPubl icKey Info структуры TBSCert i f icate задается структурой SubjectPubl icKey info в соотвествии с 5.2.1 и содержит алгоритм открытого ключа и сам ключ.
4.2.2 Поле signatureAlgorithm структуры Certificate
Поле signatureAlgorithm структуры Certificate задается структурой AlgorithmIdentifier, описанной в 5.1.1, и содержит информацию об алгоритме подписи, который использовался при формировании поля signature структуры Certificate (см. 4 2.3). При этом используемый алгоритм подписи должен соответствовать открытому ключу издателя сертификата, указанному в поле issuer структуры IBSCcnif icate (см. 4.2.1).
4.2.3 Поле signatureValue структуры Certificate
Поле signatureValue структуры Certificate содержит в себе подпись значения поля tbsCert i f icate структуры Cert i f icate, закодированного в формате DER. Значение подписи формируется в соответствии с 5.1.2 по алгоритму, указанному в поле signatureAlgorithm структуры Certi f icate, на закрытом ключе издателя сертификата, имя которого указано в поле issuer структуры
TBSCertif icate (см. 4.2.1),
4.3 Список отозванных сертификатов
Список отозванных сертификатов задается структурой Cert i f icateList в формате АСН.1 (см. [3]):
CortificatcList = SEQUENCE (
tbsCcrtList TBSCcrtList,
signatureAlgorithm Algorithmidenti f ier,
signatureValue BIT STRINC
}
Поля структуры имеют следующие значения:
tbsCertList — набор параметров списка отозванных сертификатов, которые должны быть подписаны;
signatureAlgorithm — информация об алгоритме подписи, который использовался при формировании подписи данных поля tbsCcrtList структуры CortificatcList;
signatureValue — значение подписи, сформированное от данных поля tbsCcrtList структуры Certi f icateList в соответствии С алгоритмом, указанным в поле signaturcAlgor i thm Структуры Cert i f icateList.
4.3.1 Поле tbsCertList структуры CertificateList
Поле tbsCertList структуры CertificateList содержит в себе информацию о списке отозванных сертификатов, которая должна быть подписана, и задается структурой TBSCertList, представляющейся в формате АСН.1 следующим образом:
TBSCertList ::= SEQUENCE (
version Version OPTIONAL,
signature Algorithmldentifier,
thisUpdate nextUpdate revokedCerti f icates {
issuer Name,
Time,
Time OPTIONAL,
Certi ficatcScrialNumber, Time,
SEQUENCE OF SEQUENCE
uscrCcrtificate
Extensions OPTIONAL
rcvocationDatc
crlEntryExtcnsions
EXPLICIT Extensions OPTIONAL }
} OPTIONAL, crlExtensions|0)
Более подробное описание всех полей структуры (BSCcrtList содержится в [3].
Поле signature структуры IBSCcrtList задается структурой Algorithrnldcntifier 8 соответствии с 5.1.1 и должно совпадать со значением поля signaiurcAlgorithm структуры Certi f icateList.
4.3.2 Поле signatureAlgorithm структуры CertificateList
Поле signatureAlgorithm структуры CertificateList задается структурой Algorithmldenti f ier, описанной в 5.1.1, и содержит информацию об алгоритме подписи, который использовался при формировании поля signature структуры CertificateList (см. 4.3.3). При этом используемый алгоритм подписи должен соответствовать открытому ключу издателя списка отозванных сертификатов. имя которого указано в поле issuer структуры IBSCcrtList (см. 4.3.1).
4.3.3 Поле signatureValue структуры CertificateList
Поле signatureValue структуры CertificateList содержит в себе подпись значения поля tbsCertList структуры CertificateList, закодированного в формате DER. Значение подписи формируется в соответствии с 5.1.2 по алгоритму, указанному в поле signatureAlgorithm структуры CertificateList, на закрытом ключе издателя списка отозванных сертификатов, имя которого указано в поле issuer структуры TBSCertList (см. 4.3.1).
5.1 Подпись ГОСТ Р 34.10-2012
5.1.1 Идентификатор и параметры (структура Algorithmldentifier)
Поле signatureAlgorithm структуры CcrlificationRcquesi (CM. 4.1.2), поле signature структуры TBSCcr t i f icaie (cm. 4.2.1). поле signatureAlgorithm структуры Certificate (CM. 4.2.2). поле signature структуры TBSCerlList (CM. 4.3.1), поле signatureAlgorithm структуры CertificateList (CM. 4.3.2), задается структурой Algorithmldentifier, (CM. раздел 8 ГОСТ P ИСО/МЭК 9594-8—98 и (2]):
Algorithmldentifier : : SEQUENCE
(
algorithm OBJECT IDENTIFIER
parameters ANY DEFINED BY algorithm OPTIONAL
}
Поля структуры имеют следующие значения:
algor i thm — идентификатор алгоритма подписи, задающийся в соответствии с 5.1.1.1;
parameters — параметры открытого ключа алгоритма подписи, задающиеся в соответствии с 5.1.1.2.
5.1.1.1 Поле algorithm структуры Algorithmldentifier
Поле algorithm структуры Mgorithmldentif iei содержит идентификатор алгоритма подписи и связанных с ним параметров, который используется при формировании подписи данных:
-Для алгоритма электронной подписи ГОСТ Р 34.10-2012 с длиной ключа 256 бит и алгоритма хэширования ГОСТ Р 34.11-2012 с длиной выхода 256 бит идентификатор в формате АСН.1 задается следующим образом:
id-tc26-s ignwithdigest-gost3410-12-256, «1.2.643.7.1.1.3.2»;
-Для алгоритма электронной подписи ГОСТ Р 34.10-2012 с длиной ключа 512 бит и алгоритма хэширования ГОСТ Р 34.11-2012 с длиной выхода 512 бит идентификатор в формате АСН.1 задается следующим образом:
id-tc26-signwithdigest-gost3410-12-512, «1.2.643.7.1.1.3.3*.
5.1.1.2 Поле parameters структуры Algorithmldentifier
Поле parameters должно отсутствовать. Значение параметров наследуется из соответствующих полей сертификата издателя.
5.1.2 Значение подписи
Поле signature структуры Certi f icationRequest (см. 4.1.3), поле signatureValue структуры Certificate (см. 4.2.3), поле signatureValue структуры Certi f icateList (см. 4.3.3) содержит
в себе подпись данных, закодированных в формате DER При этом результатом работы алгоритма подписи ГОСТ Р 34.10-2012 с длиной ключа 256 бит и 512 бит являются два числа г и s, определенные в ГОСТ Р 34.10-2012 и имеющие длину 256 бит и 512 бит каждый соответственно.
При использовании алгоритма ГОСТ Р 34.10-2012 с длиной ключа 256 бит поле signature задается битовой строкой (BIT STRING) длины 512 бит; при этом первые 256 бит содержат число s в представлении big-endian (старший бит записывается первым), а вторые 256 бит содержат число г в представлении big-endian.
При использовании алгоритма ГОСТ Р 34.10-2012 с длиной ключа 512 бит поле signature задается битовой строкой (BIT STRING) длины 1024 бита; при этом первые 512 бит содержат число s в представлении big-endian, а вторые 512 бит содержат число г в представлении big-endian.
5.2 Открытый ключ и его параметры (структура SubjectPublicKeylnfo)
Структура Subject Pub 1 icKcyinfo (см. ГОСТ Р ИСО/МЭК 9594-8—98. раздел 81) имеет следующий вид:
SubjectPublicKeylnfo SEQUENCE (
algorithm Algorithmldcntificr
subjectKey BIT STRING }
Поля структуры имеют следующие значения:
algorithm—алгоритм и набор параметров открытого ключа, задающиеся в соответствии с 5.2.1; subjectPublicKey — открытый ключ, задающиеся в соответствии с 5.2.2.
5.2.1 Поле algorithm структуры SubjectPublicKeylnfo
Поле algor . структуры с bjectPublicKeyinfo задается структурой Algor ith Algorithmldcntificr ::= SEQUENCE {
algorithm OBJECT IDENTIFIER
parameters ANY DEFINED BY algorithm OPTIONAL
}
Поля структуры имеют следующие значения:
algor i thm — идентификатор алгоритма подписи, задающийся в соответствии с 5.2.1.1; oarameters — параметры открытого ключа алгоритма подписи, задающиеся в соответствии с 5.2.1.2.
5.2.1.1 Поле algorithm структуры \lgorithmldentif icr
Поле algor i thm структуры Mgor i thmldent i f ier должно содержать следующий идентификатор алгоритма:
-Для алгоритма электронной подписи ГОСТ Р 34.10-2012 с длиной ключа 256 бит идентификатор в формате АСН.1 задается следующим образом:
id-tc26-gost3410-12-256, «1.2.643.7.1.1.1.1»;
-Для алгоритма электронной подписи ГОСТ Р 34.10-2012 с длиной ключа 512 бит идентификатор в формате АСН.1 задается следующим образом:
id-tc26-gost3410-12-512, «1.2.643.7.1.1.1.2».
5.2.1.2 Поле parameters структуры Algor i thmldent i f ier
Поле parameters структуры Algor i thmldent i f ier имеет структуру GostR3410-2012 -Publ icKeyParameters 8 формате ACH.1:
CostR3410-2012-PublicKcyParamctcrs ::= SEQUENCE {
publicKeyParamSet OBJECT IDENTIFIER,
digestParamSct OBJECT IDENTIFIER OPTIONAL
}
Поля структуры имеют следующие значения:
publ icKey Ра ramSet — идентификатор параметров открытого ключа, соответствующего алгоритму подписи ГОСТ Р 34.10-2012;
digestParamSct — идентификатор функции хэширования ГОСТ Р 34.11-2012. Данное поле является опциональным:
Данное поле не рекомендуется включать, если используется алгоритм подписи ГОСТ Р 34.10-2012 с длиной ключа 512 бит;