Разбор списка CVM: когда показывать пин-код после получения списка CVM в SFI, требуется любая команда - PullRequest
0 голосов
/ 03 декабря 2018

Я выполняю следующие команды в Android с использованием JNI.

select command: 00A4040006454D5600000100(based on relavant AId)

GPO: 80A80000(modifying based on pdol)

read record : 00B2010C(Based on number of AFLs, SFI available)

после этого я хотел показать пин-пад, если карта поддерживает пин-код.Я получаю следующий список CVM

4203 Encrypted PIN online, If terminal supports CVM, next 
1E03 Signature, If terminal supports CVM, FAIL 
1F03 No CVM

, как понимать эти теги в Android / Java.Есть ли для этого команды APDU?Как обрабатывать / выполнять правила cvm?

Все предложения будут оценены.

1 Ответ

0 голосов
/ 03 декабря 2018

Как я понимаю, у вас есть некая форма ядра EMV, которую вы вызываете из своего приложения Android.В качестве первого предложения вы должны увидеть, не была ли такая функция уже открыта.CVM List - это просто один из объектов (с идентификатором 0x8E), который вы читаете с помощью команд Read Record.Определение того, что означает то, что можно найти в Книге 3 EMV (см. Главу 10.5 и Приложение C3), доступной на сайте www.emvco.com Поскольку проверка держателя карты в EMV выполняется последовательно (выполнение условий проверки списка применимо к вашей транзакции), оноТрудно сказать, будет ли использоваться ПИН-код или нет (независимо от того, может ли карта поддерживать его - откровенно говоря, для платежных систем эмитент должен поддерживать метод ПИН-кода для большинства карточных продуктов).Некоторые условия могут зависеть от состояния выполнения предыдущего метода (когда b7 установлено в байте 1 правила CVM).Что касается команд, вы можете ожидать, что автономный PIN-код потребует отправки команды Get Data с запросом 0x9F17, который является счетчиком попыток автономного PIN-кода.Автономный ПИН-код, разумеется, потребует отправки команды «Подтвердить», представляющей ПИН-код, для проверки ICC.

...