我已经编写了我的小程序并安装在我的卡上。我应该怎么做以防止在我的Java卡上进一步修改或安装applet?
我已经读过我应该更改默认密钥集。我尝试了GPShell,但我无法更换密钥!
我尝试了jcManager,但它无法识别我的读者(acs和REINERSCT)!
如何最终确定我的卡以交付用户。任何人都可以告诉我最终确定步骤,以确保我的卡安全吗?
由于
答案 0 :(得分:4)
更改身份验证密钥:
GPShell 和 JCManager 是不再支持的旧工具。尝试使用较新的工具,例如 GlobalPlatformPro [Its executable file download link]。
使用GPPro更改默认身份验证密钥的命令:
gp -lock <PutTheNewKeyHere>
要反转上述操作(将新密钥更改为默认值):
gp -key <TheAboveNewKey> -unlock
更多命令描述here。
更改小程序和安全域的生命周期:
要更改卡的生命周期,您可以使用 SET STATUS APDU命令:
示例:
_OP_READY_ INITIALIZED :80 F0 P1 07 |Lc| AID
INITIALIZED SECURED :80 F0 P1 0F |Lc| AID
P1 = 40
:适用于应用程序(包括SSD)
P1 = 80
:对于ISD
将您的小程序设为默认选定小程序:
要将applet安装为DEFAULT SELECTED小程序,请在GPPro中使用-default
选项和安装命令:
GP -install <PathToYourCapFile> -default
(如果您更改了卡管理器身份验证密钥,则命令中也需要-key
选项)。
您还可以更改卡的ATR,使其难以通过ATR识别您的卡类型。要更改ATR,您可以在全球平台 API中使用SetATRHistBytes()
方法。
答案 1 :(得分:3)
无法更改Issuer Security Domains键。除此之外,还有多种安全指南可以保护您的卡,这些指南由全球平台规范描述。意思是:
更改卡管理器密钥是最重要和最标准的密钥。可以使用多样化。 尝试其他工具,例如GP Pro或再次检查所有操作。