How a Smart Card Reader Works
Smart Card Readers are also known as card programmers (because they can write to a card), card terminals, card acceptance device (CAD), or an interface device (IFD). There is a slight difference between the card reader and the terminal. The term ‘reader’ is generally used to describe a unit that interfaces with a PC for the majority of its processing requirements. In contrast, a ‘terminal’ is a self-contained processing device.
Smart cards are portable data cards that must communicate with another device to gain access to a display device or a network. Cards can be plugged into a reader commonly referred to as a card terminal, or they can operate with radio frequencies (RF).
When the smart card and the card reader come in contact, each identifies itself to the other by sending and receiving information. If the messages exchanged do not match, no further processing takes place. So, unlike ordinary bank cards, smart cards can defend themselves against unauthorized users and uses in innovative security measures.
Communicating with a Smart Card Reader
The reader provides a path for an application to send and receive commands from the card. There are many types of readers available, such as serial, PCCard, and standard keyboard models. Unfortunately, the ISO group was unable to provide a standard for communicating with the readers so there is no “one size fits all” approach to smart card communication.
Each manufacturer provides a different protocol for communication with the reader.
- First, users have to communicate with the reader.
- Second, the reader communicates with the card, acting as the intermediary before sending the data to the card.
- Third, communication with a smart card is based on the APDU format. The card will process the data and return it to the reader, which will then return the data to its originating source.
The following classes are used for communicating with the reader:
- ISO command classes for communicating with 7816 protocol
- Classes for communicating with the reader
- Classes for converting data to a manufacturer-specific format
- An application for testing and using the cards for an intended and specific purpose
Readers come in many forms, factors, and capabilities. The easiest way to describe a reader is by the method of its interface to a PC. Smart card readers are available that interface to RS232 serial ports, USB ports, PCMCIA slots, floppy disk slots, parallel ports, infrared IRDA ports, and keyboards and keyboard wedge readers. Card readers read data from and write data to the smart card. Readers can easily be integrated into a PC utilizing Windows 98/Me, 2000, or XP platforms. However, some computer systems already come equipped with a built-in smart card reader. Some card readers come with advanced security features such as secure PIN entry, secure display and an integrated fingerprint scanners for the next-generation of multi-layer security, and three-factor authentication.
Another difference in reader types is on-board intelligence and capabilities. An extensive price and performance difference exists between an industrial strength reader that supports a wide variety of card protocols and the less expensive win-card reader that only works with microprocessor cards and performs all data processing in the PC.
The options in terminal choices are just as varied. Most units have their own operating systems and development tools. They typically support other functions such as magnetic-stripe reading, modem functions and transaction printing.
To process a smart card, the computer has to be equipped with a smart card reader possessing the following mandatory features:
- Smart Card Interface Standard – ISO 7816 is an international standard that describes the interface requirements for contact-type smart cards. These standards have multiple parts. For instance, part 1, 2, and 3 are applicable to card readers. Part 1 defines the card’s physical characteristics. Part 2 defines the dimension and location of smart card chip contacts. Part 3 defines the card’s electronic signals and transmission protocols. Card readers may be referred to as conforming to ISO 7816 1/2/3, or in its simplified term, ISO 7816.
- Driver – This refers to the software that a PC’s operating system (OS) uses for managing a smart card and applicable card reader. To read a smart ID card, the driver of the card reader must be PC/SC compliant, which most card reader products currently available support. It should be noted that different OS would require different drivers. In acquiring card readers, the compatibility between the driver and the OS has to be determined and ensured.
Desirable Features in a Smart Card Reader
Card Contact Types refers to how the contact between a card reader and a smart card is physically made. There are two primary types of contact: landing contact and friction contact (also known as sliding or wiping). For card readers featuring friction contact, the contact part is fixed. The contact wipes on the card surface and the chip when a card is inserted. For card readers featuring the landing type, the contact part is movable. The contact “lands” on the chip after a card is wholly inserted. In general, card readers of the landing type provide better protection to the card than that of the friction type.
Smart card readers are also used as smart card programmers to configure and personalize integrated circuit cards. These programmers not only read data, but also put data into the card memory. This means that not only CPU based smart cards, but also simple memory cards can be programmed using a smart card reader. Of course the card reader must support the appropriate protocol such as the asynchronous T=0, T=1 or synchronous I2C protocols.
It will not take long before smart card readers become an integral part of every computer, and, subsequently, of computer users’ lives. Computer systems with keyboards that have smart card reader/writer integration are also available.
Smart card readers are also accessible as a USB dongle. USB dongles are frequently used with GSM phones, which contain a SIM smart card. Additionally, phone numbers can be edited on a PC using the USB smart card dongle.