JAVA CARD

Views:
 
Category: Entertainment
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

:

JAVA CARD Department of Computer Science and Engineering College of Engineering and Technology Presented by: Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 1

:

CONTENTS Introduction History What is Java Card Features of Java Card Architecture Working Applications Security Challenges Conclusion References Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 2

:

INTRODUCTION Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 3 Java Card refers to a technology that allows java-based applications(applets)to be run securely on smart cards and similar small memory footprint devices. Java Card gives the user ability to program the device and make them application specific The Java Card is an extremely secure Java-powered electronic token Java Card could have a number of real-world applications.

Slide 4:

Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 4 HISTORY 1996 Introduction of Java Card technology 1997 Java Card 2.0 Technology Foundations 1999 Java Card 2.1 Interoperable File Format 2000 Java Card 2.1.1 Additional Crypto APIs 2002 Java Card 2.2 Next gen crypto ,memory management 2003 Java Card 2.2.1 Enhancements for USIM 2004 Java Card Entry level Fixed Function cards 2006 Java Card 2.2.2 Contactless 2008 Java Card 3.0 “Classic ” and “Connected”

:

WHAT IS JAVA CARD? Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 5 A programmable smart card A multi-application smart card An interoperable smart card A smart card for secure application loading

:

 easy to program using the power of JAVA  standard language  object oriented  compact code Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 6 A multi-application smart card  several applications can be loaded onto the same card  firewall between applications  sharing between applications An interoperable smart card  Interoperable at source code level is applications written for one card can run on any card i.e W rite once- Run anywhere(Platform Independent). A programmable smart card

:

Interoperable at load file level is since Java Card Runtime Environment JCRE2.1 converted applet CAP file can be loaded on to any card. Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 7 Interoperable at loader level  since open platform2.0 the loading APDUs and sequences are defined. A smart card for secure application loading  High security features of Java Card i.e allows application loading after issuance.  VM concept i.e no direct hardware access and references instead of pointers.  ByteCode verification  Firewall i.e secured execution contexts.

:

ARCHITECTURE Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 8

:

JCRE (JAVA CARD RUN TIME ENVIRONMENT) Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 11  Card Reset Handling  Applet Selection and APDU Dispatching  Firewall Control and Context Switching  Access to Application Identifiers (AIDs)

Chip features 64 KB ROM 32 KB EEPROM 28 KB available for the customer   2 KB RAM   slow and simple microprocessor(8-bit) UART support of transport protocols :

Chip features  64 KB ROM  32 KB EEPROM 28 KB available for the customer  2 KB RAM  slow and simple micro processor(8-bit)  UART support of transport protocols Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 12 JAVA CARD ARCHITECTURE - HARDWARE

The java card virtual machine (JCVM) is responsible for    byte code interpretation    exception handling    firewall checks    object consistency checks       The JCVM does not support    long, double and float variables    multithreading   garbage collection    reloadable classes  Currently no 32 bit integer   :

The java card virtual machine (JCVM) is responsible for  byte code interpretation  exception handling  firewall checks  object consistency checks The JCVM does not support  long, double and float variables  multithreading  garbage collection  reloadable classes  Currently no 32 bit integer JAVA CARD VIRTUAL MACHINE (JCVM) Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 13

The converter (off-card VM)   class loading, resolution and linking verification bytecode optimization and conversion to CAP file   The interpreter (on-card VM) bytecode execution java card firewall enforcement :

The converter (off-card VM)  class loading, resolution and linking  verification  bytecode optimization and conversion to CAP file The interpreter (on-card VM )  bytecode execution  java card firewall enforcement JAVA CARD VIRTUAL MACHINE(CONTD..) Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 14 JCVM splits into two parts

:

WORKING  Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 15

:

MESSAGE PASSING MODEL Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 16

 CLA, INS define the command P1, P2 – parameters Lc – data field length Le – maximum response length SW1, SW2 – response status :

 CLA, INS define the command  P1, P2 – parameters  Lc – data field length  Le – maximum response length  SW1, SW2 – response status APDU STRUCTURE Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 17

:

APPLICATION AREAS Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 18 Financial Smart Credit / Debit E-Purses Loyalty Programs Mobile Communication Infotainment Business Support Network Optimizers

 Byte Code Verifier verify java byte code before execution Class loader system load local class and network class separately Data Encapsulation data is stored within the application and Java Card applications are executed in an isolated environment(the Java Card VM),separate from underlying operating system and hardware Applet Firewall unlike other java VMs ,a Java Card VM usually manages several applications,each one controlling sensitive data.Different applications therefore separated from each other by an Applet Firewall which restricts and checks access of data elements of one applet to another. Applet The Applet is a state machine which processes only incoming command requests and responds by sending data or response status words back to the interface device :

 Byte Code Verifier verify java byte code before execution  Class loader system load local class and network class separately  Data Encapsulation data is stored within the application and J ava Card applications are executed in an isolated environment(the Java Card VM),separate from underlying operating system and hardware  Applet Firewall unlike other java VMs ,a Java Card VM usually manages several applications,each one controlling sensitive data.Different applications therefore separated from each other by an A pplet Firewall which restricts and checks access of data elements of one applet to another.  Applet The Applet is a state machine which processes only incoming command requests and responds by sending data or response status words back to the interface device SECURITY Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 19

Java cards have very restricted resources 1.Limited Memory 2.Limited Computing Power Java Card doesn’t support some of java features 1.Large primitive data types :long,double,float 2.char,string 3.Multidimensional array 4.Dynamic class loading 5.Garbage collection 6.Multithreading 7.Object Cloning :

 Java cards have very restricted resources 1. Limited Memory 2.Limited Computing Power  Java Card doesn’t support some of java features 1.Large primitive data types : long,double,float 2.char,string 3.Multidimensional array 4 .Dynamic class loading 5 .Garbage collection 6 .Multithreading 7 .Object Cloning CHALLENGES Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 20

 The java card adds a new platform to the world of java  Java card is a significant step forward  Realistic threats exist also for java card  Off-card verification is more risky than it seems Java card issuers to counter act the threats Java card security is attainable :

 The java card adds a new platform to the world of java  Java card is a significant step forward  Realistic threats exist also for java card  Off-card verification is more risky than it seems  Java card issuers to counter act the threats  Java card security is attainable CONCLUSION Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 21

:

REFERENCES Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 22 [1] Java Card platform overview By Sebastian Hans, Senior Staff Engineer, S un Microsystems Inc. http ://developers.sun.com/techtopics/mobility/javacard/articles/javacard1 [2] Java Card™ 2.2 Application Programming Interface http://www.sun.com [3] “ Understanding Java Card 2.0” http ://www.wireless.java.sun.com/javacard/ [4] Java Card Technology http ://www.java.sun.com/products/javacard/ [5] Java Cards http ://www.javaworld.com /

:

Thank U Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 23

:

Queries ? Department of Computer Science and Engineering College of Engineering and Technology Abani Kumar Sahoo Regd.no-0801106222 Date : 7 th April,2011 2 4