Как получить версию карты Mifare - PullRequest
0 голосов
/ 26 мая 2020

Я хочу определить тип карты Mifare. Согласно NXP do c AN10834 Рис. 3, я могу определить тип карты по номеру sak и Получить версию.

SAK моей карты равен 0x20, но я хочу знать, что это DESFire или плюс.

Что такое уровень 3 и уровень 4 Получить версию? Где я могу получить информацию? Любая помощь?

1 Ответ

0 голосов
/ 02 июня 2020

ISO / IEC 14443 протокол состоит из 4 частей:

  1. ISO / IEC 14443-1: Часть 1: Физические характеристики ISO / IEC
  2. 14443-2: Часть 2: Радиочастотная мощность и интерфейс сигналов
  3. ISO / IEC 14443-3: Часть 3: Инициализация и антиколлизия
  4. ISO / IEC 14443-4: Часть 4: Протокол передачи ( ISO / IEC 14443 wiki )

ISO / IEC 14443-3 описывает, как выбрать («активировать») одну карту, ISO / IEC 14443-4 устанавливает протокол передачи.

Как различать ч / б DESFire и Plus :

enter image description here

  1. Возвращенный SAK равен 0x20
  2. Активируйте уровень 4 и выполните GET_VERSION. Если ответ успешен, тип карты будет либо Plus EV1, DESFire, DESFire Light или NTAG 4xx
  3. Если ответ GET_VERSION завершился неудачно, вам необходимо прочитать исторические байты с помощью считывателя IsoDep ( IsoDep : GetHistoricalBytes ). В зависимости от значений исторических байтов, тип карты будет Plus X, Plus S или Plus SE.

Активация уровня 4:

Чтобы активировать уровень 4, вам необходимо выполнить RATS ( Запросить ответ на выбор), которая имеет вид 0xE080.

Например: Отправить на карту: E080

Получено с карты: 0C75778002C1052F2F01BCD6

В качестве ответа, если вы получите 12 байт ATS (Ответить на выбор), это означает, что уровень 4 активирован успешно.

Если вы работаете со смарт-картами NXP, NXP предоставляет открытый API под названием TapLinx , который можно использовать, и он должен сделайте вашу жизнь проще.

Обновление:

0x60 - это команда GetVersion. Он должен выглядеть примерно так:

READER ---> CARD: 60

CARD <--- READER: AF 04 HT XX XX XX XX XX </p>

READER --- > КАРТА: AF

КАРТА <--- СЧИТЫВАТЕЛЬ: AF 04 XX XX XX XX XX XX </p>

СЧИТЫВАТЕЛЬ ---> КАРТА: AF

КАРТА <--- СЧИТЫВАТЕЛЬ: 00 XX XX XX XX XX XX XX XX XX XX XX XX XX XX </p>

Где 04 - идентификатор производителя, а HT - тип оборудования

Ура!

...