OpenCard Framework

The OpenCard Framework (OCF) is a smart card middleware implemented in Java. The framework allows a smart card aware application to access contact and contactless cards that implement commands using Application Protocol Data Units (APDUs) as defined by ISO/IEC 7816-4, -8 and -9.

The OpenCard Framework was orginally 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 transfered the a project on SourceForge, but never actively maintained.

A number of projects are still using OCF, including the OpenSCDP project.

The version of OCF maintained by the OpenSCDP projects is based on the last version of the reference implementation. It contains some bug-fixes and minor modifications to the original code and a generic card service to access smart cards with an ISO 7816-4 file system. Such a generic service was missing from the original code and rendered it pretty much useless for any serious application.

This distribution of OCF contains the base-core, base-opt and pcsc components, but does not include the reference implementation for the IBM MFC and special Gemplus terminals. It includes support for card readers using the CT-API interface.

If you are new to OCF, then a suggested starting point is the programmer's guide.