Previous Table of Contents Next


Nevertheless, the real situation today is that your application may have to be aware of the smart card reader with which it is communicating. What is worse is that there are smart card readers on the market that only handle particular cards. Unless you have a compelling reason to do so, you should avoid reader-specific SDKs and APIs and use general-purpose smart card access interfaces such as PC/SC (see Table 6.4).

Table 6.4. Smart card reader interfaces.
Product Company Telephone WWW Email

ACR Reader AND +31 10 4367100 www.and.nl marissa@and.nl
ACR20 Advanced Card
Systems
+852 279-54877 www.acs.com.hk info@acs.com.hk
ASESoft Aladdin
Knowledge
Systems
+972 3 636 2222 www.aks.com sales@aks.com
E-Key Readers ADC
Technologies
+65 743 8088 www.adc.com.sg msg@adc.com.sg
G80-1500
Keyboard
Cherry
Electrical
Products
+1 847 662-9200 www.cherrycorpwebmaster.com @cherrycorp.com
SmarTLP Bull CP8 www.cp8.bull.net
Smart Card
Reader Library
Protekila +90 212261 01 63 www.protekila.com.tr info@protekila.com.tr
SmartOS SCM
Microsystems
+1 408 370-4888 www.scmmicro.com adapt@scmmicro.com
SmartPort Tritheim
Technologies
+1 813 943-8684 www.tritheim.com tech@tritheim.com
SwapSmart SDK SCM
Microsystems
+1 408 370-4888 www.scmmicro.com adapt@scmmicro.com
Value
Checker Plus
OKI +1 508 460-8621 www.oap.oki.com digitalmoney@oki.com

The APIs described in the following sections give a sense of how your application program views a reader and a card combination, and how various vendors have dealt with the problem of having two active elements—the reader and the card—at the other end of the communication line.

Aladdin ASESoft Microprocessor APIs

The Aladdin reader can handle ISO 7816 microprocessor cards as well as I2C memory cards, both protected and unprotected. The Aladdin Smartcard Environment (ASE) development kit, ASESoft, provides two APIs to microprocessor cards in a number of different languages including BASIC, Pascal, and C. The first API supports file and password manipulation functions, but only for Aladdin’s CC1, CP1, and CG2 microprocessor cards. The second simply passes APDUs to and catches APDUs from any ISO 7816 card.

The functions on the file and password interface are

ASE_DRVInit
Initializes the Aladdin reader
ASE_CardOn
Turns power on the card and returns its type
ASE_CardOff
Takes power off the card
ASE_GetVersion
Returns the current version of the library and the reader
ASE_FileCreate
Creates a file
ASE_FileInit
Fills a newly created file with nulls
ASE_FileWrite
Writes contents of a buffer into a file
ASE_FileRead
Reads from file into a buffer
ASE_PassCreate
Sets a key value and the associated number of attempts value
ASE_PassChange
Changes a key value
ASE_PassPresent
Presents a key value to the card

The 7816 interface works with any 7816 card. The functions on this simpler API are

ASE_DRVInit
Initializes the Aladdin reader
ASE_7816CardOn
Turns power on the card and returns the card type
ASE_7816CardOff
Takes power off the card
ASE_GetVersion
Returns the current version of the library and the reader
ASE_7816Send
Sends a command APDU to the card
ASE_7816Receive
Retrieves a response APDU from the card

The Aladdin SDK comes with four modest card editor utilities for memory and microprocessor cards. These let you examine and alter the contents of these cards.


Previous Table of Contents Next