Abstract
Java Cards support a Java virtual machine that interprets code written in a subset of Java language. This may help programmers with prior knowledge of Java language to program smart cards. However, the programming paradigm of Java Card can be articulated as somewhat different than traditional Java programming. In this chapter, we will provide an introduction to smart card programming using Java Card and the subtleties of a restricted environment on application design.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
CAP: The Java Card Converted APplet (CAP) is an Java Card interoperable file format used to deploy an application on smart cards.
- 2.
GlobalPlatform: The GlobalPlatform specification provides a secure, reliable and interoperable application management framework for a multi-application smart cards.
- 3.
Capgen: It is part of the Java Card development kit and used to produce CAP files from class files.
References
Multos: The Multos Specification. http://www.multos.com/
NSA Suite B Cryptography. http://www.nsa.gov/ia/programs/suiteb_cryptography/index.shtml
ISO/IEC 7816–4, Identification cards - Integrated circuit cards - Part 4: Organization, security adn commands for interchange, (2005). http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=36134
GlobalPlatform: GlobalPlatform Card Specification, Version 2.2, (2006). http://www.globalplatform.org/specificationscard.asp
Java Card Platform Specification; Application Programming Interface, Runtime Environment Specification, Virtual Machine Specification, (2006). http://java.sun.com/javacard/specs.html
EMV 4.2: Book 1 - Application Independent ICC to Terminal Interface Requirements, Book 2 - Security and Key Management, Book 3 - Application Specification, Book 4 - Cardholder, Attendant, and Acquirer Interface Requirements, (2008). http://www.emvco.com/specifications.aspx?id=155
ISO/IEC 14443: Identification Cards - Contactless Integrated Circuit(s) Cards - Proximity Cards, Part1: Physical Characteristics, Part 2: Radio Frequency Power and Signal Interface, Part3: Initialization and Anticollision, Part 4: Transmission Protocol, (2008). http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=28728
Java Card Platform Specification: Classic Edition; Application Programming Interface, Runtime Environment Specification, Virtual Machine Specification, Connected Edition; Runtime Environment Specification, Java Servlet Specification, Application Programming Interface, Virtual Machine Specification, Sample Structure of Application Modules, (2009). http://java.sun.com/javacard/3.0.1/specs.jsp
BasicCard (Visited June, 2010). http://basiccard.com/
Akram, R.N., Markantonakis, K., Mayes, K.: Firewall Mechanism in a User Centric Smart Card Ownership Model. In: D. Gollmann, J.L. Lanet, J. Iguchi-Cartigny (eds.) Smart Card Research and Advanced Application, 9th IFIP WG 8.8/11.2 International Conference, CARDIS 2010, vol. 6035/2010, pp. 118–132. Springer, Passau, Germany (2010). DOI http://dx.doi.org/10.1007/978-3-642-12510-2
Royal Holloway, University of London. Smart Card Centre website. http://www.scc.rhul.ac.uk/books/ssed/embedded/chapter_22.
Rankl, W.: Smart Card Applications: Design Models for Using and Programming Smart Cards. Wiley (2007)
Rankl, W., Effing, W.: Smart Card Handbook. John Wiley & Sons, Inc., New York, NY, USA (2003)
Acknowledgments
The authors want to thank the reviewers for their constructive comments which were helpful to improve this chapter.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media New York
About this chapter
Cite this chapter
Akram, R.N., Markantonakis, K., Mayes, K. (2014). An Introduction to Java Card Programming. In: Markantonakis, K., Mayes, K. (eds) Secure Smart Embedded Devices, Platforms and Applications. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-7915-4_22
Download citation
DOI: https://doi.org/10.1007/978-1-4614-7915-4_22
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-7914-7
Online ISBN: 978-1-4614-7915-4
eBook Packages: Computer ScienceComputer Science (R0)