用于获取智能卡序列号的 APDU 命令

SVI*_*SVI 0 c# apdu smartcard

如何使用 APDU 命令获取智能卡的序列号?我尝试使用 SCardGetAttrib 函数来查询它,winscard.dll但没有成功,我被告知使用 APDU 命令来执行此操作,因为没有标准方法来获取序列号。问题是我无法弄清楚我的智能卡是什么类型!因此,我查看了一些流行智能卡制造商的文档,但没有找到获得序列号的方法!

我的读卡器是ACR88。

tak*_*mar 5

在下面的命令中,A0 可能需要为 00 或其他值(下面的代码适用于 SIM 卡):

\n\n

选择\xc2\xa0MF:

\n\n
=> A0A40000023F00\xc2\xa0\n<= 9F16\n
Run Code Online (Sandbox Code Playgroud)\n\n

选择\xc2\xa0EFiccid:

\n\n
=> A0A40000022FE2\xc2\xa0\n<= 9F0F\n
Run Code Online (Sandbox Code Playgroud)\n\n

读取二进制\xc2\xa0:

\n\n
=> A0B000000A\xc2\xa0\n<= 984310011823020084F99000\n
Run Code Online (Sandbox Code Playgroud)\n\n

您的 ICCID 已交换并具有 luhn 检查 (984310011823020084F9 => 8934011081322000489)。

\n