我在我的Java卡中编写了一个applet,在我的SAM中编写了另一个applet。我想通过发送每一侧创建的随机数来创建相互身份验证。 读者的模型是:
c:\>gp.exe -all -d
# Detected readers from SunPCSC
[*] ACS ACR1281 1S Dual Reader PICC 0
[*] ACS ACR1281 1S Dual Reader SAM 0
我在SAM上选择applet,创建随机数并发送出去。然后我选择Java卡上的applet创建随机SAM的字符串和新的随机创建卡并发送混合随机。
所以我应该再次选择SAM上的applet来检查随机,但由于我的randoms处于瞬态Clear_ON_RESET内存,它们就消失了。
我需要瞬态CLEAR_ON_RESET
内存中的随机数。我使用gp.exe
发送APDU。
有没有办法选择SAM和卡?我想应该有办法让它们兼得。
答案 0 :(得分:5)
如果您有不同的(逻辑)读卡器设备,那么在使用另一个设备时,无需将频道关闭到其中任何一个。您应该能够同时使用它们,即使是在同一个线程中也是如此。
问题在于使用gp.exe
,这是一种不是为此类用途而编写的工具。请编写应用程序代码,例如使用Java&而是javax.smartcardio
。