Портал docs.cntd.ru скоро обновится, чтобы стать еще лучше и удобнее.
Попробовать новую версию
  • Текст документа
  • Статус
Документ в силу не вступил

Р 1323565.1.033-2020


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

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

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

Использование российских алгоритмов электронной подписи в протоколах и форматах сообщений на основе XML

Information technology. Cryptographic data security. Using Russian algorithms of digital signature algorithms with XML-based protocols and messages


ОКС 35.040

Дата введения 2021-04-01


Предисловие

1 РАЗРАБОТАНЫ Обществом с ограниченной ответственностью "КРИПТО-ПРО" (ООО "КРИПТО-ПРО")

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

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

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

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

Введение


В настоящих рекомендациях определяются способы использования российских государственных криптографических алгоритмов подписи и хэширования для создания электронной подписи XML-документов, определенной в [1]*, а также способы передачи в XML-документах значения кода аутентификации сообщения на основе хэш-функции НМАС, описанного в Р 50.1.113. Введены также новые универсальные идентификаторы ресурсов (URI) и XML-элементы.
________________
* Поз. [1]-[7] см. раздел Библиография, здесь и далее по тексту. - Примечание изготовителя базы данных.

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

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


В настоящих рекомендациях описываются идентификаторы алгоритмов ГОСТ Р 34.10-2012, ГОСТ Р 34.10-2001, ГОСТ Р 34.11-2012 и ГОСТ Р 34.11-94, используемые при создании электронной подписи XML-документов, а также идентификаторы алгоритмов вычисления кода аутентификации сообщения на основе хэш-функции НМАС, определенного в Р 50.1.113. Помимо этого, в данных рекомендациях определены способы передачи информации о ключевом материале в XML-документе, а также идентификаторы пространств имен, префиксы и определения XML-схемы подписываемого XML-документа.

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

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


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

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

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

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

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

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

Р 1323565.1.023-2018 "Информационная технология. Криптографическая защита информации. Использование алгоритмов ГОСТ Р 34.10-2012, ГОСТ Р 34.11-2012 в сертификате, списке аннулированных сертификатов (CRL) и запросе на сертификат PKCS #10 инфраструктуры открытых ключей Х.509"

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

3 Термины, определения и сокращения

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


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

3.1.1 XML-документ: Электронный документ, сформированный при помощи расширяемого языка разметки XML.

3.1.2 XML-схема: Описание структуры XML-документа.

3.1.3 XML-элемент: Часть XML-документа или XML-схемы, ограниченная тегами.

3.1.4 определение XML-схемы: Часть XML-схемы, описывающая отдельный элемент (имя элемента и его тип).

3.1.5 пространство имен XML: Пространство имен, используемое для описания элементов в XML-схеме и служащее для обеспечения их уникальности в XML-документе.

3.1.6 XML-префикс: Префикс, указываемый перед именем XML-элемента и/или его типа с целью исключения пересечения одноименных элементов из различных пространств имен XML.

3.1.7 XML-атрибут: Часть XML-элемента, состоящая из имени атрибута и значения атрибута, сформированных в соответствии с определением XML-схемы данного XML-элемента.

Примечание - В настоящих рекомендациях для краткости установлено, что термины "XML-элемент" и "элемент", "XML-атрибут" и "атрибут", а также "XML-префикс" и "префикс" являются синонимами.

3.1.8 сообщение: Строка символов произвольной конечной длины.

3.1.9 формат сообщения: Совокупность правил формирования и интерпретации сообщения.

3.1.10

код аутентификации сообщения на основе хэш-функции (hash-based message authentication code; HMAC): Механизм обеспечения аутентичности информации на основе симметричного ключа, построенный с использованием хэш-функции.

[Р 50.1.113-2016, статья 3.1.1]

3.1.11

электронная цифровая подпись (signature): Строка бит, полученная в результате процесса формирования подписи.

[ГОСТ Р 34.10-2012, статья 3.1.15]


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

3.1.12

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

[ГОСТ Р 34.10-2012, статья 3.1.3]

3.1.13

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

[ГОСТ Р 34.10-2012, статья 3.1.2]

3.1.14

хэш-функция: Функция, отображающая строки бит в строки бит фиксированной длины и удовлетворяющая следующим свойствам:

1) по данному значению функции сложно вычислить исходные данные, отображаемые в это значение;

2) для заданных исходных данных сложно вычислить другие исходные данные, отображаемые в то же значение функции;

3) сложно вычислить какую-либо пару исходных данных, отображаемых в одно и то же значение.

[ГОСТ Р 34.11-2012, статья 3.1.6]


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

3.1.15

хэш-код: Строка бит, являющаяся выходным результатом хэш-функции.

[ГОСТ Р 34.11-2012, статья 3.1.15]


3.2 Сокращения


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

ОID

-

строка или последовательность десятичных цифр, однозначно идентифицирующая объект;

URI

-

унифицированный (единообразный) идентификатор ресурса;

URN

-

единообразное название ресурса;

XML

-

расширяемый язык разметки.


4 Используемые структуры


Пространства имен XML, их префиксы и идентификаторы, соответствующие используемым в рамках данных рекомендаций XML-схемам, введены в разделе 5.

В разделе 6 настоящих рекомендаций описывается элемент ds:Signature, содержащий значение подписи XML-документа и информацию об алгоритмах и их параметрах, необходимых для формирования данного значения. Также настоящие рекомендации устанавливают, что элемент ds:Signature может содержать информацию об используемом алгоритме вычисления кода аутентификации сообщения на основе хэш-функции (НМАС) и значение НМАС*. Элемент ds:Signature описывается определениями, соответствующими трем XML-схемам: DS-схеме, DSIG11-схеме и CPXMLSEC-схеме.
________________
* В настоящих рекомендациях в целях оптимизации и исключения дублирования элементов описываемых структур при работе с НМАС название элемента ds:Signature не отражает тип хранящихся в нем данных: алгоритм вычисления НМАС и значение НМАС указываются в элементах ds:SignatureMethod и ds:SignatureValue соответственно.

Определения CPXMLSEC-схемы вводятся в настоящих рекомендациях впервые и являются расширением DS-схемы с целью обеспечения возможности использования национальных стандартов ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012. Для описания CPXMLSEC-схемы используются элементы из XS-схемы, описанной в [2] и [3]. Определения из DS-схемы и DSIG11-схемы описаны в соответствии с [1].

Примечание - В настоящих рекомендациях некоторые комментарии в определениях DS-схемы и DSIG11-схемы были опущены в связи с упоминанием в них элементов, не используемых при формировании электронной подписи XML-документов с использованием российских криптографических алгоритмов подписи, хэширования и вычисления значения НМАС. Поскольку комментарии в определении XML-схемы не являются семантически значимыми, определения DS-схемы и DSIG11-схемы, описанные в настоящих рекомендациях, считаются идентичными определениям, описанным в [1].

В разделе 7 настоящих рекомендаций устанавливаются требования к содержимому элементов, описываемых в разделе 6, и их представлению:

1) В 7.1 устанавливаются требования к содержимому элементов и его представлению для создания и проверки электронной подписи XML-документа с использованием российских государственных криптографических алгоритмов подписи и хэширования.

2) В 7.2 устанавливаются требования к содержимому элементов и его представлению для вычисления значения НМАС XML-документа с использованием алгоритмов, определенных в Р 50.1.113.

3) В 7.3 устанавливаются требования к содержимому элементов и его представлению для передачи ключевой информации в подписываемом XML-документе.

5 Пространства имен XML и XML-префиксы


В настоящих рекомендациях используются XML-элементы из четырех различных XML-схем, каждой из которых соответствует одно пространство имен XML. При создании подписи XML-документа или вычислении значения НМАС в соответствии с настоящими рекомендациями должен использоваться следующий идентификатор основного пространства имен XML (точка в конце предложения не является частью идентификатора): urn:ietf:params:xml:ns:cpxmlsec. Остальные пространства имен являются внешними, и их идентификаторы указываются дополнительно в заголовке XML-схемы.

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

Таблица 1 - XML-схемы, идентификаторы пространств имен XML и префиксы

Название XML-схемы

Идентификатор пространства имен XML

Префикс

DS-схема

http://www.w3.org/2000/09/xmldsig#

ds

DSIG11-схема

http://www.w3.org/2009/xmldsig11#

dsig11

XS-схема

http://www.w3.org/2001/XMLSchema

xs

CPXMLSEC-схема

urn:ietf:params:xml:ns:cpxmlsec

cpxmlsec


Примечание - В настоящих рекомендациях XS-схема является вспомогательной и применяется для описания определений из других XML-схем. Поэтому определения элементов XS-схемы в данных рекомендациях не приводятся.

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

Указание пространств имен XML и префиксов в XML-документе не должно иметь разрывов строк и пробелов.

Пример заголовка CPXMLSEC-схемы для использования с определениями остальных XML-схем, приведенными в разделе 6 настоящих рекомендаций:

<xs:schema
xmlns:cpxmlsec="urn:ietf:params:xml:ns:cpxmlsec"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:dsig11="http://www.w3.org/2009/xmldsig11#"
targetNamespace="urn:ietf:params:xml:ns:cpxmlsec"
elementFormDefault="qualified"
version="0.4">

6 Определение XML-схемы для элемента Signature XML-документа


Элемент ds:Signature является одним из корневых элементов XML-документа и содержит следующую информацию:

- при формировании подписи XML-документа: значение подписи и информацию об алгоритмах и их параметрах, необходимых для формирования электронной подписи XML-документа;

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

Элемент ds:Signature содержит следующие дочерние элементы.

- Элемент ds:Signedlnfо (см. 6.1). Данный элемент содержит информацию об используемых алгоритмах и других параметрах, необходимых для формирования подписи XML-документа или значения НМАС.

- Элемент ds:SignatureValue (см. 6.2). Данный элемент содержит значение электронной подписи XML-документа или значение НМАС.

- Элемент ds:KeyInfо (см. 6.3). Данный элемент содержит информацию о ключе проверки подписи и его значение или информацию о симметричном ключе, используемом при вычислении значения НМАС.

- Элемент ds:Object. Данный элемент может содержать информацию, для которой формируется значение подписи или вычисляется значение НМАС.

Элемент ds:Signature описывается следующим определением XML-схемы.

<xs:element name="Signature" type="ds:SignatureType"/>
<xs:complexType name="SignatureType">
<xs:sequence>
<xs:element ref="ds:Signedlnfo"/>
<xs:element ref="ds:SignatureValue"/>
<xs:element ref="ds:KeyInfo" minOccurs="0"/>
<xs:element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="ID" use="optional"/>
</xs:complexType>

Полное описание всех дочерних элементов элемента ds:Signature представлено в [1].

6.1 Элемент SignedInfo


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

- Элемент ds:SignatureMethod (см. 6.1.1). Данный элемент содержит информацию об используемом алгоритме подписи или алгоритме НМАС.

- Элемент ds:Reference (см. 6.1.2). Данный элемент используется для указания на данные, с которыми выполняются преобразования.

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

Элемент ds:Signedlnfo описывается следующим определением XML-схемы.

<xs:element name="SignedInfо" type="ds:SignedlnfoType"/>
<xs:complexType name="SignedInfoType">
<xs:sequence>
<xs:element ref="ds:CanonicalizationMethod"/>
<xs:element ref="ds:SignatureMethod"/>
<xs:element ref="ds:Reference" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="Id" type="ID" use="optional"/>
</xs:complexType>

Полное описание элемента ds:SignedInfo представлено в [1].

6.1.1 Элемент SignatureMethod

Элемент ds:SignatureMethod является дочерним элементом элемента ds:SignedInfo и определяет алгоритм, используемый для создания и проверки подписи XML-документа или алгоритм, используемый для вычисления значения НМАС. Для этого в атрибут Algorithm элемента ds:SignatureMethod помещается идентификатор, соответствующий используемому алгоритму.

Идентификаторы российских криптографических алгоритмов хэширования и подписи и правила их включения в элемент ds:SignatureMethod описаны в 7.1.2.

Идентификаторы российских криптографических алгоритмов вычисления НМАС описаны в 7.2.

Элемент ds:SignatureMethod описывается следующим определением XML-схемы.

<xs:element name="SignatureMethod" type="ds:SignatureMethodType"/>
<xs:complexType name="SignatureMethodType" mixed="true">
<xs:sequence>
<xs:element name="HMACOutputLength" minOccurs="0"
type="ds:HMACOutputLengthType"/>
<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0, unbounded) elements from (1,1) external namespace -->
</xs:sequence>
<xs:attribute name="Algorithm" type="anyURI" use="required"/>
</xs:complexType>

Полное описание элемента ds:SignatureMethod представлено в [1].

6.1.2 Элемент Reference

Элемент ds:Reference является дочерним элементом элемента ds:SignedInfo и может содержать атрибуты Id, URI и Туре, описывающие данные, с которыми выполняются операции хэширования и другие преобразования. Элемент ds:Reference содержит следующие дочерние элементы.

- Элемент ds:Transforms. Данный элемент содержит список преобразований данных, указанных в атрибутах элемента ds:Reference.

- Элемент ds:DigestMethod (см. 6.1.2.1). Данный элемент используется для указания используемого алгоритма хэширования данных, указанных в атрибутах элемента ds:Reference.

- Элемент ds:DigestValue (см. 6.1.2.2). Данный элемент содержит значение хэш-кода от данных, указанных в атрибутах элемента ds:Reference.

Элемент ds:Reference описывается следующим определением XML-схемы.

<xs:element name="Reference" type="ds:ReferenceType"/>
<xs:complexType name="ReferenceType">
<xs:sequence>
<xs:element ref="ds:Transforms" minOccurs="0"/>
<xs:element ref="ds:DigestMethod"/>
<xs:element ref="ds:DigestValue"/>
</xs:sequence>
<xs:attribute name="Id" type="ID" use="optional"/>

Доступ к полной версии этого документа ограничен

Ознакомиться с документом вы можете, заказав бесплатную демонстрацию систем «Кодекс» и «Техэксперт».

Что вы получите:

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

При возникновении проблем свяжитесь с нами по адресу spp@kodeks.ru

Р 1323565.1.033-2020 Информационная технология (ИТ). Криптографическая защита информации. Использование российских алгоритмов электронной подписи в протоколах и форматах сообщений на основе XML

Название документа: Р 1323565.1.033-2020 Информационная технология (ИТ). Криптографическая защита информации. Использование российских алгоритмов электронной подписи в протоколах и форматах сообщений на основе XML

Номер документа: 1323565.1.033-2020

Принявший орган: Росстандарт

Статус: Документ в силу не вступил

Опубликован: Официальное издание. М.: Стандартинформ, 2020
Дата принятия: 17 ноября 2020

Дата начала действия: 01 апреля 2021