2

I am new to javacard programming.While working with owner pin in my javacard application, I referred that "PIN interface which is in javacard framework package does not make any assumptions about where the data for the PIN value comparison is stored". And I want to know the following,

  1. Can I get the exact location where my owner pin is stored? If I can how to do that? How to export my updated owner pin?
  2. I have an applet of my javacard application. Now how can I load & install into my javacard.I know there are tools available and come with the smartcard itself. But I want to install without tool and only through apdu commands. Is there any procedure to do that? If so how to do that?
4

2 回答 2

2

关于小程序的安装,我有一个好消息和一个坏消息要告诉你:

安装命令的一般过程由Global Platform标准化,但这仅指您发送到 Cardmanager-Applet 的那些命令。然而,AFAIK 没有独立于供应商的 Cardmanager-AID 标准。此外,您必须先对 Cardmanager 小程序进行身份验证,然后才能使用它。在开发人员卡上,这通常是一个简单的密钥404142434445464748494a4b4c4d4e4f,例如 JCOP 卡用于第一个 DES 密钥的(十六进制)。

此外,卡所有者可以更改此身份验证密钥。因此,在非开发者卡上,您无权访问 Cardmanager。

于 2012-03-02T16:04:59.937 回答
2
  1. 抱歉,您无法检索 OwnerPIN,可能是出于安全原因。如果你想这样做,你将不得不自己实现 PIN 接口,但在实现中存在大约 8个关于边信道攻击等的陷阱。如果您想不到大约 8 次攻击,请不要去那里。通常,您不应该将 PIN 作为数据检索

  2. 当然,有一个过程可以做到这一点:创建您自己的 GlobalPlatform API - 您可能希望查看开源示例,例如gjp

作为一个极端的黑客,您可以将 PIN 作为密钥对象的值存储(通常受到很好的保护)。

于 2012-03-02T21:40:13.263 回答