Необычный блок 4 в NXP Mifare NTAG213 с текстовой кодировкой NDEF

У меня есть метка NFC (тип метки NTAG213, NXP Mifare Ultralight) с кодировкой текста NDEF, которую мой код не может декодировать из-за незнакомого блока 4.

У меня такой же чип в удостоверении личности, закодированном другими средствами, чем на этикетке, и это читается нормально.

И этикетка, и удостоверение личности правильно считываются моим Android с помощью приложения NfcTools.

Этикетка не декодируется (закодированный текст "2A0001")

[04:0103a00c] [05:34030bd1] [06:01075400] [07:32413030] f8 00

Каково содержимое [01...] блока 04, переходящего в блок 5?

"03...." Начало NDEF находится в середине блока 5, почему?

ID-карта декодируется нормально (закодированный текст "200001")

[04: 030bd101] [05: 07540032] [06: 30303030] [07: 31fe0000] 8e 00

"03...." в блоке 4 указывает на сообщение NDEF.


person PVS    schedule 20.07.2019    source источник


Ответы (1)


В тегах MFU, называемых на форуме NFC «Тип 2», вы должны сначала получить блок 3 (называемый «CC»), где вы получите информацию о кодировке и версии.

Затем блоки 4+ содержат TLV (Тип, 1 байт, Длина, 1 байт, Значение, Длина байт).

Здесь, в первом примере, имеется TLV типа 1 длиной 3 байта со значением «a00c34» перед фактическим TLV NDEF, который содержит запись NDEF.

Вы должны получить документ "Спецификация работы тега NFC Forum Type 2." с форума NFC. CC объясняется в разделе 6.1, формат TLV — в 2.3.

person Nipo    schedule 25.07.2019