provided by: 
Originally published at Internet.comTo begin, I would like to offer some background on smart cards, for which Sun Microsystems introduced its Java Card technology. This advance has made it easier for high-level programmers to start writing code even for smart cards that were restricted to a machine-level specific language. And with this convenience and ease, I am sure there will be more ideas and applications to come to market to really take us into the Twenty-first century.
Overview of Smart Cards
Smart cards are also called chip cards or integrated circuit cards. The integrated circuit is incorporated in the credit-card-size plastic substrate. The integrated circuit performs the logic of manipulating or processing the data.
Basic Card Types
* Memory cards: They are embedded with a memory chip to store small amounts of data. They do not have a processor to provide intelligence. The simple data processing is done by burned programmed logic and circuitry logic, which has obviously restricted functionalities. * Microprocessor cards: They come with a processor. * Contact cards: Card must be inserted in some device to communicate. * Contactless cards: These types of cards don't need a CAD. They communicate using electromagnetic fields.
Smart Card Communication Model
Smart Cards are inserted into a CAD (Card Acceptance Device). The CAD is connected to some computer, where the applications that reside are known as host applications. These communicate with the applet downloaded or masked in cards. The host application sends commands to the applets in the smart cards. These commands are known as Command APDUs (Application Protocol Data Unit). The applet in the smart card responds by sending response APDUs.
Command APDU Structure
Mandatory Header Optional Body CLA INS P1 P2 Lc Data field Le
Response APDU Structure
Optional Body Mandatory Trailer Data Field SW1 SW2
Java Card Technology
Java Card technology provides the smallest Java platform for memory-constrained devices such as smart cards.
Basics of the Java Card
A Java Card means a smart card that is enabled to work with Java Card Technology.
Author: Arsalan K. Lodhi
Read article at Internet.com site