首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >静态键是如何从结构中加载到卡上的?

静态键是如何从结构中加载到卡上的?
EN

Stack Overflow用户
提问于 2017-03-03 16:28:40
回答 2查看 504关注 0票数 0

有个很新的问题。但是这个问题持续了很长一段时间:我们都知道SCP01 01/02/03中使用的会话密钥来自静态键控材料。但我不知道这些静态钥匙是怎么装在卡上的!也许我读得太随便了,但是我已经翻阅了整篇关于那些感兴趣的词的论文,却什么也没找到。有老板能指点我吗?顺便问一下,你能告诉我一些关于个性化过程的目的吗?请。

对于那些可能不知道数据“多样化数据”的用法的人,我在这里引用"GlobalPlatform卡规范2.1.1和2.1 17常见问题“中的一段:

通常,智能卡方案使加载在任何智能卡上的静态密钥(例如附录D.2 -密码密钥中列出的安全通道密钥)多样化,这样一张卡中的安全漏洞不会损害整个卡库。因此,附录D.4.1.6和E.5.1.6 -初始化更新响应消息中描述的初始化更新响应中存在“关键多样化数据”。这些信息是特定于密钥管理和卡管理方案的:例如,它可以是唯一的卡标识符,允许非卡系统识别和/或计算特定卡携带的静态密钥。总之,它是一种操作技术,可以避免存储在卡外数据库中,因为卡的数量可能高达数百万。

EN

回答 2

Stack Overflow用户

发布于 2017-03-05 00:26:35

您的智能卡通常附带安装在卡上的默认密钥。对于大多数卡片,SCP02中所有3个DES键的这是404142..4F。因此,您可以尝试默认密钥,否则请供应商/供应商/芯片制造商提供密钥。小心芯片在一定数量的不成功尝试后锁定自己。

为了改变操作生命周期的关键,Global提供了PUTKEY命令,通常还有其他特定于芯片的方法(例如STORE DATA或完全专有的)可能存在。如果PUTKEY不工作,请与您的供应商/供应商/芯片制造商联系。

票数 2
EN

Stack Overflow用户

发布于 2021-05-04 09:24:25

全新的NXP JavaCard和jcshell终端。更改值1D9A55C27970FACEBABEDEC0DE4CCE55的静态第一个键

代码语言:javascript
复制
/terminal
/atr
/card
init-update
ext-auth enc
/set-var k 1D9A55C27970FACEBABEDEC0DE4CCE55
set-key 1/1/DES-ECB/${k} 1/2/DES-ECB/${k} 1/3/DES-ECB/${k}
put-keyset -m add -r 1 1

移除卡片并将卡片放回,然后使用新的静态密钥进行身份验证:

代码语言:javascript
复制
/card
/set-var k 1D9A55C27970FACEBABEDEC0DE4CCE55
set-key 1/1/DES-ECB/${k} 1/2/DES-ECB/${k} 1/3/DES-ECB/${k}
init-update 1

以下是我观察到的一些事情。一个全新的卡默认密钥索引是FF,这意味着静态密钥来自于制造违约。一旦引入新键,默认的静态键将永远丢失,密钥索引将不再是FF。因为我们将静态键索引设置为1,所以init-update必须提供这个索引号。否则,卡将选择此索引号。

我可以继续添加更多的静态键,但不能删除。静态键只能在值中更改或在索引中重新定位。我还没有处理10字节的多样化数据,但我看到每一张卡都要修复它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42583929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档