[an error occurred while processing this directive] IBM Research - Zurich | News

Fact sheet on IBM's JavaCard™/OpenPlatform smart card operating system

JavaCard™ and OpenPlatform

Top story

JavaCard™ is the specification for Java™ and appropriate APIs tuned for executing applets on a smart card. OpenPlatform is the specification for securely loading applets onto a multi-application smart card like a JavaCard™. The latest JavaCard™ specification has been issued by Sun Microsystems in Spring 2000 as release 2.1.1; the most recent OpenPlatform specification issued by the GlobalPlatform consortium is 2.0.1, with refinements from Visa International, dated Summer 2000.

IBM's JC/OP implementation

Based on IBM's previous experiences in JavaCard™ and OpenPlatform development, the availability of the final OpenPlatform and JavaCard™ specifications in 2000 led to the development of a new, standards-compliant IBM JC/OP operating system on a Philips P8WE smart card micro controller. All objectives on the business side (full specifications compliance at a reasonable price) as well as on the technical side—best performance, least JavaCard™ virtual machine size in ROM—have been fully met. As this mask is the foundation on which further JC/OP cards with increasing functionality and number of applications in ROM will be created, it got the development name "JCOP01". IBM will not create a card under this name, but the operating system software is generally available for licensing to any interested smart card manufacturer, card embedder, or card issuer from IBM Research - Zurich.

More detailed technical information is available on our JavaCard™ Web pages.

JCOP01 technical capabilities

The following standards are implemented by JCOP01:

  • JavaCard™ 2.1.1, March 2000.
  • OpenPlatform 2.0.1', April 2000 with the refinements specified in Visa OpenPlatform (VOP) compact 2.1.1, August 2000.
  • ISO 7816, parts 3 & 4 for T=0 and T=1 with refinements as specified in EMV'96: maximum communication speed of JCOP01 is 115,000 bit/s, ensuring the ability to efficiently mass-produce cards based on JCOP01.

Besides the OP CardManager, the ROM mask also contains the following applications:

  • Visa Smart Debit/Credit (VSDC), version 2.0.
  • VisaCash, version 1.6.1.
  • Payment System Environment (PSE) for OpenPlatform.

In addition, the card provides a full 15 KB of EEPROM for application data or further, post-issuance loaded applications. When configured and operational as a VOP, PSE, VSDC, and VisaCash card all at once, 13 KB of EEPROM remain unused and free for use by further, post-issuance loaded applications.

Features of the chip hardware used for JCOP01:

  • Intel 8051-based, 8-bit CPU,
  • 48 KB of ROM,
  • 16 KB of EEPROM,
  • 1.3 KB of RAM.

In order to provide benchmark figures for the performance of JCOP01, VisaCash has been selected as a typical, transaction-oriented application exercising all pieces of the Java runtime, as well as the smart card transaction and cryptography subsystems:

  • Time to SELECT VisaCash: 15.2 ms.
  • Time to execute a full PURCHASE (debit) transaction: 162.7 ms.
  • Time to execute a full LOAD (credit) transaction: 153.6 ms.

These performance figures are the result of sound engineering and long experience with writing both Java as well as embedded systems code, without neglecting critical security features: JCOP in all aspects fulfills the security procedures built into the JavaCard™ and OpenPlatform specifications, in some cases even exceeding them: the JavaCard™ firewall is fully implemented, thus ensuring total separation of applications from one another; the use of cryptographic keys is state-of-the-art, also making use of the DES coprocessor built into the Philips smart card hardware; all OpenPlatform security mechanisms (secure messaging, life cycle handling, etc.) are fully implemented.

Future developments

JCOP01 is the first generally available operating system for a family of fully standards-compliant, high-performance, affordable JavaCard™/OpenPlatform cards. It is evolving to include full public key cryptography (RSA, DSA, on-card key generation), complete support for even the most advanced configurations of OpenPlatform, e.g., support for SecurityDomains, Delegated Management, and DAP verification. Further work on the use of contactless technology for JCOP is also well under way.

Currently, JCOP01 is running on Philips' P8WE microcontrollers, but will eventually be ported to other smart card chip providers' products to ensure the openness and multi-sourcing capabilities marking the cornerstone of the success of OpenPlatform JavaCards™.

Contact information

For licensing inquiries, please contact: 
Michael Baentsch, Tel. +41 1 724 8620.

™Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.

IBM is a registered trademark of IBM Corp.

Press contact

Nicole Strachowski
Media Relations
IBM Research - Zurich
Tel +41 44 724 84 45

[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]