Java Card is an open standard from Sun Microsystems for a smart card development platform. Smart cards created using the Java Card platform have Java applets stored on them. The applets can be added to or changed after the card is issued.
There are two basic types of smart cards. The memory smart card is the familiar removable memory device; it usually features read and write capabilities and perhaps security features. The more complex version, the processor smart card, is a very small and extremely portable computing device that could be carried in your wallet. Java-based smart cards belong to the latter category. They store data on an integrated microprocessor chip. Applets are loaded into the memory of the microprocessor and run by the Java Virtual Machine. Similarly to MULTOS, another smart card development technology, Java Card enables multiple application programs to be installed and coexist independently. Individual applets are protected by a firewall to preserve their integrity and prevent tampering. Applications can be updated dynamically.
In the United States, the Department of Defense, Visa, and American Express are among the organizations creating Java Card-based applications.