验证Javacard上的applet和SAM上的applet(安全访问模块)

时间:2016-09-18 12:19:13

标签: javacard

我在我的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和卡?我想应该有办法让它们兼得。

1 个答案:

答案 0 :(得分:5)

如果您有不同的(逻辑)读卡器设备,那么在使用另一个设备时,无需将频道关闭到其中任何一个。您应该能够同时使用它们,即使是在同一个线程中也是如此。

问题在于使用gp.exe,这是一种不是为此类用途而编写的工具。请编写应用程序代码,例如使用Java&而是javax.smartcardio