提问人:Kapil 提问时间:11/6/2023 更新时间:11/7/2023 访问量:79
读取/写入从ACR1252U连接的MIFARE DESFire EV2卡的原始数据
Reading/Writing the raw data of the MIFARE DESFire EV2 cards connected from ACR1252U
问:
我正在尝试将原始二进制文件读取和写入MIFARE DESFire EV2卡,但我很难理解正确的APDU命令。我有一些小的二进制数据,我想通过NFC卡进行物理移动,为此我希望能够读取和写入它。 我厌倦了遵循 ACR1252U API 文档,并按照 pdf 中所述的顺序执行了这些命令。
'Start Transparent Session': "FF C2 00 00 02 81 00",
'Turn Antenna Field On': "FF C2 00 00 02 84 00",
'ISO 14443-4A Active': "FF C2 00 02 04 8F 02 00 04",
'Set the PCB to 0Ah and enable the CRC, parity and protocol prologue in the transmit data': "FF C2 00 01 0A 90 02 00 00 FF 6E 03 07 01 0A"
这些使用 ok stauts () 运行良好,之后我尝试按顺序使用这些命令验证和读取二进制块。90 00
'Load auth key into the reader': "FF 82 00 00 06 FF FF FF FF FF FF",
'Authentication for MIFARE Classic': "FF 86 00 00 05 01 00 04 60 00",
'Read 16 bytes starting from the binary block 80h':"FF B0 00 04 10"
但是这些命令会因错误而失败,有时在此错误之后,读卡器会停止检测卡,直到我重新插入读卡器,这对我来说似乎很奇怪。63 00
我做错了什么?我对NFC和智能卡的东西完全陌生。我知道我可以使用 APDU 命令与卡进行通信,并找到了一种使用 pcsc (python pyscard) 发送这些命令的方法,但我对它们知之甚少,文档也很难找到。您能否帮助一步一步地从卡片中获取数据,解释每个 APDU 在做什么,或者我可以遵循的一些文章或文档。
此外,我还看到文档讨论在MIFARE DESFire EV2中选择文件/应用程序和AID,而ACR1252U API文档(如上所述)没有讨论这一点。我不知道这是什么,你能解释一下吗?MIFARE DESFire EV2文档显示了可用的命令,但如何使用ACR1252U将该命令发送到卡?
谢谢
答:
这不是对你的问题的真正“答案”,而是试图帮助你。由于有关Mifare DESFire EVx标签的文档是根据“保密协议”(NDA)提供的,因此关于这些标签的文档确实不多。
幸运的是,有可用的“子类型” - Mifare DESFire light 标签,并且文档是公开的。
我建议阅读以下文档:
数据表:https://www.nxp.com/docs/en/data-sheet/MF2DLHX0.pdf
一个很好的“功能和提示”文档,带有“分步”示例:https://www.nxp.com/docs/en/application-note/AN12343.pdf
此外,另一个标签具有非常相似的命令系统 - NTAG 424 DNA标签,对于该标签,还提供数据表和“功能和提示”应用说明 - 祝你好运。
B.t.w.:你的问题在 Stackoverfl 上是题外话
评论