java - 智能卡 ATR 和选择文件命令

标签 java python smartcard apdu

我刚刚开始了解一些智能卡,并且正在使用 pyscard 进行练习。

所以我有 2 个问题(我使用的是 Visa 预付卡):

1)我在网上看到有人说有一个方法可以知道你的卡可以使用哪些选择方式,通过他的ATR。 你如何确定这一点? 有人可以给我举个例子吗?

2)我尝试使用我在互联网上看到的很多技术来选择我的 Visa 卡的 MF。我尝试使用 MF 名称和其他许多帮助,但没有得到 ="90 00" 的结果。有人可以帮我吗?

如果您也能带来一个好的指南来学习,我会很高兴!

最佳答案

1) 您可以使用此站点解码您的 ATR:https://smartcard-atr.appspot.com/ 。在类别指示符字节 (0x80) 下,您将看到如何选择应用程序。

2) 与其他卡相比,您的卡可能具有不同的 Visa AID。最常用的 AID 是 A0000000031010,即签证借记卡或信用卡。

有两种方法可以检查您的卡支持哪些 AID。

a) 如果您不知道卡的 AID,您可以尝试发送支付系统环境 (PSE) AID。如果卡支持 PSE,它将发回支持的 AID 列表。请在此处查看如何发送选择的 PSE:https://www.openscdp.org/scripts/tutorial/emv/applicationselection.html

另请在 PSE 上检查此问题:How to Read EMV based smart VISA card details

b) 尝试发送所有可能的 VISA AID。检查此网站的其他签证辅助工具:http://emvfunctionalflow.blogspot.com/2018/05/visa-inc.html

关于java - 智能卡 ATR 和选择文件命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56837306/

相关文章:

Android: 14443 A型卡的HCE

java - ArrayList 自动添加空项

python - 如何判断PyJWT的版本?

python - 编写 CSV 以存储在 Google Cloud Storage 中

python - 在 Python CGI 中打印 HTML

c++ - SCardGetReaderDeviceInstanceId 的实现

smartcard - Java卡2.2.2 : temporary RSA public key as transient

java - @Cacheable注解的方法在实际数据修改时执行吗?

java - SL4J2 - 使用 SL4J2 2.5 在运行时附加文件名和位置

java - 使用 FileLock 在 Java 中锁定文件