Командный интерфейс универсальной карты Omnikey 5421 не работает для Mifare plus SL1

Я пытаюсь перевести карту Mifare Plus в режим SL1 с помощью Omnikey 5421, однако использование интерфейса "Общая команда карты", как указано в документации, похоже, не работает (карта не возвращает никаких выходных данных, кроме 0x9000, что кажется чтобы быть только подтверждением, что команда была отправлена ​​успешно - в ответе должны быть дополнительные байты до 0x90 (0x00, которые поступают от самого чипа).

Последовательность отправляется с использованием SCardTransmit:

0xFF 0xA0 0x00 0x07 0x03 0x01 0x00 0x01 - ввести общий сеанс - возвращает 0x9000

... дополнительные команды с использованием документации:

0xFF 0xA0 0x00 0x05 6 + n 01 00 F3 00 00 64 + Mifare+ команда 00 - возвращает 0x9000 независимо от команды, даже если недопустимые команды Mifare+

0xFF 0xA0 0x00 0x07 0x03 0x01 0x00 0x02 - выйти из общего сеанса - возвращает 0x9000 еще

Единственными командами, которые кажутся работающими, являются вход и выход, любая другая команда, которую я посылаю между ними, не оказывает никакого влияния, включая RATS, Writeperso или Commitperso. Когда я добавляю байт 00 Le в конце, код возврата будет 0x6400 вместо 0x9000, хотя в документах говорится, что Lete byte должен добавляться при выдаче команд Mifare+.

Все остальные операции работают нормально, когда карты персонализированы в режиме SL1 (чтение, запись, аутентификация). Я уже могу переключить карту в режим SL1 с помощью Android NFC, так что, похоже, это не проблема с алгоритмом или картой.

Я попытался использовать команду из документации PC/SC часть 3, но код возврата "не поддерживается", поэтому кажется, что для выдачи команд 14443A доступен только этот механизм прозрачного канала.

0 ответов

В SL0 и SL3 Вы можете напрямую вызвать команду "Плюс" с помощью команды "Общая карта".

"универсальный сеанс" должен означать, что SL1 принимает команду "плюс" (по умолчанию он переходит в классический режим mifare)

Другие вопросы по тегам