智能卡与 ACR122U 交互

Posted

技术标签:

【中文标题】智能卡与 ACR122U 交互【英文标题】:Smart Card interaction with ACR122U 【发布时间】:2013-05-28 03:28:34 【问题描述】:

我正在尝试编写一个使用 ACS ACR122U 卡终端与智能卡交互的应用程序。据我所知,API 使用标准 APDU 命令和伪 APDU 的组合与终端交互,但伪 APDU 似乎不像声称的那样工作。

API 参考(在 ACS 站点上提供)表明“FF XX XX XX ...”形式的 APDU 将由终端解释(而不是发送到卡),但我总是得到响应状态“6E XX”(我解释为我发送了一个无效的类 ID)。 我尝试使用“FF 00 40 0F 04 00 00 00 00”发送命令以使终端上的 LED 闪烁,还尝试使用“FF CA 01 00”从卡中获取一些唯一标识符。

我在 ISO 7816-4 文档(智能卡标准)和 ACS 提供的 API 参考中找不到任何有用的信息。此外,ACS 也不太愿意提供信息。 是否有人对我可能做错了什么或我可以在哪里寻找更多信息有任何想法?

连接卡后,我可以从终端获取 ATR - Answer To Reset。我正在开发与 Mifare 1K 卡的交互,并希望读取它们并与终端上的 LED 和蜂鸣器进行交互。

【问题讨论】:

你能在 Omnikey5321 CL 等其他终端中检查相同的 APDU,因为我使用的是相同的命令并且它有效.... 【参考方案1】:

您可以检索 API 文档here。这是 ACS 的专有 APDU,因此不要参考标准 ISO-7816 规范。有关伪 APDU 要求,请参阅第 6 节。

要模拟 LED,请参阅第 6.2 节了解详细信息,并以附录 E 为例。您可以尝试更改您的 APDU 如下:FF 00 40 FF 04 0A 0A 03 03。请注意,我设置了 LED 控件,并且还为 LED 持续时间设置了非零值。

关于第二个APDU,请参阅第4节。请注意,您的APDU中缺少P3/Le(应为FF CA 01 00 00),您需要将读卡器与PICC连接。

【讨论】:

以上是关于智能卡与 ACR122U 交互的主要内容,如果未能解决你的问题,请参考以下文章

acr122U NFC标签读取

如何读写未知的智能卡?

NFC怎么读NFCA卡信息或者CPU卡信息

复制MIFARE Classic卡

ACR122U 发送直接命令返回 -2 和分段错误

ACR122u卡仿真模式发送PN532指令