【发布时间】:2018-02-21 14:35:40
【问题描述】:
我有一张非接触式芯片卡(不是银行卡或 SIM 卡),我可以通过 NFC 通道(ISO14443、ISO 7816 第 4 部分)进行交互。
我想要从这张卡中得到的只是获取卡的 UID,这可以帮助我区分一张卡与其他卡。据我了解,这是我可以在标签“5A”下获得的 PAN 值。
首先,我可以将此命令发送到卡
00:a4:04:00:0e:32:50:41:59:2e:53:59:53:2e:44:44:46:30:31:00
并获得带有 AID 值的肯定答案 (SW:9000)。
所以,我有 AID,我可以发送这样的命令
00:a4:04:00:LеnAID:<AID>:00
打开文件以读取不同标签下的基于 TLV 的信息,对吗?
但是当我发送('5A' - PAN 的标签)
00:CA:00:5A:00
我的反应不好 -> 6E:00
所以,
1)我应该改变等级值(CLA = 00 现在)?还有什么价值?
2)也许我必须更改 READ RECORD(B0 或 B2 或其他)的 INS 值,因为“内核使用 AFL 的值(即标记 '94')发出一个或多个 READ RECORD 命令检索应用程序数据元素”,在我的例子中为 PAN 标记“5A”。 如果是这样,获取 PAN 的完整工作流程应该是什么?
UPD。 当我发送
ff:ca:00:00:00
我收到了
6e:00
【问题讨论】:
-
如果您的意思是非接触式 UID,请查看 here。 PAN/PAN 序列号对于 EMV 支付卡来说是非常具体的。祝你好运!
-
UID 一词暗示了一种精确度,这在一般的智能卡中根本不存在。这完全取决于您未指定的相关卡。首先,请参阅question。
-
@vlp ff:ca:00:00:00 不适合我,我收到了 6e:00。也许这就是我的卡不是支付卡,更像是一个令牌
-
@vlp 嗯,尝试使用 Paypass 从我的万事达卡获取信息。同样的答案,6E:00,对我来说很奇怪
-
@AlexZezekalo 我刚刚向万事达信用卡发送了
FF CA 00 00 00命令,我得到了卡的 UID。你用的是什么卡和读卡器?如果卡是 ISO 14443,您可以使用此命令获取 UID。它在非接触式 PCSC 扩展中定义。当您将卡轻触读卡器时,您会得到“ATR”吗?您可以查看 PCSC 规格以确定您使用的是哪种类型的卡。