A Practical Example of Mobile Phone Application Using SATSA (JSR 177) API

  • Lishoy FrancisEmail author


SIM as a security token is increasingly being used to secure mobile phone applications. Sensitive information such as PIN, security keys, etc are stored on the SIM card. To utilise the SIM functionalities, it is imperative that mobile phone applications interact with applets available on the SIM. The security features for mobile applications operating within the J2ME ecosystem are provisioned by SATSA API Framework. It allows support for cryptography, digital signatures, user credential management, communication with a smart card, and remote method invocation. The SATSA APDU Communication API provides support for mobile phone applications to interact with Java Card applets residing on a smart card, over the ISO7816 interface. This chapter provides a practical example of a mobile phone application implementing SATSA API. A MIDP 2.0 application or MIDlet that utilises the APDU package within SATSA API and a Java Card applet were developed. The MIDlet and applet were tested to work with each other on a PC-based development environment. The MIDlet was tested on Wireless Toolkit Emulator and the Java Card applet was tested on Java Card Platform Simulator. Freely available tools were used to create the above mentioned practical demonstrators.


Application Protocol Data Unit (APDU) MIDlet Java Card Mobile Information Device Profile (MIDP) Wireless Toolkit (WTK) 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Java Platform Micro Edition (Java ME).
  2. 2.
    JSR-000118 Mobile Information Device Profile 2.0.
  3. 3.
    JSR 177 Experts Group. Security and Trust Services API (SATSA) v2.1 for J2ME.
  4. 4.
    Third Generation Partnership Project (3GPP). Specification of the Subscriber Identity Module-Mobile Equipment (SIM-ME) interface (Release 1999). TS 11.11 V8.14.0 (2007–06).
  5. 5.
    Oracle/Sun Microsystems. Java Card Platform Specification v2.2.1.
  6. 6.
    International Organization for Standardization. ISO/IEC 7816 parts 1–15. 2005.
  7. 7.
    GlobalPlatform. Card Specification v2.2.
  8. 8.
    Z. Chen. Java Card Technology for Smart Cards: Architecture and Programmer’s Guide. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA., 2000.Google Scholar
  9. 9.
    Eclipse Open Source Community.
  10. 10.
  11. 11.
    T. Lindholm and F. Yellin. The Java Virtual Machine Specification, Second Edition.
  12. 12.
    B. W. Kernighan and D. M. Ritchie. The C programming Language. Prentice Hall, 1988.Google Scholar
  13. 13.
    Royal Holloway, University of London. Smart Card Centre website.

Copyright information

© Springer Science+Business Media New York 2014

Authors and Affiliations

  1. 1.Information Security Group, Smart Card Centre, Royal HollowayUniversity of LondonLondonUK

Personalised recommendations