The Source for Java Technology Collaboration
User: Password:



Igor Medeiros

Igor Medeiros's Blog

Java Card Development Kit, Make your Choice

Posted by igormedeiros on May 15, 2007 at 08:06 AM | Comments (15)

Everyone can mount their own development kit, buying each element (smart card reader, smart cards, SDK and Java Card applet uploader) from different vendors or in some cases getting some of these elements for free.

The market of smart cards is still very small and closed, this makes it hard to find information about free alternatives for Java Card development tools. I will show the elements of a Java Card Development Kit and then, you can decide whether to buy a closed kit from the main vendors or mount your own combining (or not) some free alternatives:

Usually, a Java Card Development Kit is composed by:
Two or more smart cards - each one with the Sun Java Card specification implemented (e.g. virtual machine, API, applet isolation firewall, etc), sometimes, these also comes with specific APIs, for example, EMV (financial), GSM in SIM Cards (telecommunications), Biometric, or all of them together.

- One Smart Card Reader - Even though this device is called "reader", it reads and writes in smart cards. The reader must be PC/SC and ISO 7816 compliant, I suggest you get a USB CCID compliance reader this will help you if working in different platform such as Win32, Linux, etc. Take a look at the list of CCID supported readers at: http://pcsclite.alioth.debian.org/ccid.html

- SDK (Software Development Kit) – Frequently based on Sun's JCDK (Java Card Development Kit), can consists of a RAD (Rapid Application Development) with some tools to manage the development. You can find a simulator, and in some cases, a plug-in for a popular Java IDE like Eclipse or NetBeans. The SDK license cost is a considerable part in total cost of the development kit. Sun's JCDK is free and has command line tools that helps you in compile, convert and simulate, although limited when comparing to executing on a real smart card.

Off-card Applet Uploader – This is a headache to many developers who are starting with Java card with a smart card without an applet uploader. Usually this software is proprietary (based on specific APDUs) and can be the key-element to make you decide to buy a proprietary or mounted kit. If you have a Global Platform compliant smart card, you can use an opensource uploader like GPShell from the M.U.S.C.L.E. Project. Using GP commands, once knowing the correct key to authenticate, you can upload upload your applet.

Now you know the elements of Java Card Development Kit and you can make your choice looking at the main vendor's products to compare the prices, some of them are: Aspects, Gemalto, G&D, NXP (Philips semiconductor), Oberthur, Towitoko (reader) and SCM Microsystems (reader).

More resources:
- Sun's Java Card Development Kit

- GPShell

- Global Platform

- PC/SC Workgroup

- M.U.S.C.L.E. Project


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Regarding plugins, you can also try this one for Eclipse: http://eclipse-jcde.sourceforge.net/

    Posted by: igormedeiros on June 26, 2007 at 05:15 AM

  • I'm working in projects for evaluate Java Card implementations.

    Posted by: igormedeiros on June 25, 2007 at 05:28 AM

  • I recommend JCOP plugin for development in Eclipse, on Netbeans, I'm planning de development of a plugin, you can observe that in https://jcardexpress.dev.java.net/

    Posted by: igormedeiros on June 25, 2007 at 05:26 AM

  • For development, I usually use Eclipse or NetBeans, with Ant to run GPShell tasks

    Posted by: igormedeiros on June 25, 2007 at 05:22 AM

  • For work with GPShell, the card Gemxpresso has a "special" support.

    Posted by: igormedeiros on June 25, 2007 at 05:20 AM

  • I still don't get a Java Card 2.2.2 on hands

    Posted by: igormedeiros on June 25, 2007 at 05:19 AM


  • Do you know about any java card that be 2.2.2 and comercially available ???

    Posted by: hzendejas on May 21, 2007 at 08:08 PM


  • In what javacard project are you working currently?

    Posted by: hzendejas on May 21, 2007 at 08:03 PM


  • What java card that be compatible with GPShell do you recommend?

    Posted by: hzendejas on May 21, 2007 at 08:02 PM


  • What IDE do you use for everyday work?

    Posted by: hzendejas on May 21, 2007 at 08:01 PM


  • Could you suggest me a plugin for Netbeans???

    Posted by: hzendejas on May 21, 2007 at 07:37 PM

  • Wawawewa! (Borat)

    Posted by: alegomes on May 16, 2007 at 04:43 PM

  • I quite like JCOP from IBM:

    http://www-306.ibm.com/software/wireless/wecos/tools.html

    Eclipse-based, standard compliant and they were easy to get - I have 3 JCOP cards and the software for $100 from a few years ago, wioth free upgrades. Covers OP\GP as well as JavaCard 2.11 and has a built in applet loader, off card dev simulator.

    Very nice tools, especially if you are used to doing development in Eclipse.

    Posted by: johnnycannuk on May 16, 2007 at 01:23 PM

  • One could also register for the SIMagine contest, or the E-Gate one if it still takes place, and get a free kit with all the pieces (cards, reader, software) if passing the first selection.

    That's how I got to play with SIMCards and JavaCards :).

    BTW, the contest is run by Gemalto and I don't work for them. I just enjoyed taking part in the contest and learnt quite a bit in the process, for free.

    S!

    Posted by: greeneyed on May 16, 2007 at 10:54 AM

  • The card we got @ JavaOne is a "Java Card" right? Can it be reprogrammed? I guess I'm missing a reader of course ...

    Posted by: augusto on May 15, 2007 at 09:24 AM



Only logged in users may post comments. Login Here.


Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds