读取/写入从ACR1252U连接的MIFARE DESFire EV2卡的原始数据

问题描述 投票:0回答:1

我正在尝试读取原始二进制文件并将其写入 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"

这些运行良好,并且运行良好(

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 将该命令发送到卡?

谢谢你

nfc mifare pcsc pyscard acr1252
1个回答
0
投票

这不是您问题的真正“答案”,但试图帮助您。由于有关 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 标签,对于该标签,还提供了数据表和“功能和提示”应用说明 - 祝你好运。

顺便说一句:你的问题在 Stackoverfl 上是偏离主题的

© www.soinside.com 2019 - 2024. All rights reserved.