Contents Previous Next Index


Java Card™ technology combines a subset of the Java™ programming language with a runtime environment optimized for smart cards and similar kinds of small-memory embedded devices. The goal of Java Card technology is to bring many of the benefits of Java software programming to the resource-constrained world of smart cards.

The Java Card API is compatible with international standards, such as ISO7816, and industry-specific standards, such as Europay/Master Card/Visa (EMV).

The Development Kit User’s Guide for the Java Card™ Platform, Version 2.2.1 contains information on how to install and use the Development Kit tools.

Who Should Use This Book

The Development Kit User’s Guide is targeted at developers who are creating applets using the Application Programming Interface for the Java Card™ Platform, Version 2.2.1 , and also at developers who are considering creating a vendor-specific framework based on the Java Card technology specifications.

Before You Read This Book

Before reading this guide, you should be familiar with the Java programming language, object-oriented design, the Java Card technology specifications, and smart card technology. A good resource for becoming familiar with Java and Java Card technology is the Sun Microsystems, Inc. web site, located at:

How This Book Is Organized

Chapter 1, "Introduction to the Development Kit for the Java Card Platform,” provides an overview of the Development Kit and its tools.

Chapter 2, "Installation,” describes the procedures for installing the tools included in this release.

Chapter 3, "Development Kit Samples and Demonstrations,” describes sample applets which illustrate the use of the Java Card API. It also describes demonstration programs which illustrate very important scenarios of applet masking and post-manufacture installation.

Chapter 4, "Running Applets in an Emulated Card Environment,” provides an overview of the Java Card technology-based Workstation Development Environment (“Java Card WDE”) and details of how to run it.

Chapter 5, "Converting Java Class Files,” provides an overview of the Converter and details on how to run it.

Chapter 6, "Viewing an Export File,” describes how to use the exp2text tool to view any export file in ASCII format.

Chapter 7, "Verifying CAP and Export Files,” provides an overview of the off-card verifier tool and details of running it.

Chapter 8, "Generating a CAP File from a Java Card Assembly File,” describes how to use the capgen utility.

Chapter 9, "Producing a Text Representation of a CAP File,” describes how to use the capdump utility.

Chapter 11, "Using the Java Card Reference Implementation,” describes how to use the C-language runtime environment simulator for the Java Card platform (“Java Card Runtime Environment” or “Java Card RE”).

Chapter 12, "Using the Installer,” describes how to download and delete packages, and create and delete applet instances using the installer.

Chapter 13, "Sending and Receiving APDU Commands,” describes how to use apdutool to transfer APDUs to and from the C-language Java Card Runtime Environment or Java Card Workstation Development Environment (WDE).

Chapter 14, "Using Cryptography Extensions,” describes the cryptography APIs optionally provided with this release.

Chapter 15, "Java Card RMI Client-Side Reference Implementation,” describes the reference implementation of Java Card technology-based client-side Remote Method Invocation API (“client-side Java Card RMI API”).

Appendix A, "Java Card Assembly Syntax Example,” describes the Java Card platform assembly output of the Converter using a commented example file.

Appendix B, "CAP File Manifest File Syntax,” describes the syntax of the manifest file which the Converter includes in the CAP file.

Appendix C, "Using the Large Address Space,” describes how your applications can get the most out of a large address space implementation.

Appendix D, "Reference Implementation of Java Card RMI Client-Side API,” provides the documentation for the client-side Java Card RMI API.

Related Books

References to various documents or products are made in this manual. You should have the following documents available:

You can download version 2.2.1 of the Java Card specifications from the Sun Microsystems web site:

Typographic Conventions

The names of commands, files, and directories; on-screen computer output
Edit your .login file.
Use ls -a to list all files.
% You have mail.
What you type, when contrasted with on-screen computer output
% su
Book titles, new words or terms, words to be emphasized
Command-line variable; replace with a real name or value
Read Chapter 6 in the User’s Guide.
These are called class options.
You must be superuser to do this.
To delete a file, type rm filename.

Accessing Sun Documentation Online

The Java Developer Connectionsm web site enables you to access Java™ platform technical documentation on the Web:

Sun Welcomes Your Comments

We are interested in improving our documentation and welcome your comments and suggestions. You can email your comments to us at:


Contents Previous Next Index Development Kit User's Guide for the Binary Release with Cryptography Extensions
Java Card Platform, Version 2.2.1