1 / 21

JAVA CARD

JAVA CARD. Presented by Asha Rani Sethi Roll # EI200167126. Under the guidance of Mr. Bhawani Shankar Pattnaik. Java card. Smart cards Java card. SMART CARDS. Smart cards. A smartcard is a miniature computer with limited resources ROM: 16-64K : OS + programmatuur

jered
Download Presentation

JAVA CARD

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JAVA CARD Presented by Asha Rani Sethi Roll # EI200167126 Under the guidance of Mr. Bhawani Shankar Pattnaik

  2. Java card • Smart cards • Java card

  3. SMART CARDS

  4. Smart cards • A smartcard is a miniature computer with • limited resources • ROM: 16-64K : OS + programmatuur • EEPROM: 4-64K: persistent data storage • RAM: 256 bye-4K: scratch-pad memory • minimal I/O • just a serial port no keyboard, screen, mouse

  5. Mono-applicative Platform Dependent Programmed in machine-code specific to the chip One application, burnt into ROM Multi-applicative Platform Independent Application written in high-level language compiled into byte code Stored in EEPROM Smartcards versus Java card

  6. Java Card

  7. What is a Java Card ? • A smart card: • – a Virtual Machine for running bytecode • • The standard is given by the Java Card Forum • – applications are applets • – standard library • – applets can be loaded on any standard JavaCard.

  8. Java Card Architecture

  9. Language JC supports most features of the Java language : • Packages. • Dynamic object creation (new), • Virtual methods, Inheritance, Interfaces, • Exceptions. • The following types are not support • Multi-dimensional arrays. • long, float and double. • Char The int type is optional.

  10. Java Card platform • The Java Card platform consists of • Virtual Machine (VM) • for interpreting byte codes • API providing • basic classes (e.g.. applet and PIN) • interface” to OS (e.g.. APDU class for I/O) • Partly written in Java Card, partly native code

  11. Java Card Virtual Machine • The JVM is implemented in the Java Card’s ROM . • It controls access to all smart card resources such as • Memory • I/o • Serves as the smart card’s operating system • JVM executes Java byte code subset On the card • Provides the functions accessible from outside such as • signature • Log in • Loyality Application

  12. Java Card API • Java Card peculiarities for which the API provides support include • a APDU class for communication of smartcard with terminal • a transaction mechanism to cope with card tears, i.e. interruptions to power supply.

  13. APDU

  14. RMI • Java Card supports Remote Method Invocation (RMI) • RMI means one VM (the JVM on the terminal) invokes method on another VM (the JCVM on the smartcard). • For Java Card, such a method invocation (incl. Its parameters and any return value it produces) is translated into APDUs handled by the platform.

  15. How to use Applets • An Applet has to loaded in the card • Then must be • installed • registered • connected to JCRE via AID • Selected • Only oneselected at a time • Will get the next APDU

  16. Java Card Security • Partition of objects: a context for each package. • Contexts • – Active context, • – Object creation context. • Active context = object accessed context => Allowed • Shareable interface method => Context switch

  17. Analysis features • Based on Java Card Byte Code • Static Analysis • Object access classification • – secure, • – non-secure (security exception thrown), • – undecided.

  18. Sharing Analysis • Code must be Byte Code verifier compliant Infer a set of possible creation contexts for every variable • Compare abstract object contexts and execution contexts for every access • – field modification • – field access • – method call • Control flow insensitive.

  19. Classification of object accesses • • no security exception: • – abstract contexts are identical singletons • – static access • – shareable interface method call • • possible security exception: • – abstract contexts are compatible • • always security exception: • – abstract contexts are incompatible

  20. Conclusion • Java Card is a safe foundation for many network security applications. • And don’t forget E-commerce / identification applications… • As Java Card moves closer to the Java mainstream, new opportunities will arise (DRM, etc).

More Related