NXP NTAG 424: команда записи возвращает 917E: «Ошибка длины» ». Почему? - PullRequest
0 голосов
/ 12 марта 2020

Я начал работать с чипом NXP NTAG 424 TT вместе с nfcpy и Identive SCL3711 Reader / Writer. Я могу успешно отправлять и получать команды APDU, безопасно аутентифицировать себя и отправлять и получать команды в режиме зашифрованной связи.

Однако я не могу читать или записывать данные на чип, и я не знаю почему. Вот что я делаю (в основном из приложения NXP note Page 24):

  1. Я посылаю команду «Приложение ISO Select NDEF с использованием имени DF» 00A404C07D276000085010100
  2. Затем я выполняю протокол безопасной аутентификации через AuthenticatEV2First с ключом 0x00
  3. Я пытаюсь записать некоторые данные следующим образом:
cmd_header = 02000000040000
cmd_data = 00D1FF00 (before padding)
cmd_data = 00D1FF00800000000000000000000000 (after padding)
The complete command which I send looks like this:
cla cmd P1&2| Lc |ISO Header      | encrypted Data                                 |LE
90 8D 00 00   1F  02 000000 040000 6688A4D75482FC972C2447A1A20F0AC9C073C1CF506B2BD3 00

Однако чип отвечает только с 917E: «Ошибка длины» », что переводится как« Размер команды не разрешен ». Что я делаю не так? Это не может быть шифрование, я проверял это с различными другими командами (getTTStatus, SetConfiguration), и все они работали нормально Я четыре раза проверил заголовок. Возможно, мне не удалось выбрать правильный файл, или я пропустил некоторые другие шаги? Также, что означает «Размер команды не разрешен»? Эта ошибка довольно крипта c для меня (что забавно при работе с зашифрованными чипами: D).

Любая помощь очень ценится!

С уважением, Фил

1 Ответ

1 голос
/ 13 марта 2020

Длина поля «зашифрованные данные» в вашем случае составляет 24 байта, тогда как длина, которую вы упомянули в заголовке ISO, равна «040000», т.е. 4 байта. Длина зашифрованных данных должна соответствовать длине данных, которые вы пишете. В вашем случае есть несоответствие в обеих длинах и приводит к ошибке.

Надеюсь, информация ясна. Ура!

...