Prerequisites for OpenCard Components
This page is intended for developers that are not using the
CardTable platform. If you want to
use the OpenCard components you can either:
- download and install the CardTable platform
(soon to be released) that includes all necessary software to work
with Smart Cards (including Java), or
- download and install necessary software layers: see below.
|
Required Platform
The CardServices components are a part of a Java framework named
OpenCard Framework which goal is
to provide high level components for applications that
make use of smart cards.
In order to be able to use them, a number of other software
packages have to be previously downloaded and installed.
The next sections describe the architecture of an
OpenCard-based application and explains how to set-up
the mandatory software platform.
|
Architecture
First, we describe how a Java application can access smart cards
through layers of software, the workstation Parallel/Serial ports
(using the "Comm API").
Then, a section provides URLs for the necessary distributions,
environment setting up information, and at last indications
are given on how to perform some tests to check that everything
is working ok (it is then advised to have a SIM card available,
otherwise any ISO7816-3 compliant card will allow to at least
run the OpenCard ATR printing test).
The Fig 1. picture below summarizes how a Java application
(here "Login") can use a pure Java way to communicate with
a smartcard.
We can distinguish the following software layers, starting from
the application:
- the Application, (e.g., "Login.java")
- the OpenCard Framework,
- a CardService dedicated to the currently used smart card,
(e.g., here GPK CardService),
- a pure-java CardTerminal driver, (e.g., the Gemplus CardTerminal
for GemPC410, GemSelf500, GemSelf700...),
- the Comm API and its implementation on a given OS, and
- low-level serial/parallel I/O communications routines
from the OS (Note: in Linux, the RXTX library is required).
|
|
Fig 1: An OpenCard-based application. |
Note that non-pure Java CardTerminals can be used too, such as
wrappers to the PC/SC resource manager (see the PC/SC page in
the Gemplus Developers Technology section).
As a consequence of this architecture, a number of software
packages are required. The list is detailed below.
Required platform
Necessary components are:
- A JRE (i.e., Java
Runtime Environment)
or JDK (i.e., Java
Development Kit)
for your platform (version 1.2 or 1.3 is advised):
- for Solaris and Windows 95/98/NT, see the
Java Web Site for distributions,
- for Linux, see the
Blackdown Web Site,
- for other Operating Systems (e.g., Apple, AIX, HP-UX, IRIX,
OpenVMS, Tru64), see the Java Web Site
Java Platform Ports Home-Page.
- A Comm API implementation (Serial and Parallel
communication API for the JDK):
- for Solaris and Windows 95/98/NT, see the
Comm API Home-Page for distributions,
- for Linux, see the
RXTX web site.
- for AIX, see the
IBM web site for "AIX" JDK distribution.
- for OS/2 Warp, see the
IBM support web site.
- for other Operating Systems (e.g., Apple MacOS 9 and X, FreeBSD,
HP-UX, IRIX, True64, Netware5, Windows CE, and EPOC32), see the
Serialio.com Products Page.
- finally, the Opencard Framework
core and optional parts that can be easily downloaded and installed
from the official
Opencard Web Site.
- You may also find ready-to-use drivers for your
cards (or applets) and card readers. There is a list of
Supported Readers/Terminals at the Opencard Web Site
which is maintained by the
OpenCard Consortium.
Please contact the consortium whenever you find a driver that is not
on the list, or an URL that must be fixed.
Please post any comments,
suggestions, problem reports, or enhancements for this page to the Gemplus
Developer's Site Forum (in the topic named "OCF"),
or send an email to the
Developer's Webmaster who will dispatch your comment to
the right person.
|