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


Р 1323565.1.010-2017

     

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

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

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

Использование функции диверсификации для формирования производных ключей платежного приложения

Information technology. Cryptographic data security. Using the key diversification function to generate payment application derived keys



ОКС 35.040

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

     

Предисловие

1 РАЗРАБОТАНЫ Обществом с ограниченной ответственностью "Системы практической безопасности" (ООО "СПБ") совместно с Открытым акционерным обществом "Информационные технологии и коммуникационные системы" (ОАО "ИнфоТеКС") и Обществом с ограниченной ответственностью "КРИПТО-ПРО" (ООО "КРИПТО-ПРО")

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

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

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


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

Введение


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

Во всех случаях для порождения ключей использована функция диверсификации ключа KDF_GOSTR3411_2012_256, описанная в Р 50.1.113-2016 (далее - KDF).

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

Примечание - Настоящие рекомендации дополнены приложением А.

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


Описанные в настоящих рекомендациях алгоритмы рекомендуется применять для реализации механизмов обеспечения безопасности информации в платежной системе "МИР".

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


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

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

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

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

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


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

3.1.1 машина персонализации: Машина электрической персонализации, предназначенная для первичной загрузки ключевой и служебной информации в чип карты.

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


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

     

- конечномерное векторное пространство размерности ;

     

- конкатенация строк, т.е. если , , , , то ;

     

- прикладная криптограмма (Application Cryptogram), формируемая картой. Длина значения равна 8 байтам;

     

- счетчик транзакций (Application Transaction Counter). Длина счетчика равна 2 байтам;

     

- серийный номер чипа (Chip Serial Number). Длина значения равна 4 байтам;

     

- функция вычисления кода аутентификации сообщения НМАС, использующей алгоритм HMAC_GOSTR3411_2012_256, описанный в Р 50.1.113-2016. Длина значения равна 32 байтам;

     

- мастер-ключ эмитента (, , или ), используемый в качестве ключа диверсификации функции KDF в соответствии с Р 50.1.113-2016 для формирования мастер-ключей карты. Длина значения равна 32 байтам;

     

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

     

- мастер-ключ карты, используемый для генерации сессионного ключа для обеспечения целостности обмена между картой и машиной персонализации (вычисления имитовставки); после персонализации удаляются. Длина значения равна 32 байтам;

     

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

     

- функция диверсификации, использующая алгоритм KDF_GOSTR3411_2012_256, описанный в Р 50.1.113-2016. Длина значения равна 32 байтам;

     

- данные для формирования ключей карты . Длина значения равна 10 байтам;

     

- ключ эмитента, используемый для формирования ключей персонализации, в качестве ключа диверсификации функции в соответствии с Р 50.1.113-2016, а также для формирования мастер-ключей карты для персонализации. Длина значения равна 32 байтам;

     

- идентификатор . Длина значения равна 6 байтам;

     

- некоторая константа, значение которой равно (0x21||0x07||0x22||0хе6). Длина значения равна 4 байтам;

     

- некоторая константа, значение которой равно (0x21||0x07||0x22||0хе7). Длина значения равна 4 байтам;

     

- некоторая константа, значение которой равно (0х21||0х07||0х22||0хе8). Длина значения равна 4 байтам;

     

- некоторая константа, значение которой равно (0x21||0x07||0x22||0хе9). Длина значения равна 4 байтам;

     

- мастер-ключ карты (, , или ). Длина значения равна 32 байтам;

     

- мастер-ключ карты, используемый для вычисления прикладной криптограммы; используется в качестве ключа диверсификации функции в соответствии с Р 50.1.113-2016 для формирования сессионных ключей карты . Длина значения равна 32 байтам;

     

- мастер-ключ карты, используемый для обеспечения целостности передаваемых в скриптовой команде данных и аутентификации источника данных команды; используется в качестве ключа диверсификации функции в соответствии с Р 50.1.113-2016 для формирования сессионных ключей карты . Длина значения равна 32 байтам;

     

- мастер-ключ карты, используемый для обеспечения конфиденциальности передаваемых в скриптовой команде данных; используется в качестве ключа диверсификации функции в соответствии с Р 50.1.113-2016 для формирования сессионных ключей карты . Длина значения равна 32 байтам;

     

- мастер-ключ карты, используемый для вычисления (ICC Dynamic Number) при динамической аутентификации карты. Длина значения равна 32 байтам;

     

- номер карты (Primary Account Number). Длина значения равна от 12 до 20 десятичных цифр;

     PAN Sequence Number

- порядковый номер карты (владельца), если к счету привязано более одной карты. Длина значения равна 1 байту и имеет формат XX, где X - десятичная цифра.

     

- вектор диверсификации. Длина значения равна 8 байтам;

     

- сессионный ключ, используемый картой и эмитентом для формирования криптограмм ARQC и ARPC (вычисление имитовставки). Длина значения равна 32 байтам;

     

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

     

- сессионный ключ, используемый для обеспечения конфиденциальности данных скриптовых команд (разблокировка или смена PIN), т.е. для шифрования данных команды. Длина значения равна 32 байтам.

     

     4 Описание алгоритмов


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

     4.1 Вывод мастер-ключей платежного приложения карты


Формирование мастер-ключа карты (, , или ) осуществляется с использованием функции диверсификации KDF_GOSTR3411_2012_256 на основе и определяется выражением

,

где



(0x21||0x07||0x22||0хе6)

;

равен 16 правым десятичным цифрам , если менее 16 цифр, то дополняется до 8 байт нулями;

X=PAN||PAN Sequence Number (если PAN Sequence Number отсутствует, то его значения заменяется нулями),

т.е.



     4.2 Вывод сессионных ключей платежного приложения карты

4.2.1 Вывод сессионного ключа для вычисления прикладной криптограммы

Формирование сессионного ключа карты осуществляется с использованием функции диверсификации KDF_GOSTR3411_2012_256 на основе и определяется выражением

,

где



(0x21||0x07||0x22||0xe6)





т.е.



4.2.2 Вывод сессионного ключа для обеспечения целостности передаваемых в скриптовой команде данных и аутентификации источника данных команды - эмитента

Формирование сессионного ключа карты осуществляется с использованием функции диверсификации KDF_GOSTR3411_2012_256 на основе и определяется выражением

,

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