JC101-1j: Hello World (for Java developers)

UPDATED (03/10/08): Fixed some more bugs … UPDATED (05/05/07): Fixed some bugs; added a few explanations. “Hello world” seems easy in most languages, but there are several reasons that make it cumbersome to write in Java Card. First, Java Card only supports a subset of the Java language, and this subset includes neither the char […]


Java Card tutorial

I have hesitated a bit about this: is there room for another Java Card tutorial? I looked on Internet, and I found a few interesting things. However, I still have the feeling that there is room for a tutorial that, without giving away trade secrets and other cryptographer tricks, would focus a bit more on […]


Challenge: Analysis for fault induction

One of the most common attacks used on cards these days is fault induction, in which some kind of external means is used to trigger a fault in the execution of an application. One of the effects that can be obtained is to modify the value that is read by an EEPROM access. For instance, […]


Java Card’s intelligent design

While looking for something else, I found a nice paper [JHPC05]written last year by a few guys from Integrity Arts (the start-up from Gemplus that was bought by Sun to form its original Java Card team). The paper includes a history of the ideas that led to Java Card, and it also places them in […]


Added section

I have added a section for the topics that are not related directly to a Java Card platform or to any discussion. The topics that we will find in there will of course include applications and research, but also history, and most likely more stuff in the future.


Java Card platform performance measurement

Java Card performance has always been a contentious issue: first, between the Java Card vendors; then, between the Java Card supporters and the native card supporters. The issue is sensitive, because it is a commercial argument, which has been used and misused across the years.


e-Smart program is available

The e-Smart conference is coming soon, bringing once again the entire community to my home base in Sophia Antipolis. The program is now available, but we can only see titles and authors. A few things caught my eyes On Wednesday afternoon, there is a speech by Christophe Tremlet from STMicro entitled Designing Smartcard ICs that […]


Exception handling in install

The JCRE specification does not describe how the exceptions thrown from the install command should be handled. The reason for this is that these exceptions are supposed to be handled by an installer application, and the JCRE specification (¶11.1.5)explicitly states: Java Card RE implementers shall also define other behaviors of their Installer, including (…) what […]


Mesure project user group

The MESURE project is a R&D projectthat aims at defining a reference benchmark for Java Card platforms. It started a few months ago, and it will hold its first User Group meeting during the e-Smart conference in Sophia Antipolis. More precisely, the meeting is scheduled on Wednesday September, 20th, at 17:30. The objective of the […]


Throwing exceptions

Exceptions are a nice feature of the Java language, which is available to Java Card developers. The nice thing about exceptions is that you don’t have to deal with error codes. We here recall a few good practices about the use of exceptions in Java Card applications.