Java Card 3.0 Platform Specification

  

The latest version of the Java Card Platform Specification is available for download.

Java Card technology is the leading open, interoperable platform that enables smart cards and other resource-constrained devices to securely run Java technology-based applications. Java Card 3.0 Specification continues the traditional cross-platform and cross-vendor applet interoperability that existed in the Java Card 2.2.2 platform. Additionally, it adds the revolutionary functionality of multiple communication interfaces, each capable of running with independent co-resident applications.

The Java Card Platform, v3.0, consists of two editions:

Classic Edition

The Classic Edition is based on an evolution of the Java Card Platform, Version 2.2.2 and targets resource-constrained devices that support applet-based applications. Bug fixes and clarifications against the Java Card v2.2.2 specifications and new security algorithms have been added, while backwards compatibility is maintained. Specification documents include:

  • Virtual Machine Specification for the Java Card Platform, Classic Edition provides the instruction set of the Java Card Virtual Machine (VM), the supported subset of the Java language, and the file formats used to install applets and libraries into Java Card technology-enabled devices. This VM mirrors those VMs found in previous releases of the Java Card platform, including v2.2.2.

     
  • Runtime Environment Specification for the Java Card Platform, Classic Edition defines the necessary behavior of the runtime environment (RE) in any implementation of the Java Card technology. The RE includes the implementation of the Java Card Virtual Machine, the Java Card API classes, and runtime support services such as the selection and deselection of applets. This RE mirrors those REs found in previous releases of the Java Card platform, including v2.2.2.

     
  • Application Programming Interface for the Java Card Platform, Classic Edition complements the Java Card RE Specification, and describes the application programming interface of the Java Card technology. It contains the class definitions required to support the Java Card VM and the Java Card. This API mirrors those APIs found in previous releases of the Java Card platform, including v2.2.2.
Connected Edition

The Connected Edition features a significantly enhanced runtime environment and a new virtual machine. It targets less resource-constrained devices and includes new network-oriented features, such as support for web applications -- including the Java Servlet APIs-- as well as support for applets with extended and advanced capabilities. An application written for or an implementation of the Connected Edition may use features found in the Classic Edition, and as with the Classic Edition, full backwards compatibility is maintained. Specification documents include:

  • Runtime Environment Specification for the Java Card Platform, Connected Edition describes the runtime environment required for interoperable execution of Java Card technology-based servlets and applets with extended/advanced capabilities.

     
  • Java Servlet Specification for the Java Card Platform, Connected Edition describes the requirements for interoperable Java Card technology-based servlet execution.

     
  • Application Programming Interface for the Java Card Platform, Connected Edition defines a set of classes upon which Java Card technology-based servlets and applets with extended/advanced capabilities can be constructed.

     
  • Virtual Machine Specification for the Java Card Platform, Connected Edition describes the new virtual machine for the Connected Edition of the Java Card Platform.

     
  • Sample Structure of Application Modules, Connected Edition shows the sample structure of the distribution format and the use and syntax of the application descriptors.

Download the Java Card 3.0 Platform Specification   Download

For a more complete list of enhancements, please refer to the Release Notes.

For a list of all high priority errata for the specifications and other documents included in the specification bundle, please refer to the Specification Errata.