Security and Trust Services APIs for Java(TM) 2, Micro Edition
Reference Implementation

Version 1.0

Introduction

This is a binary release of the Security and Trust Services APIs for Java(TM) 2, Micro Edition Reference Implementation (RI). It is based on the Security and Trust Services APIs (SATSA) 1.0 Specification (JSR-177). It contains the following four optional packages:

Software Platform

The SATSA 1.0 Reference Implementation is based upon the MIDP 2.0 Reference Implementation code base. The default platform for the SATSA 1.0 Reference Implementation is Windows 2000/x86.

The SATSA 1.0 Reference Implementation requires installation of the Java Card 2.2.1 Reference Implementation. For more information about downloading and installing the Java Card RI, see Chapter 2, "Installation," in the Java Card Platform, Version 2.2.1, Development Kit User's Guide, for the Binary Release with Cryptography Extensions manual. This document is available in the Java Card Platform Development Kit 2.2.1 Reference Implementation distribution.

Installing the SATSA 1.0 Reference Implementation

Instructions for installing the SATSA 1.0 Reference Implementation can be found in the Security and Trust Services APIs for Java 2 Platform, Micro Edition: Installation Guide.

Useful Information

The SATSA 1.0 Reference Implementation supports the following:

The WIM Application

The WIM application contains two keys for authentication and two for non-repudiation. All keys are RSA; key length is 512 bits. There are also three PIN objects:

Using the JCRMI Stub Compiler

The JCRMI Stub Compiler is run from the command line. The syntax is:

where options includes:

If the -compile command line option is used, the program invokes the Java(TM) language compiler to compile generated source files. After compilation, it deletes the source files. To keep generated source files, use the -keep option. The program uses the path to the Java language compiler specified in the system property JAVAC_PATH. For example:

Running the Java Card C Reference Implementation (CRef)

Since SATSA 1.0 only allows MIDlets to communicate with applets existing on a Java Card, the CRef that SATSA 1.0 is run against must have pre-installed and initialized applet instances.

For details on how to write, install, and initialize applets on a Java Card, see the Java Card User's Guide (included in the Java Card 2.2.1 Reference Implementation).

To run CRef with your own applets installed and initialized:

  1. Run CRef setting the option to store the EEPROM image in a file on the hard disk.

  2. Run the script that contains applet information and the commands to initialize your Java Card applets in CRef. This is done using APDUTool (bundled with the Java Card 2.2.1 Development Kit). This installs the applets and initializes them in CRef's EEPROM. When this is done, CRef will terminate.

  3. Run CRef and restore from the saved EEPROM image.

At this point, MIDlets running in the MIDP emulator should be able to communicate with Java Card applications running in CRef. To start the MIDP emulator, type:

CRef uses sockets to communicate with the APDUTool and the MIDP emulator. In order to run CRef on a port of your choice, use the following command (the default port is 9025):

To get help with other CRef command line options, type:


Please send comments and questions to satsa-comments@sun.com