Ключевая диверсификация Visa2 и инструменты JCOP

У меня есть куча карт Java с поставщиком, который утверждает, что SCP — это 01, а ключевой алгоритм диверсификации — Visa2. Я пытался пройти аутентификацию с помощью JCOP Tools большую часть последних двух дней, но безрезультатно.

Насколько я понимаю, после выбора AID ответом на команду init-update будет KEYDATA, который следует использовать для генерации ключей ENC, DEC и MAC с использованием KMC. Но самое смешное, хотя я получаю SW12 = 0x9000 и 28 байт данных в ответ на init-update, инструменты JCOP говорят:

jcshell: код ошибки: -5 (сбой аутентификации)

jcshell: неверный ответ APDU

Мой вопрос: есть ли в инструментах JCOP встроенная поддержка алгоритма диверсификации ключей Visa2? И если нет, то какова правильная последовательность событий для генерации ключей ENC, DEC и MAC с использованием алгоритма Visa2?


person iMan Biglari    schedule 16.07.2014    source источник
comment
Уважаемый iMan, У вас уже есть инструменты JCOP? Могу я попросить вас поделиться ими со мной? Я не могу найти его в Интернете. пожалуйста, упомяните меня с @ в своем комментарии. спасибо   -  person    schedule 04.02.2015
comment
@ User1-St У моей компании есть соглашение о неразглашении с NXP, запрещающее распространение любого программного обеспечения, включая инструменты JCOP.   -  person iMan Biglari    schedule 05.02.2015
comment
Могу я узнать ваш адрес электронной почты?   -  person    schedule 10.02.2015


Ответы (1)


Инструменты JCOP возвращают ошибку, потому что после проверки ответа init-update криптограмма карты, возвращенная картой, не прошла проверки — ключ, используемый картой для создания этой криптограммы, не соответствует ожидаемому инструментами JCOP.

Я не знаю, поддерживает ли JCOP Tools диверсификацию Visa2, но вот обходной путь, который вы можете использовать:

GPSShell (http://sourceforge.net/p/globalplatform/wiki/GPShell/ ) реализует алгоритм Visa2. Это открытый исходный код, поэтому вы можете увидеть всю последовательность алгоритмов в его исходном коде, а также использовать его для проверки своих собственных результатов. Или просто используйте его для работы с картами...

person mictter    schedule 17.07.2014