Команда ATR при программировании PC / SC reader

Я проверил интерфейс программирования для тегов Mifare Ultralight и TOPAZ/Jewel IC. Этот API достаточно хорошо описывается байтами сохраняются на карте, как адрес в памяти блоков, как сделать все операции, как чтение, чтение-все, использование OTP (однократно программируемая) функция, как чтение ПЗУ байт, как перейти из состояния покоя в состояние готовности (REQA, с wupa команд), если команды КПР защищены, как открыть тег UID и т. д.

когда смотрел на программу читатель NFC (ACR122U или SCL010) я обнаружил, что вся связь между PCD (читателем) PICC (тегом) начинается с команды ATR (ответ на сброс), которая, как описано в Интернете, команда, которую PCD отправляет PICC для целей идентификации.

но ни в одной документации по тегам не упоминается команда ATR – вся связь с тегами при включении питания (PQR) начинается с команд REQA, WUPA, чтобы переключить карту в режим готовности.

мой понимание заключается в том, что ATR построен ПК/SC на основе карты NFC, с которой связывался считыватель. Как только читатель обнаружит, какой тип технологии является тегом, на его основе создается ATR. Также согласно документации ATR для различных читателей NFC различны для одних и тех же тегов NFC.

Я прав? ПК / SC строит ATR?

BR Стэн!--1-->

2 ответов


короткий ответ:

  • вы правы о ATR генерируется PCSC reader
  • Я думаю, что ATR останется неизменным независимо от считывателя для бесконтактных карт

ответ:

ATR предназначен для контактных карт и указан в ISO 7816. Для бесконтактных карт это считыватель PC/SC (IFD), который генерирует ATR.

ATR построен на основе:

  • ATS (ответ для выбора) для ISO 14443 тип A карты
  • atqb и ATTRIB байты для ISO 14443 типа B карты

ATR будет иметь форму 3B 8X 80 01 Hb_ats Parity_Byte где X-количество байтов исторических байтов ATS (HB_ATS).

точная конструкция ATR для бесконтактных карт приведена в разделе 3.1.3.2.3 PC / SC spec.

учитывая, что единственной переменной является ATS, она должна быть одинаковой независимо от считывателя.

--Sid


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

Проверьте учебник смарт-карты здесь.
Короче говоря, ATR кадр, как показано ниже:
enter image description here