同一张双界面卡上的接触式和非接触式读卡器的
举个具体的例子,我有一张JavaCard J3H145,它在非接触式读卡器和接触式读卡器上提供不同的ATR(通过
为了完整起见,我试图在非接触界面上运行 https://github.com/ANSSI-FR/SmartPGP,目前这个在双界面卡上的接触式界面可以正常工作。是
相关的SO问题:ATR command when programming PC/SC reader。
ATS
和ATR
是否应该相同?对于双界面卡上运行的JavaCard应用,如果其响应不同的ATS
和ATR
,是否会影响该应用程序的执行? 这里有另一个相关问题: Difference between contact card and contactless(RF) card ,它似乎表明如果它们使用相同的传输协议,则它们可以是相同的。举个具体的例子,我有一张JavaCard J3H145,它在非接触式读卡器和接触式读卡器上提供不同的ATR(通过
pcsc_scan
显示)。这是否意味着读卡器正在进行某些操作(例如 the Identiv 3700f )? 我有几个javacard应用程序在接触式读卡器上工作但在非接触式读卡器上不工作。当我通过pcscd
跟踪ADPU时,一切都是Attempting PTS to T=1
(这是否需要读卡器从T = CL
进行转换?)。
编辑:附加研究
有一些相关问题可以开始讲述故事:
详细说明了如何在ATR
和ATQ-A
以及ATQ-B
之间进行转换的过程,而
- Smartcard with different historical bytes depending on interface
- How to change applet's privilege and the card Historical Bytes?
表明历史字节可以从GP API中更改(因此ATS
/ATR
可编辑),因此我认为有一种方法可以手动将它们修复为相同的。
ATR: 3B 80 80 01 01 (ISO 14443 Type B without historical bytes)
,以及在接触式通信中(当一切正常时!)ATR: 3B DC 18 FF 81 91 FE 1F C3 80 73 C8 21 13 66 05 03 63 51 00 02 50 (JCOP3 SecID P60 CS (JavaCard))
。为了完整起见,我试图在非接触界面上运行 https://github.com/ANSSI-FR/SmartPGP,目前这个在双界面卡上的接触式界面可以正常工作。是
ATR
/ATS
的不同导致这个问题吗?相关的SO问题:ATR command when programming PC/SC reader。