如何用ACR122U验证NTAG213

时间:2017-05-29 08:19:50

标签: authentication nfc mifare apdu acr122

我使用带有NTAG213卡的ACR122U读卡器。该卡是使用密码52 84 00 08保护的密码(读写)。我应该运行哪些APDU命令来验证卡,并在验证后读取它的第30页和第31页?

我知道使用MiFare 1k我可以加载密码并验证某个扇区,但我不确定如何使用带有ACR122U读卡器的NTAG213卡进行身份验证。

1 个答案:

答案 0 :(得分:3)

使用ACR122U,您需要将直接命令发送到阅读器内部的PN532 NFC控制器芯片,以便交换这种低级命令。例如,您可以使用InCommunicateThru命令将原始命令发送到标记:

+-----+-----+-----+-----+--------------+-----------+-----+
| CLA | INS | P1  | P2  | Lc           | DATA      | Le  |
| FF  | 00  | 00  | 00  | 2 + len(CMD) | D4 42 CMD | --  |
+-----+-----+-----+-----+--------------+-----------+-----+

这样,您就可以将密码验证命令(PWD_AUTH)发送到标记:

FF 00 00 00  07  D4 42  1B  52 84 00 08
                        --  -----------
                        |   |
                        |   \-> password
                        \-> command: PWD_AUTH

对此命令的响应应该类似于

D5 43 00  PACK  90 00

同样,您可以发送READ命令来阅读任何页面:

FF 00 00 00  04  D4 42  30  XX

其中XX是1字节的页面地址。

请注意,read命令也应该使用(更健壮的?)InDataExchange命令:

FF 00 00 00  05  D4 40 01  30  XX