OpenCard Framework
Encyclopedia
OpenCard Framework provides a Java
API
to access both to smart card readers and to the applications embedded on the smart card
s.
The OpenCard Framework was originally defined by the OpenCard Consortium, but mainly driven by IBM
and Gemplus. The work ended with version 1.2 of the specification and a reference implementation by IBM. The consortium split up and left the OpenCard Framework in a dormant state. The website was still available until 2007 and is now shut down. The original code was transferred the a project on SourceForge
, but never actively maintained.
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
to access both to smart card readers and to the applications embedded on the smart card
Smart card
A smart card, chip card, or integrated circuit card , is any pocket-sized card with embedded integrated circuits. A smart card or microprocessor cards contain volatile memory and microprocessor components. The card is made of plastic, generally polyvinyl chloride, but sometimes acrylonitrile...
s.
The OpenCard Framework was originally defined by the OpenCard Consortium, but mainly driven by IBM
IBM
International Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
and Gemplus. The work ended with version 1.2 of the specification and a reference implementation by IBM. The consortium split up and left the OpenCard Framework in a dormant state. The website was still available until 2007 and is now shut down. The original code was transferred the a project on SourceForge
SourceForge
SourceForge Enterprise Edition is a collaborative revision control and software development management system. It provides a front-end to a range of software development lifecycle services and integrates with a number of free software / open source software applications .While originally itself...
, but never actively maintained.
Architecture
- CardTerminals are smart card reader driversDevice driverIn computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device....
. They can be native (.so, .dll) using JNIJava Native InterfaceThe Java Native Interface is a programming framework that enables Java code running in a Java Virtual Machine to call and to be called by native applications and libraries written in other languages such as C, C++ and assembly.-Purpose and features:JNI enables one to write native methods to...
or they can use the javax.comm or gnu.io API. The distribution provides a bridge with PC/SCPC/SCPC/SC is a specification for smart-card integration into computing environments.Microsoft has implemented PC/SC in Microsoft Windows 200x/XP and makes it available under Microsoft Windows NT/9x....
drivers. - CardServices are high-level interfaces to the applications hiding the ISO/IEC 7816-3 and -4 complexity. Available CardServices are : PassThruCardService, MFCFileAccess, BasicEMVAppletAccess, VOPCardService, ...
Books
- Uwe Hansmann, Martin S. Nicklous, Thomas Schäck, Frank Seliger, Smart Card Application Development Using Java, Ed Springer, 2000, ISBN 3-540-65829-7
See also
- Open Smart Card Development Platform
- Personal Computer/Smart Card (PC/SC)PC/SCPC/SC is a specification for smart-card integration into computing environments.Microsoft has implemented PC/SC in Microsoft Windows 200x/XP and makes it available under Microsoft Windows NT/9x....