【发布时间】:2011-10-22 22:50:12
【问题描述】:
我想尽快开始智能卡编程。请帮助我使用 javacard 开始学习所需的东西。哪个 IDE(如果有 IDE 支持)、软件和硬件相关?像手机模拟器一样,是否有任何智能卡模拟器,或者如果我必须购买智能卡,请指定这些卡在哪里以及如何获得?
【问题讨论】:
标签: ide simulator smartcard javacard
我想尽快开始智能卡编程。请帮助我使用 javacard 开始学习所需的东西。哪个 IDE(如果有 IDE 支持)、软件和硬件相关?像手机模拟器一样,是否有任何智能卡模拟器,或者如果我必须购买智能卡,请指定这些卡在哪里以及如何获得?
【问题讨论】:
标签: ide simulator smartcard javacard
关于智能卡编程的一般答案是,您应该准备好浏览令人困惑的工具和技术列表。通常,智能卡开发人员首先会考虑特定的硬件平台:比简单的 javacard 更具体。
由于您特别提到了 javacard,我们可以重点关注几个起点。
您可以从javacard dev kit 开始。我没有用过最新的——我还在用 2.0.2。这个开发工具包非常是面向命令行的,所以希望在 IDE 之外完成大部分工作。但是,文档非常有用,应该可以让您快速上手。无论如何,这是一个很好的起点,因为它是官方的。
EclipseJCDE 看起来也很有趣,但我没有用过。我似乎记得另一个旨在构建 javacard Eclipse 工具的项目,但我可能只是在考虑 EclipseJCDE。
曾经,IBM 发布并维护了一组与 Eclipse IDE 集成的 JCOP 工具。这样做的好处是他们会向您发送一个包含一些开发工具和几张 JCOP 卡的软件包。烦人的是需要激活码。看看here。下载链接仍然很好,祝那里列出的电子邮件地址好运。另请注意,这些工具需要旧版本的 Eclipse。构建/调试支持非常好,包括内置的 javacard 模拟器。
如果你打算做 javacard 编程,你也应该了解 Global Platform。这是一个智能卡标准,在 javacard 的上下文中,当您需要加载和管理 javacard 小程序时,您需要了解 GP 规范。这是使用 JCOP 卡所必需的。对于最新的 GP 规范,请搜索 GlobalPlatform Card Specifications。您需要非常熟悉基本的智能卡概念,例如APDU。
除了上面的 JCOP 内容之外,硬件选择太多了,我无法提出有用的建议。正如我所提到的,如果您可以使用 IBM 工具包,那么您将获得一个带有 Eclipse 工具的优秀 JCOP/javacard 模拟器。我确定还有其他可用的卡片模拟器。
除此之外,还有一长串智能卡程序员采用的其他技术规范,不幸的是,其中有许多不是免费提供的(ISO 文档)。如果您要进行 GSM 编程,我认为您可以了解所有 GSM 规范,搜索 ETSI GSM 规范。 GSM 11.11 对于了解更多关于 APDU 命令/响应的信息特别有用,无需访问 ISO 规范,例如ISO 7816-4。
【讨论】:
在这里分享两个我用来学习javacard的新免费工具。希望能帮助其他人轻松上手javacard。
JCIDE:专为Java Card编程语言设计的集成开发环境。
PyAPDUTool: 是一款方便的工具,可以通过读卡器连接PC与卡进行通信。它是一个符合 PC/SC 标准的应用程序。
【讨论】: