Study of Java Card and its Application 1 Nainesh Rawani, 2 Akhil Patel



Similar documents
Smart Cards a(s) Safety Critical Systems

Java Card. Smartcards. Demos. . p.1/30

Performance Evaluation of Java Card Bytecodes

Relations entre XLIM Université de Limoges et ISG-SCC Royal Holloway, University of London

Java Card TM Open Platform for Smart Cards

JCAT. Java Card TM. An environment for attack and test on. Serge Chaumette, Iban Hatchondo, Damien Sauveron CCCT 03 & ISAS 03

Smart Card Application Development Using the Java Card Technology

Smart cards integration in Distributed Information Systems : the Interactive execution model

Introducing etoken. What is etoken?

An evaluation of the Java Card environment

Java Card Protection Profile Open Configuration

Loyalty Systems over Near Field Communication (NFC)

Smart Cards and their Operating Systems

JavaCard. Java Card - old vs new

Training. MIFARE4Mobile. Public. MobileKnowledge April 2015

A SECURITY ARCHITECTURE FOR AGENT-BASED MOBILE SYSTEMS. N. Borselius 1, N. Hur 1, M. Kaprynski 2 and C.J. Mitchell 1

The e-payment Systems

What is a Smart Card?

Smart Card Technology Capabilities

Smart Card. Smart Card applications

Chytré karty opět o rok dál...

Evaluating Elliptic Curve Cryptography for Use on Java Card

Building Applications Using Micro Focus COBOL

Java and Real Time Storage Applications

1. Overview of the Java Language

PICKPOCKETING MWALLETS. A guide to looting mobile financial services

ETSI TS V7.1.0 ( ) Technical Specification

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

3GPP TSG SA WG3 Security S3#30 S October 2003 Povoa de Varzim, Portugal. Abstract

SOSSE. Matthias Brüstle Simple Operating System for Smartcard Education. Kommunikationsnetz Franken e.v.

Smart Card APDU Analysis

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Java Embedded Applications

ETSI TS V9.0.0 ( ) Technical Specification

Mobile Operating Systems. Week I

Banking. Extending Value to Customers. KONA Banking product matrix. is leading the next generation of payment solutions.

CHAPTER 5 SMART CARD TECHNOLOGY

Page 1. Smart Card Applications. Lecture 7: Prof. Sead Muftic Matei Ciobanu Morogan. Lecture 7 : Lecture 7 : Smart Card Applications

ARIB STD-T V Contact Manager Application Programming Interface (API); Contact Manager API for Java Card (Release 10)

Smart Card Evolution

Display Message on Notice Board using GSM

JML-Based Formal Development of a Java Card Application for Managing Medical Appointments

Your Mobile Phone as a Ticket (NFC)

M-Shield mobile security technology

Smart Card Security Access Modules in VeriFone Omni 3350 Countertop and Omni 3600 Portable Terminals

GLOBAL PAYMENTS AND CASH MANAGEMENT. HSBCnet Application Guide August 2006

NIST Mobile Forensics Workshop and Webcast. Mobile Device Forensics: A Z

Synergis Software 18 South 5 TH Street, Suite 100 Quakertown, PA , version

Gemalto Mifare 1K Datasheet

Code Generation for High-Assurance Java Card Applets

The OpenEapSmartcard platform. Pr Pascal Urien ENST Paris

Application Compatibility Best Practices for Remote Desktop Services

Fachbereich Informatik und Elektrotechnik SunSPOT. Ubiquitous Computing. Ubiquitous Computing, Helmut Dispert

Microsoft Identity Lifecycle Manager & Gemalto.NET Solutions. Jan 23 rd, 2007

Embedded Software development Process and Tools: Lesson-3 Host and Target Machines

Tamanna Roy Rayat & Bahra Institute of Engineering & Technology, Punjab, India talk2tamanna@gmail.com

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

A Real Time, Object Oriented Fieldbus Management System

Mobile Electronic Payments

INTRODUCTION TO JAVA PROGRAMMING LANGUAGE

Mobile MasterCard PayPass Testing and Approval Guide. December Version 2.0

nanohub.org An Overview of Virtualization Techniques

esim for consumer devices MWC 2016 Telefonica S.A. Feb. 2016

Mobile application testing for the enterprise

NFC. Technical Overview. Release r05

Developing Embedded Software in Java Part 1: Technology and Architecture

Palaparthi.Jagadeesh Chand. Associate Professor in ECE Department, Nimra Institute of Science & Technology, Vijayawada, A.P.

advant advanced contactless smart card system

SMARTCARD SECURITY. Java Card Security. Marc Witteman. Introduction

Security & Chip Card ICs SLE 44R35S / Mifare

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Managing Scalability of Web services

Byte code Interpreter for 8051 Microcontroller

RVS Seminar Deployment and Performance Analysis of JavaCards in a Heterogenous Environment. Carolin Latze University of Berne

Token User Guide. Version 1.0/ July 2013

7a. System-on-chip design and prototyping platforms

System Requirements - Table of Contents

Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems

irods and Metadata survey Version 0.1 Date March Abhijeet Kodgire 25th

Dynamic Digital Depth (DDD) and Real-time 2D to 3D conversion on the ARM processor

Implementing Mobile Thin client Architecture For Enterprise Application

Oracle Applications Release 10.7 NCA Network Performance for the Enterprise. An Oracle White Paper January 1998

Validating Tools for Cell Phone Forensics

Supporting Smart Cards in UEFI

Hardware and Logic Implementation of Multiple Alarm System for GSM BTS Rooms

Synapse s SNAP Network Operating System

Finger Vein digital biometric signature: use cases

NFC Near Field Communication

2.0 Command and Data Handling Subsystem

Strong authentication of GUI sessions over Dedicated Links. ipmg Workshop on Connectivity 25 May 2012

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

Network Station - Thin Client Computing - Overview

Transcription:

Study of Java Card and its Application 1 Nainesh Rawani, 2 Akhil Patel nainesh279@gmail.com 1,2 Information Technology Department, 1,2 Gujarat Technological University, Gujarat, India. Abstract: Sun Microsystems defined a set of specifications for a subset of Java technology to create applications for them, Java Card applets. A device that supports these specifications is referred to as a Java Card platform. On a Java Card platform, multiple applications from different vendors can coexist securely. The Java Card platform is the tiniest of Java targeted for embedded devices. It is an open, interoperable platform for smart cards and secure tokens. The technology is widely used in SIM cards (it's used in GSM mobile phones) and ATM cards. Java Card gives users the ability to program a device and make it application specific and lets smart card developers use a common card platform. Smart cards, unlike magnetic stripe cards, can carry all necessary functions and information on the card; therefore, they do not require access to remote databases at the time of the transaction. Keywords: Java, object, application, programming, SIM. I. INTRODUCTION A Java card is a multi-programmable, platform independent card. Standard Java is too big to fit on a smart card. Hence a flavour of Java card is used [8]. The elements of Java card include a back-end application, a host (off-card) application, an interface driver, On-card applet, user credentials, supporting software [3]. Also, SIM card, which is an application of java card is discussed here. Its architecture includes memory-size of RAM, ROM, EEPROM and Processor [1]. There are certain steps from writing a java code for application, converting it to applet file, and downloading it to the card. There are mainly 3 types of SIM cards used: Mini, Micro and Nano SIM. Finally, the new technology of virtual card is introduced [6]. A. Java card is: A programmable smart card: It supports Java (programming language). Uses Object oriented language Multi programmable: More than one program can be written and run on a single card. Platform independent: Write once read many times. Once the program is written, it can be run anywhere independent of the platform. [3] B. Why put Java on card? A Java card is a smart card that is able to execute Java byte code, similar to the way Java-enabled browsers can. But standard Java with all of its libraries is far too big to fit on a smart card [1]. A solution to this problem is to create a stripped-down flavour of Java. Card Java is just such a flavour. Besides, Card Java also allows smart cards to have multiple applications on them. [1] II. ELEMENTS OF JAVA CARD A back-end application A host (off-card) application 1

An interface driver On-card applet User credentials Supporting software KNOWLEDGECUDDLE PUBLICATION The Back-End Application and Systems: Back-end applications provide services that support in-card Java applets. For example, a back-end application could provide connectivity to security systems that, together with in-card credentials, provide strong security. [2] The Reader-Side Host Application: The host application resides on a desktop or a terminal such as a PC, an electronic payment terminal, a cell-phone, or a security subsystem. The host application handles communication among the user, the Java Card applet, and the provider's back-end application. [4] The Reader-Side Card Acceptance Device: The Card Acceptance Device (CAD) is the interface device that sits between the host application and the Java Card device. A CAD provides power to the card, as well as electrical or RF communication with it. A CAD may be a card -reader attached to a desktop computer using a serial port, or it may be integrated into a terminal such as an electronic payment terminal at a restaurant or a gas station. [3] Card-Side Applets and Environment: The Java Card platform is a multiple-application environment. One or more Java Card applets may reside on the card, along with supporting software - the card's operating system and the Java Card Runtime Environment (JCRE). [6] The JCRE consists of the Java Card VM, the Java Card Framework and APIs, and some extension APIs. [2] Architecture: ROM : 256 KB EEPROM : 4 64 KB (Persistent Storage) RAM : 4 KB Slow and simple microprocessor (8 Bit). [3] III. SIM cards (An application of Java card) FIGURE: - 1 2

FIGURE: - 2 How Java is coded to SIM card Java code Compile Step 1 Java class Debug and test Step 2 Java class simulator Download Step 3 CAP converter Compile CAP file Step 4 Java card simulator Verify Download to card Write a Java source Compile the source Covert the class files into a Converted Applet (CAP) file Install the CAP file. [5] IV. Types of SIM card: 1. Mini-SIM: The Mini-SIM (or 2FF) card has the same contact arrangement as the full-size SIM card and is supplied within a full-size card carrier, attached by a number of linking pieces. [6] normally 2. Micro-SIM: The Micro-SIM (or 3FF) card has the same thickness and contact arrangements, but the length and width are further reduced. The micro-sim was designed for backward compatibility. The major issue for backward compatibility was the contact area of the chip. The SIM was also designed to run at the same speed (5 MHz) as the prior version. [2] 3

3. Nano-SIM: The Nano-SIM (or 3FF) measures 12.3 8.8 0.67 mm. It reduces the previous format to the contact area while maintaining the existing contact arrangements. The 0.67 mm thickness of the NANOSIM is about 12% less than the 0.76 mm of normal SIM. [6] Virtual SIM card: V. Something new about SIM card This technology is aimed to create a fully software based SIM card that is executed by the phones operating system, bypassing the need of a physical SIM card and enabling multiple phone numbers for one physical handset. [7] Very high security is demanded if such a virtual SIM is to be possible to move between phones and to avoid data duplication and tampering. [5] VI. CONCLUSION Java Card can be used in all fields where the smart card is now being used. Java Card can be used as an ID card which contains personal information, as a medical card which stores medical information, as a credit/debit bank card, as an electronic purse etc. Multi-Application Java Cards, that is, more than one application in a single card is also available. Java Card Technology defines a run time environment that supports the smart card memory, communication, security and application execution model. Java Card Technology fits java system software in a smartcard while conserving enough space for applications. REFERENCES [1]. S. Chaumette, K. Markantonakis, K. Mayes et D. Sauveron : The Mobile Java Card Grid Project. e- Smart 2006. 20-22 september, 2006, Nice, France. [2]. P-F. Bonnefoi, P. Poulingeas et D. Sauveron. MADNESS: A Framework Proposal for Securing Work in Ad Hoc Networks. International Conference on Computer, Communication and Control Technologies: CCCT'05. 24 27 juillet 2005, Austin, Texas, USA. [3]. [4]. D. Sauveron. La technologie Java Card: Présentation de la carte à puce. La Java Card. RR-1259-01, LaBRI, Université Bordeaux 1, 2001. [5]. W.G. Sirett, Temporally Aware Behavior-Based Security in Smart Cards.Thesis, Royal Holloway University of London, September 2006. [6]. Atallah, E., Chaumette, S., Darrigade, F., Karray, A., Sauveron, D.: A Grid of Java Cards to Deal with Security Demanding Applications Domains. In: Proceedings of the 6th In-ternational Conference e-smart05, Nice, France (2005) e-smart 2005 award for the best innovativetechnology. [7]. MacDonald, J.A., Sirett, W.G., Mitchell, C.J.: Overcoming channel bandwidth constraints in secure SIM applications. In Sasaki, R., Qing, S., Okamoto, E., Yoshiura, H., eds.: 20th IFIP International Information Security Conference (SEC 2005) - Small Systems Security and Smart cards, Volume 181 of IFIP International Federation for Information Processing., Springer Science and Business Media (2005) Chiba, Japan. 4

[8]. Sirett,W.G., MacDonald,J.A.,Mayes,K., Markantonakis, K.: Design, installation & execution of a security agent for mobile stations. In Domingo-Ferrer, J.,Posegga, J., Schreckling, D., eds.: Smart Card Research and Advanced Applications - Proceedings of the Seventh IFIP WG 8.8/11.2 International Conference, CARDIS 2006. Volume 3928 of Lecture Notes in Computer Science. Spinger-Verlag (2006) 1 15 Tarragona, CAT, Spain. ISBN: 3-540- 33311-8. [9]. Sirett, W.G., MacDonald, J.A., Mayes, K., Markantonakis, K.: Secure deployment of appli- cationsto? eldeddevicesandsmartcards. InFernández-Medina,E.,Yagüe,M.I.,eds.:Secu- rity in Information Systems - Proceedings of the Fourth International Workshop on Security in Information System (WOSIS 2006), INSTICC Press (2006) 195 206 Paphos, Cyprus. ISBN: 972-8865-52-X. 5