使用Javacard启动智能卡编程所需的事情

使用Javacard启动智能卡编程所需的事情

问题描述:

我想尽快开始智能卡编程。请帮助我使用javacard开始学习所需的东西。哪个IDE(如果有IDE支持),软件和硬件相关?像手机模拟器是否有任何智能卡模拟器或者如果我必须购买智能卡指定那些卡在哪里以及如何获得?

I wanted to start with the smartcard programming soon. Please help me the things required for starting the learning using javacard. Which IDE (If any IDE Supports), Software and Hardware related? Like Mobile phone simulator is there any smartcard simulator or else if I have to buy a smartcard specify those cards where and how I can get?

关于智能卡编程的一般答案是,您应该准备好浏览令人困惑的工具和技术列表。通常情况下,智能卡开发人员首先考虑特定的硬件平台:比 javacard 更具体。

A general answer regarding smartcard programming is that you should be ready to navigate a confusing list of tools and technologies. Typically smartcard developers begin with a specific hardware platform in mind: more specific than simply javacard.

由于您特别提到了javacard,我们可以关注几个起点。

Since you've specifically mentioned javacard, we can focus on a few starting points.

您可以从 javacard开发工具包。我没有使用最新的 - 我仍在使用2.0.2。这个开发工具包是非常面向命令行的,因此期望在IDE之外完成大部分工作。但是,文档非常有用,可以让您快速上手。无论如何,这是一个很好的起点,因为它是正式的。

You might begin with the javacard dev kit. I haven't used the most recent - I'm still using 2.0.2. This dev kit is very command-line oriented, so expect to be doing most of your work outside an IDE. However, the documentation is pretty helpful and should get you up to speed pretty quickly. At any rate, it's a good place to start, since it's official.

EclipseJCDE看起来也很有趣,但我还没有用过它。我似乎还记得另一个旨在构建javacard Eclipse工具的项目,但我可能只是在考虑EclipseJCDE。

EclipseJCDE also looks interesting, but I haven't used it. I seem to recall another project aiming to build javacard Eclipse tools, but I may just be thinking of EclipseJCDE.

IBM曾经发布并维护了一套与Eclipse IDE集成的JCOP工具。关于这一点的好处是他们会向你发送一个包含一些开发工具和一些JCOP卡的包。令人讨厌的是,需要激活码。看看这里。下载链接仍然很好,祝好那里列出的电子邮件地址。另请注意,这些工具需要较旧版本的Eclipse。构建/调试支持非常好,包括内置的javacard模拟器。

At one time IBM published and maintained a set of JCOP tools that integrated with the Eclipse IDE. The great thing about this is that they would send you a package containing some dev tools and a couple of JCOP cards. The annoying thing is that an activation code was required. Have a look here. The download link is still good, good luck with the email address listed there. Also note that these tools require an older build of Eclipse. The build/debug support is very good, including a built-in javacard simulator.

如果你打算做javacard编程,你也应该了解全球平台。这是一个智能卡标准,在javacard的环境中,当您需要加载和管理javacard applet时,您需要了解GP规范。这是使用JCOP卡所必需的。有关 GlobalPlatform卡规格的最新GP规格搜索。您需要非常熟悉基本的智能卡概念,例如: APDU。

If you plan on doing javacard programming, you should also get to know Global Platform. It's a smartcard standard, and in the context of javacard, you'll need to know about the GP spec when you need to load and manage javacard applets. This is required for working with JCOP cards. For the latest GP spec search for GlobalPlatform Card Specifications. You'll need to be very familiar with basic smartcard concepts, e.g. APDUs.

除了上面的JCOP之外,硬件选择太多了我无法提出有用的建议。正如我所提到的,如果您可以使用IBM工具包,那么您将使用Eclipse工具获得一个好的JCOP / javacard模拟器。我确定还有其他卡片模拟器可用。

Hardware choices are too varied for me to make useful recommendations, beyond the JCOP stuff above. As I mentioned, if you can use the IBM kit then you'll get a good JCOP/javacard simulator with the Eclipse tools. I'm sure there are other card simulators available.

除此之外还有一长串清单智能卡程序员使用的其他技术规范,不幸的是其中许多都不是免费提供的(ISO文档)。如果您要进行GSM编程,我认为您可以使用所有GSM规范,搜索 ETSI GSM规范。 GSM 11.11对于更多地了解APDU命令/响应特别有用,无需访问ISO规范,例如, ISO 7816-4。

Beyond that there is a long list of other technical specifications employed by smartcard programmers, and unfortunately many of them aren't freely available (ISO docs). If you'll be doing GSM programming, I think you can get to all of the GSM specs, search for ETSI GSM specifications. GSM 11.11 is particularly useful for learning more about APDU command/response, without access to ISO specs, e.g. ISO 7816-4.