Preface

This book provides a specification of the runtime environment (RE) for the Java Cardtrademark Platform, Version 3.0.1, Connected Edition. The Connected RE differs from the RE available in the Classic Edition of the Java Card Platform, Version 3.0.1. In this book, “Java Card RE” is used to refer to the RE in the Connected Edition. Furthermore, in this book “Java Card 3 Platform” refers to both versions 3.0 and 3.0.1 to distinguish them from all earlier versions.

This book is targeted for the Connected Edition. The Java Card 3 Platform consists of two editions.

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", “NOT RECOMMENDED”, "MAY", and "OPTIONAL" when used in uppercase in this specification are to be interpreted as follows:


Overview of New Features

In the Java Card 3 Platform, Connected Edition, a new virtual machine and a new runtime environment were introduced that support three application models, as opposed to the single application model supported by the Classic Edition and previous releases of the Java Card platform.

For a more detailed introduction to the three application models, see Chapter 2.

In this book, all the chapters and the appendix apply to classic applets, except Chapter 3. However, more information specific solely to classic applets can be found in the classic runtime environment specification, Runtime Environment Specification for the Java Card Platform, v3.0.1, Classic Edition.

In this book, all the chapters and the appendix apply to extended applets, except Chapter 3.

In this book, all the chapters and the appendix apply to web applications, except Chapter 4. However, more information specific to servlets can be found in Java Servlet Specification for the Java Card Platform, v3.0.1, Connected Edition.


Before You Read This Specification

To fully use the information in this document, you must have thorough knowledge of the topics discussed in these documents:

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

http://java.sun.com

You should also be familiar with the Java Card technology website at

http://java.sun.com/products/javacard/


How This Specification Is Organized

Chapter 1, “Architecture Overview” describes the architecture of the Java Card 3 Platform, Connected Edition.

Chapter 2, “Application Programming Models” briefly describes the three application models.

Chapter 3, “Web Application Environment” describes the web application environment in more depth.

Chapter 4, “APDU-based Application Environment” describes the two APDU-based applet application environments in more depth.

Chapter 5, “Card Initialization and Power-up” describes card initialization and start-up.

Chapter 6, “Security and Access Control Mechanisms” describes security and access control mechanisms.

Chapter 7, “Inter-application Communication” describes inter-application communication.

Chapter 8, “Card Management” describes the card manager application and the card management facility.

Chapter 9, “File System” describes the file system which may, optionally, be supported.

Appendix A, “Default Platform Security Policy” lists the permissions for the default platform security policy.

Appendix B, “Security Annotations” describes the optional annotations that can be added to applications to make them more secure.

Glossary provides definitions of selected terms used in the entire Connected Edition.


Using UNIX Commands

This document might not contain information about basic UNIX® commands and procedures such as shutting down the system, booting the system, and configuring devices. Refer to the following for this information:


Shell Prompts


Shell

Prompt

C shell

machine-name%

C shell superuser

machine-name#

Bourne shell and Korn shell

$

Bourne shell and Korn shell superuser

#



Typographic Conventions


Typeface[1]

Meaning

Examples

AaBbCc123

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.

AaBbCc123

What you type, when contrasted with on-screen computer output

% su

Password:

AaBbCc123

Book titles, new words or terms, words to be emphasized. Replace command-line variables with real names or values.

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.



Related Documentation

The following documents might be of interest.


Documentation, Support, and Training


Sun Function

URL

Documentation

http://www.sun.com/documentation/

Support

http://www.sun.com/support/

Training

http://www.sun.com/training/



Third-Party Web Sites

Sun is not responsible for the availability of third-party web sites mentioned in this document. Sun does not endorse and is not responsible or liable for any content, advertising, products, or other materials that are available on or through such sites or resources. Sun will not be responsible or liable for any actual or alleged damage or loss caused by or in connection with the use of or reliance on any such content, goods, or services that are available on or through such sites or resources.


Sun Welcomes Your Comments

Sun Microsystems is interested in improving its documentation and welcomes your comments and suggestions. You can submit your comments to

jc-bandol-spec-feedback@sun.com

Please include the title of your document with your feedback:

Runtime Environment Specification, Java Card Platform, v3.0.1, Connected Edition.


1 (TableFootnote) The settings on your browser might differ from these settings.