2014-02-25 168 views
0

首先,我想让你知道我是新的关于javacards。我正处于编写javacard applet的研究阶段,我有一些令人惊讶的问题不容易通过谷歌搜索来回答。我想创建一个android应用程序,通过NFC触发一个javacard应用程序。到目前为止,我建立了与IsoDep卡的连接。Javacard初学者 - 问题

  1. 可以说我有一个cap-file。我如何将它安装在实际的javacard上? (我需要一个带有PC/SC的读卡器/写卡器吗?您建议使用哪种卡)

  2. 是否可以使用我的智能手机(通过android)放置/安装上限文件?

  3. 有没有什么办法(通过APDU命令)获取有关卡上的内容的信息?具体来说:卡上的小程序,可用的内存。

Thx非常提前的答案。

+0

你看过http://developer.android.com/guide/topics/connectivity/nfc/nfc.html – ErstwhileIII

+0

是的,但我主要讲述了我已经建立的沟通。我的第二个问题包括通信,如:我可以安装带有IsoDep.transceive功能的.cap文件吗? – sidi

回答

0

将顶盖文件部署到卡上的标准是GlobalPlatform卡规范(目前在v2.2.1)。由于卡片是非常安全的环境,因此您不能只在任何卡片上安装代码。您需要对卡片进行身份验证,并因此拥有您要锁定卡片的钥匙。

假设你有他们,你可以看看How to load CAP file to java card的一些选项。我建议使用PC/SC阅读器。

通常在Android上,您必须使用OpenMobileAPI,因为发卡行安全域无法通过NFC访问(如果您想尝试此操作),并且IsoDep.Transceive适用于SIM卡(如果您的卡是SIM卡)将APDU发送给其他非接触式卡(不是您的SIM卡)。

+0

这不是我所瞄准的SIM。你会建议哪些PC/SC读者(例子)?你的钥匙是什么意思? – sidi

+0

在安装任何东西之前,需要使用加密密钥对卡进行身份验证。有些卡还要求软件包已签名。 – takumar

1

Q1 & Q3:您可以使用PyAPDUTool可以通过连接到PC读者卡沟通上的真正的Java卡安装的小程序,也了解什么是对的card.You还可以管理applet或通过PyAPDUTool打包在卡中。第二季度:是的,如果您的手机支持NFC。