NFC IsoDep
Данный интерфейс предназначен для работы с метками стандарта ISO-DEP (ISO 14443-4). Подробнее…
Шина: | системная |
Служба: | org.sailfishos.nfc.IsoDep |
Объект: | / |
Интерфейс: | org.sailfishos.nfc.IsoDep |
Методы
- GetActivationParameters(vector<pair<string, variant>> ¶meters)
- GetAll(int &version)
- GetAll2(int &version, vector<pair<string, variant>> ¶meters)
- GetInterfaceVersion(int &version)
- Reset()
- Transmit(uint8 cla, uint8 ins, uint8 p1, uint8 p2, const vector<uchar> & data, uint32 le, vector<uchar> &responce, uint8 &sw1, uint8 &sw)
Подробное описание
В рамках стандарта ISO-14443-4 обмен данными с тегом осуществляется в формате APDU. APDU, по сути, являются командами, которые позволяют производить выполнение функций непосредственно на процессоре тега и получать результаты такого выполнения. Запись APDU состоит из заголовка (4 байта) и 255 байтов данных. Более подробно технология описана в стандартах ISO/IEC 7816-4 и ГОСТ Р ИСО/МЭК 7816-4.
Описание методов
GetActivationParameters(vector<pair<string, variant>> ¶meters)
Возвращает параметры интерфейса в виде массива пар ключ-значение.
GetAll(int &version)
Возвращает версию интерфейса.
GetAll2(int &version, vector<pair<string, variant>> ¶meters)
Возвращает:
version
— версию интерфейса;parameters
— параметры интерфейса в виде массива пар ключ-значение.
GetInterfaceVersion(int &version)
Возвращает версию интерфейса.
Reset()
Метод делает попытку сбросить метку в исходное состояние, переинициализируя её на уровне NFC. При этом питание (поле) не отключается и возврат к исходному состоянию не гарантируется, но, как минимум, выбирается приложение по умолчанию, что, как правило, является основной целью инициализации.
Transmit(uint8 cla, uint8 ins, uint8 p1, uint8 p2, const vector<uchar> & data, uint32 le, vector<uchar> &responce, uint8 &sw1, uint8 &sw2)
Метод служит для передачи команд и данных по протоколу ISO-DEP, в соответствии со стандартом ISO/IEC 7816-4 и ГОСТ Р ИСО/МЭК 7816-4.
Параметры:
cla
(CLA) — класс команды, устанавливает категорию команды;ins
(INS) — однобайтовый код команды;p1
,p2
(P1, P2) — необязательные однобайтовые параметры;data
(DATA) — массив байт с передаваемыми данными;le
(Le) — длина ожидаемого ответа в байтах;response
(Response) — ответ в виде массива байт;sw1
,sw2
(SW1, SW2) — байты состояний (коды завершения операции)
Параметр Lc, упомянутый в стандарте, вычисляется из размера массива data. Более подробно параметры, их назначение и возможные значения описаны в вышеуказанном ГОСТ и спецификациях ISO.