在gpshell中更改Global Platform默认密钥后,对Java Card Manager的身份验证失败

时间:2016-04-07 15:46:03

标签: javacard globalplatform

我想更改globalplatform默认密钥,以便将小程序和安全消息传递加载到卡管理器。 我可以成功地使用bellow命令更改我的gemalto默认GP卡密钥:

mode_211
enable_trace
establish_context
card_connect -readerNumber 1
select -AID A000000018434D00
open_sc -security 1 -keyind 0 -keyver 1 -key 47454d5850524553534f53414d504c45  -keyDerivation visa2 // Open secure channel
put_sc_key -keyver 0 -newkeyver 1 -key 505152535455565758595a5b5c5d5e5f // Put secure channel keys
card_disconnect
release_context

但是当我想通过新密钥向卡管理器建立安全通道时,在主机端产生的密码与卡侧不匹配。旧密钥也不起作用。 用于对卡管理器进行身份验证的命令是:

open_sc -security 1 -keyind 0 -keyver 0 -key 505152535455565758595a5b5c5d5e5f  -keyDerivation visa2 // Open secure channel

我也测试了

open_sc -security 1 -keyind 0 -keyver 1 -key 505152535455565758595a5b5c5d5e5f  -keyDerivation visa2 // Open secure channel

open_sc -security 1 -keyind 1 -keyver 0 -key 505152535455565758595a5b5c5d5e5f  -keyDerivation visa2 // Open secure channel

open_sc -security 1 -keyind 1 -keyver 0 -key 505152535455565758595a5b5c5d5e5f  -keyDerivation visa2 // Open secure channel

此外,我通过smartcafe智能专家3.2(G& D卡)测试了该过程,结果相同。

如果有人能帮助我,我感激不尽。

1 个答案:

答案 0 :(得分:1)

您需要使用:

open_sc -security 1 -key 505152535455565758595a5b5c5d5e5f

由于新密钥不是多样化的(派生的),您必须直接使用它。

祝你好运!

请注意,不成功的身份验证有限制 - 您可能会锁定您的卡。