Служба транзакций EMV (ARQC/ARPC) (CSNBEAC и CSNEEAC)

Tomcat

Professional
Messages
2,689
Reaction score
913
Points
113
Служба транзакций EMV (ARQC/ARPC) упрощает обработку транзакций криптограммы запроса авторизации EMV (ARQC) и криптограммы ответа на авторизацию (ARPC). ARQC генерируется картой EMV по запросу терминала торговой точки для получения разрешения на оплату. ARQC передается через платежную сеть эмитенту для проверки. После того как эмитент проверил ARQC, эмитент генерирует ARPC (ответ). ARPC отправляется обратно через платежную сеть в торговый терминал для авторизации транзакции.

Служба транзакций EMV (ARQC/ARPC) выполняет следующие функции EMV:
  • Проверка криптограммы запроса авторизации (ARQC).
  • Генерация криптограммы ответа на авторизацию (ARPC).
  • Как проверка ARQC, так и создание ARPC.

Данную услугу можно использовать в следующих конкретных брендовых режимах:
  • Виза
  • МастерКард
  • EMV
Имя вызываемой службы для вызова AMODE(64) — CSNEEAC.

Родительская тема:
Финансовые услуги

Формат​

Code:
CALL CSNBEAC(
 return_code,
 reason_code,
 exit_data_length,
 exit_data,
 rule_array_count,
 rule_array,
 issuer_master_key_identifier_length,
 issuer_master_key_identifier,
 issuer_ARPC_master_key_identifier_length,
 issuer_ARPC_master_key_identifier,
 pan_length,
 pan,
 pan_seq_number,
 cryptogram_info_length,
 cryptogram_info,
 atc,
 arc,
 arqc,
 arpc,
 unpredictable_number,
 reserved1_length,
 reserved1,
 reserved2_length,
 reserved2)

Параметры​

код возврата
НаправлениеТип
ВыходЦелое число
Код возврата указывает общий результат вызываемой службы. Коды возврата и причины ICSF и криптографического сопроцессора содержат список кодов возврата.

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

exit_data_length
НаправлениеТип
Ввод, выводЦелое число
Длина данных, передаваемых на выход установки. Данные идентифицируются в параметре exit_data .

выходные_данные
НаправлениеТип
Ввод, выводНить
Данные, которые передаются на выход установки.

rule_array_count
НаправлениеТип
ВходЦелое число
Количество ключевых слов, которые вы указали в параметре rule_array . Минимальное значение — 3, максимальное — 4.
rule_array
НаправлениеТип
ВходНить
Ключевые слова, которые предоставляют управляющую информацию вызываемой службе. Ключевые слова должны находиться в непрерывном хранилище, при этом каждое из ключевых слов должно быть выровнено по левому краю в своем собственном 8-байтовом месте и дополнено справа пробелами.

Таблица 1. Ключевые слова массива правил для службы транзакций EMV (ARQC/ARPC)
Ключевое словоЗначение
Алгоритм (обязательно)
TDESУказывает использование Triple-DES.
Действие (требуется одно)
VERARQCУказывает необходимость проверки входной криптограммы запроса авторизации.
GENARPCУказывает на создание криптограммы ответа на авторизацию на основе входной криптограммы запроса на авторизацию и кода ответа на авторизацию (ARC).
VERGENУказывает как проверку криптограммы запроса авторизации, так и создание криптограммы ответа на авторизацию.
Режим ключа (требуется один) . Определяет механизм получения ключей.
ВИЗАУказывает на использование деривации ключа Visa Cryptogram версии 10. В качестве сеансового ключа используется мастер-ключ карты для криптограмм приложений (ключи одинаковы для каждой сессии). См. спецификацию Visa, Приложение D2. Заполнение осуществляется двоичными нулями до тех пор, пока длина не станет кратной 8 байтам.
МКУказывает на использование деривации ключа MasterCard M/CHIP 2.1. ATC и непредсказуемый номер зашифрованы 3DES с помощью главного ключа карты. Главный ключ карты используется при создании ARPC. Применяются правила заполнения EMV.
EMVУказывает на использование получения сеансового ключа, как описано в Спецификации карт с интегральными схемами EMV для платежных систем версии 4.2 (EMV4.2), Книга 2, Приложение A1.3. Используйте этот режим ключа для Visa Cryptogram версии 14 и MasterCard M/CHIP 4. Применяются правила заполнения EMV.
Флаг управления (необязательно)
APPANSEQУказывает добавление порядкового номера PAN при получении главного ключа для конкретной карты. См. описания pan и pan_seq_number . По умолчанию порядковый номер PAN не добавляется.
Коэффициент перехода (один необязательный, действителен только в ключевом режиме EMV) . Коэффициент ветвления должен использоваться при получении сеансового ключа EMV.
TDESEMV2Задает коэффициент ветвления 2 для высоты 16. Это значение по умолчанию.
TDESEMV4Задает коэффициент ветвления 4 для высоты 8.

Issuer_master_key_identifier_length
НаправлениеТип
ВходЦелое число
Указывает длину параметра Issuer_master_key_identifier в байтах. Значение должно быть 64.

Issuer_master_key_identifier
НаправлениеТип
Ввод, выводString
64-байтовый идентификатор ключа DES (внутренний токен или метка ключа) для главного ключа эмитента для прикладных криптограмм (AC). Главный ключ эмитента — это ключ DES, из которого получаются ключи, специфичные для карты, а из ключей, специфичных для карты, извлекаются сеансовые ключи для криптограмм приложений.
При использовании режима ключа VISA или EMV этот ключ используется как для проверки ARQC (VERARQC и VERGEN), так и для генерации ARPC (GENARPC и VERGEN).
При использовании режима ключа MC этот ключ используется только для проверки ARQC (VERARQC и VERGEN). Issuer_ARPC_master_key_identifier должен содержать ключ генерации ARPC (GENARPC и VERGEN) .
Если предоставленный токен был зашифрован старым главным ключом, токен возвращается зашифрованным текущим главным ключом.

Таблица 2. Сервис транзакций EMV (ARQC/ARPC): основные требования
Ключевое слово режима ключаТип ключаПодтипКлючевые атрибуты использования
ВИЗАDKYGENKYDKYL0Необходимо указать, какой ключ MAC будет получен (ключевое слово DMAC).
МКDKYGENKYDKYL1Необходимо указать, какой ключ MAC будет получен (ключевое слово DMAC).
EMVDKYGENKYDKYL0Необходимо указать, какой ключ MAC будет получен (ключевое слово DMAC).
Примечание. Для MasterCard M/Chip 2.1 вам потребуется главный ключ эмитента в двух версиях: по одному каждого подтипа (DKYL1 и DKYL0). Если указано действие VERARQC или VERGEN, этот ключ должен быть подтипом DKYL1 и использоваться для получения сеансового ключа для проверки ARQC. Ключ, который будет использоваться для генерации ARPC (GENARPC и VERGEN), должен быть указан во входном параметре Issuer_ARPC_master_key_identifier .

Issuer_ARPC_master_key_identifier_length
НаправлениеТип
ВходЦелое число
Этот параметр определяет длину параметра Issuer_ARPC_master_key_identifier в байтах. Если указано ключевое слово режима MC, значение должно быть 64. В противном случае значение должно быть равно нулю.

Issuer_ARPC_master_key_identifier
НаправлениеТип
Ввод, выводString
64-байтовый идентификатор ключа CCA DES (либо внутренний токен, либо метка ключа) для главного ключа эмитента для криптограмм ответа приложения (ARPC) при использовании режима ключа MC. Главный ключ ARPC эмитента — это ключ DES, из которого получается сеансовый ключ для генерации ARPC.
Используется только в том случае, если действие — GENARPC или VERGEN, а режим ключа — MC, где этот ключ является главным ключом эмитента, который будет использоваться для получения ключа, который будет использоваться для генерации ARPC.
Если предоставленный токен был зашифрован старым главным ключом, токен возвращается зашифрованным текущим главным ключом.
Требования к типу ключа: тип ключа должен быть DKYGENKY, подтип должен быть DKYL0, а использование ключа должно указывать, что будет получен ключ MAC (ключевое слово DMAC).
Примечание. Для MasterCard M/Chip 2.1 вам потребуется главный ключ эмитента в двух версиях: по одному каждого подтипа (DKYL1 и DKYL0). Если указано действие GENARPC или VERGEN, этот ключ должен быть подтипом DKYL0 и использоваться для получения сеансового ключа для генерации ARPC. Ключ, который будет использоваться для проверки ARQC (VERARQC и VERGEN), должен быть указан во входном параметре Issuer_master_key_identifier.

длина панорамы
НаправлениеТип
ВходЦелое число
Длина параметра панорамирования в байтах . Значение должно быть 10.
кастрюля
НаправлениеТип
ВходString
Основной номер счета карты EMV длиной 10 байт. Данные должны быть в сжатом числовом формате и выровнены по правому краю в 10-байтовом поле, дополненном слева нулями. Например, PAN 1234567890 должен быть указан как x'00000000001234567890'.
Эти данные используются в сочетании с порядковым номером PAN для получения главного ключа карты. Точный набор правил описан в Спецификации карт с интегральной микросхемой EMV для платежных систем версии 4.2 (EMV4.2), Книга 2, Приложение A1.4.

pan_seq_number
НаправлениеТип
ВходString
1-байтовый порядковый номер основного номера счета карты EMV. Если было указано ключевое слово массива правил флага управления APPANSEQ, этот порядковый номер PAN используется в сочетании с PAN для получения главного ключа карты. Точный набор правил описан в Спецификации карт с интегральной микросхемой EMV для платежных систем версии 4.2 (EMV4.2), Книга 2, Приложение A1.4.

cryptogram_info_length
НаправлениеТип
ВходЦелое число
Длина информации о криптограмме, указанной в параметре cryptogram_info . Это значение должно находиться в диапазоне от 1 до 252 включительно.

cryptogram_info
НаправлениеТип
ВходString
Информация криптограммы, на основе которой генерируется ARQC. Данные не должны быть дополнены.
Информация криптограммы дополняется следующим образом:
Механизм получения ключейЗаполнение
ВИЗАСпецификация карты Visa ICC V1.4.0, Приложение D2 и D3
МК, EMVEMV, Книга 2, Приложение А1.2

atc
НаправлениеТип
ВходString
2-байтовый счетчик транзакций приложения, используемый для создания ключа сеанса. Дополнительные сведения о создании сеансового ключа см. в правилах режима ключей.
Этот параметр должен иметь длину 2 байта.
Примечание. Первый байт — это старший байт, а второй — младший.

дуга
НаправлениеТип
ВходString
2-байтовый код ответа авторизации, который необходимо использовать для создания ARPC. Используется только в том случае, если указано действие GENARPC или VERGEN.
Этот параметр должен иметь длину 2 байта.
Примечание. Первый байт — это старший байт, а второй — младший.

arqc
НаправлениеТип
ВходString
Криптограмма запроса авторизации длиной 8 байт, полученная с платежной карты.
Этот параметр должен иметь длину 8 байт.

arqc
НаправлениеТип
ВыходString
Криптограмма авторизационного ответа длиной 8 байт, которая будет отправлена обратно на платежную карту. ARPC получается путем шифрования ARQC XOR с помощью ARC (см. также EMV, Книга 2, 8.2).
Этот параметр должен иметь длину 8 байт.

непредсказуемый_номер
НаправлениеТип
ВходНить
4-байтовое непредсказуемое число, используемое в схеме создания сеансового ключа MasterCard M/Chip 2.1.
Данные в этом поле не будут переформатированы API перед использованием.
Этот параметр должен иметь длину 4 байта.

зарезервировано1_длина
НаправлениеТип
ВходЦелое число
Длина в байтах параметра Reserved1. Значение должно быть 0.

зарезервировано1
НаправлениеТип
ВходString
Это поле игнорируется.

зарезервировано2_длина
НаправлениеТип
ВходЦелое число
Длина параметра Reserved2 в байтах. Значение должно быть 0.
зарезервировано2
НаправлениеТип
ВходString
Это поле игнорируется.

Примечания по использованию​

SAF может быть вызван для проверки того, что вызывающая сторона имеет право использовать эту вызываемую службу, метку ключа или внутренние токены защищенного ключа, которые хранятся в CKDS.

Криптографические службы, используемые службой транзакций EMV (ARQC/ARPC)​

Служба транзакций EMV (ARQC/ARPC) использует следующие криптографические службы CCA:
  • CSNBKTB — сборка токена ключа
  • CSNBDKG — Генерация диверсифицированного ключа
  • CSNBMGN – создание MAC-адреса
  • CSNBMVR – проверка MAC
Вызывающему абоненту не требуется авторизация для каждой из этих служб, а только для службы транзакций EMV (ARQC/ARPC). Кроме того, у вызывающего абонента должны быть включены необходимые точки управления доступом.

Точки контроля доступа​

Для использования службы транзакций EMV (ARQC/ARPC) необходимо включить следующие точки управления доступом:
  • Генерация диверсифицированного ключа — TDES-ENC
  • Генерация диверсифицированного ключа — SESS-XOR
  • Создание диверсифицированного ключа — TDESEMV2/TDESEMV4
  • Создание MAC-адреса
  • MAC-проверка

Требуемое оборудование​

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

Таблица 3. Транзакции EMV (ARQC/ARPC) Требуется оборудование для обслуживания
СерверНеобходимое криптографическое оборудованиеОграничения
IBM System z9 EC
IBM System z9 BC
Сопроцессор Crypto Express2
IBM System z10 EC
IBM System z10 BC
Сопроцессор Crypto Express2
Сопроцессор Crypto Express3
IBM zEnterprise 196
IBM zEnterprise 114
Сопроцессор Crypto Express3
IBM zEnterprise EC12
IBM zEnterprise BC12
Сопроцессор Crypto Express3
Сопроцессор Crypto Express4 CCA
IBM z13
IBM z13s
Сопроцессор Crypto Express5 CCA

(c) https://www.ibm.com/docs/en/zos/2.3...-transaction-arqcarpc-service-csnbeac-csneeac
 
Top