The Security and Trust Services API for J2ME defines four optional packages to support smart card communication, generation of digital signatures, and low-level cryptography operations.

Generic Connection Framework

The smart card communication API is based on the Generic Connection Framework in the javax.microedition.io package. Two smart card connection interfaces are defined for establishing a connection with a smart card. The APDUConnection interface is used to communicate with ISO7816-4 compliant smart cards. The JavaCardRMIConnection interface is used to initiate a JCRMI session. These connections are defined in the javax.microedition.apdu and javax.microedition.jcrmi packages respectively.

SATSA-APDU Optional Package

The optional package SATSA-APDU includes two components to support communication with ISO7816-4 compliant smart cards using the APDU protocol.

SATSA-JCRMI Optional Package

The optional package SASTA-JCRMI includes four components to provide a Java Card RMI client API:

SATSA-PKI Optional Package

The optional package SATSA-PKI includes two components to provide generation of digital signatures and basic user credential management (for example, an X.509 certificate is a user credential that includes a public key).

SATSA-CRYPTO Optional Package

The optional package SATSA-CRYPTO is a subset of the Java 2 platform, Standard Edition (J2SE) Cryptography API. When this optional package is implemented on a CDC/FP based platform that already supports some of the classes in this optional package, the whole API is the union of the API in the CDC/FP and the API in the SATSA-CRYPTO optional package.