Implementing the EMV 2000 Standard with Java Card

J. Rosenkranz (Austria) and S. Ramakrishnan (USA)


Security, ATM cards, Card processing, Java CardTM


Software for ATMs and self-service terminals have to handle a number of what-if scenarios. If a customer inserts a wrong or damaged or even manipulated card, the software must detect the problem and resolve by, for example, rejecting the card. The paper takes an application provider's viewpoint and is concerned with the development of applications that run on the card. Our application is a Java applet that is built using the Java CardTM API. Java CardTM allows applets written in Java to be downloaded onto a smart card. The applet confirms to EMV 2000 which is a standard for ATM cards. EMV 2000 is widely used in Europe and was developed jointly by EuroPayTM, MastercardTM and VisaTM. We provide an overview of the technologies needed, hardware integration details and a test run of the applet. We hope that our project life cycle experiences, design ideas, and test suite will be of substantial use to others who may be involved in projects such as ours. Or approach provides an attractive and cost effective environment for testing applications that can be downloaded onto smart cards.

Important Links:

Go Back