<HTML ><HEAD ><TITLE >Programming</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.63 "><LINK REL="HOME" TITLE="Smart Card HOWTO" HREF="index.html"><LINK REL="PREVIOUS" TITLE="Operating Systems" HREF="operating-systems.html"><LINK REL="NEXT" TITLE="Applications on Linux" HREF="applications.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Smart Card HOWTO</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="operating-systems.html" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="applications.html" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="PROGRAMMING" >5. Programming</A ></H1 ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="CT-API" >5.1. CT-API</A ></H2 ><P > This API depends on the card terminal used, but supplies generic functions that allow communication with memory cards and processor cards. This API is a low level interface to the reader. But still used because it complies with the ISO7816 standards and have a simple programming logic resembling assembly. You just send code byes along with the data packets and receive the response. </P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="PCSC" >5.2. PC/SC</A ></H2 ><P > PC/SC Workgroup is responsible for the development of the PC/SC Specifications. Under Windows, MacOS and Linux corresponding APIs could be found. Under Linux, pcsc-lite suit could be downloaded from <A HREF="http://www.linuxnet.com/" TARGET="_top" >http://www.linuxnet.com</A >. </P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="OPENCARD" >5.3. OpenCard</A ></H2 ><P > OpenCard Framework, OCF, is an object-oriented framework for smart card communications. OCF uses Java's inter-operability between environments to deploy architecture and APIs for application developers and service providers. </P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="GLOBALPLATFORM" >5.4. GlobalPlatform</A ></H2 ><P >GlobalPlatform was formed in 1999 by organizations those were interested in issuing multiple application smart cards. The major goal of GlobalPlatform is to define the specifications and infrastructure for multi-application smart cards. </P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="TOSUMUP" >5.5. To Sum Up</A ></H2 ><P > As you could understand from above, the standardization period of smart cards is not finished. The demand on smart cards is growing on the basis of end-user and developer. In my opinion, if you are a developer or in a decision making position, you should carefully analyse all the standards as well as the companies manufacturing smart cards. As a developers point of view, in the near future I think, Java will evaluate itself as the standard because of portability and cross-platform uses in spite of its slowness and fast evolution. </P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="operating-systems.html" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="applications.html" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Operating Systems</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Applications on Linux</TD ></TR ></TABLE ></DIV ></BODY ></HTML >