Java Card in Nov 1

Embed Size (px)

Citation preview

  • 8/6/2019 Java Card in Nov 1

    1/33

    SIM Smart Card Overview

  • 8/6/2019 Java Card in Nov 1

    2/33

    2

    Smart Card Introduction

    Java Card

    Java Card Based SIM

    Development Environment

    Service Examples

  • 8/6/2019 Java Card in Nov 1

    3/33

    Smart Cards?

    A smart card is a plasticcard that contains an

    embedded integrated circuit

    (IC) Examples:

    Student Cards Credit Cards Cell Phone SIM/USIM Cards

  • 8/6/2019 Java Card in Nov 1

    4/33

    What makes Smart Cards so smart?

    Card with microprocessor capable of

    Storing information

    Processing information

    Add authentication and secure access to information

    This is what makes a smart card smart Stupid cards cannot do this

    4

  • 8/6/2019 Java Card in Nov 1

    5/33

    Whats in a Card?

  • 8/6/2019 Java Card in Nov 1

    6/33

    Contact or Contact Less?

    Contact smart cards work bycommunicating via physicalcontact between a cardreader and the smart card

    Contact less smart cardscommunicate by means of aradio frequency signal, with atypical range of less than 2

    feet

  • 8/6/2019 Java Card in Nov 1

    7/33

    Typical Configuration

    Memory CapacityRAM : 256 bytes to 4KB

    ROM : 8KB to 64 KB

    EEPROM: 8KB to 64KB

    Microprocessor: 8-bit to 16-bit

  • 8/6/2019 Java Card in Nov 1

    8/33

    Advanced Configuration

    GIGAntIC combines the unrivaled security features of 3G SIM cards with

    up to 256 MB

    Strong cryptographic algorithms will protect the value chain of digital content

    distributions Allowing operators to propose innovative high ARPU-generating services

  • 8/6/2019 Java Card in Nov 1

    9/33

    Smart Card Introduction

    Java Card

    Java Card Based SIM

    Development Environment

    Service Examples

  • 8/6/2019 Java Card in Nov 1

    10/33

    Architecture

    0

    smartcard hardware

    a

    pp

    let

    a

    pp

    let

    a

    pp

    let

    Java Cardplatform(Java Card Runtime Enveronment)

    Java Card

    Virtual Machine

    Java Card API

    (mini OS)

  • 8/6/2019 Java Card in Nov 1

    11/33

    Typical Flow

    1

    a

    pp

    let

    a

    pp

    let

    Java Cardplatform(Java Card Runtime Enveronment)

    a

    pp

    let

    a

    pp

    let

    terminal

    smartcard hardware

  • 8/6/2019 Java Card in Nov 1

    12/33

    Where is the Java?

    2

    A subsetof Java

    no threads, no doubles,garbage collector optional ...

    With some extras

    persistentand transient objects

    transaction mechanism

    And increased language-level security

    standard sandbox (cf. web-browsers)

    plus firewall between applets

  • 8/6/2019 Java Card in Nov 1

    13/33

    Smart Cards vs Java cards

    3

    Multi-application: severalapplets on one card

    Applet written in high-level

    language Compiled into byte code Interpreted on card Stored in EEPROM Post-issuance: adding or

    deleting applets on card

    Smart Card Java Card One program (applet)

    Written in chip-specificmachine code

    Burnt into ROM

    Multi-application: severalapplets on one card

    Applet written in high-levellanguage Compiled into byte code Interpreted on card

    Stored in EEPROM Post-issuance: adding or

    deleting applets on card

  • 8/6/2019 Java Card in Nov 1

    14/334

    Smart Card Introduction

    Java Card

    Java Card Based SIM

    Development Environment

    Service Examples

  • 8/6/2019 Java Card in Nov 1

    15/33

    SIM (Subscriber Identity Module)

    5

    Mandatory in every GSM phone Identifies the mobile phone user

    Enables the roaming between different networks

    Issued and managed by the operator

  • 8/6/2019 Java Card in Nov 1

    16/33

    Information Stored By The SIM Card

    6

    Network specific information used to authenticateand identify subscribers on the Network

    Authentications keys Possibly phone number (operator dependent)

  • 8/6/2019 Java Card in Nov 1

    17/33

    Smart, Java and SIM Cards

    7

    Smart Cards

    Java

    Cards SIMs

    Most SIM cards are Java Card based

  • 8/6/2019 Java Card in Nov 1

    18/33

    Leading Vendors

    8

  • 8/6/2019 Java Card in Nov 1

    19/33

    Java Card Based SIM

    9

    SmartCard Hardware

    AppletToolkit

    applet

    GSM

    Applet

    Java CardPlatform(Java Card Runtime Environment)

    Loader

    Applet

    ToolkitRegistry

    ToolkitHandler

    File

    System

    SIM Toolkit Framework

    S

  • 8/6/2019 Java Card in Nov 1

    20/33

    SIM Toolkit

    0

    Set of commands which define how the card should

    interact with handset SIM initiates commands independently of the handset

    and the network has a proactive role.

    SIM T lki S i E l

  • 8/6/2019 Java Card in Nov 1

    21/33

    SIM Toolkit Session Example

    1

    I speak

    SIM Toolkit

    I have STK

    application

    I wait for your

    instructions

    Display

    1.Weather?

    2.Sports?

    3.Bank?

    And send user

    selection

    P ti C d E l

  • 8/6/2019 Java Card in Nov 1

    22/33

    Proactive Command Examples

    2

    Th D l t St

  • 8/6/2019 Java Card in Nov 1

    23/33

    Three Development Stages

    3

    ApplicationCreation

    03.19JavaCard

    ApplicationLoading

    1 Balance2 Lasttransactions3 Transfert4 Invoices5 Call Bank OK

    ApplicationExecution

    03.19JavaCard

  • 8/6/2019 Java Card in Nov 1

    24/334

    Smart Card Introduction

    Java Card

    Java Card Based SIM

    Development Environment

    Service Examples

    G lt

  • 8/6/2019 Java Card in Nov 1

    25/33

    Gemalto

    5

    Vi t Si

  • 8/6/2019 Java Card in Nov 1

    26/33

    VirtuoSimo

    6

    JCOP (IBM/NXP)

  • 8/6/2019 Java Card in Nov 1

    27/33

    JCOP (IBM/NXP)

    7

  • 8/6/2019 Java Card in Nov 1

    28/338

    Smart Card Introduction

    Java Card

    Java Card Based SIM

    Development Environment

    Service Examples

    NFC N Fi ld C i ti

  • 8/6/2019 Java Card in Nov 1

    29/33

    NFC: Near Field Communication

    9

    For Patient ID cards More accurate and secure

    Tracking package tags Drug inventory, logistics

    tracking, etc.

    Demo ID scanning application using

    Gemaltos Proximera SIM Can also use J2ME

    Integrated Management of Childhood Illness

  • 8/6/2019 Java Card in Nov 1

    30/33

    Integrated Management of Childhood Illness

    0

    Guides health workersthrough the 5 leading illnesses

    responsible for 70% of child

    deaths

    SIM-based IMCI originally

    proposed by Dr. Alvin Marcelo

    (Philippines) for use in his

    community health projects in

    remote rural areas

  • 8/6/2019 Java Card in Nov 1

    31/33

    Bekoz - The New Way to Move Money

    1

    Data

    MAC = MessageAuthentication Code

    E = Event Counter

    K = Derived DESKey

    Bekoz Central

    +123456789MAC63987455

    +123456789?

    Card No.Last OTP

    Authentication

    Algorithm

    Authentication

    AlgorithmY/N

    OTP = 63987455

    BEAM

    Server (HSM)

    $12.32

    to

    +44987654321

    PIN

    ****

    SMS from Mobile No: +123456789

    Send USD 12.3263987455

    MAC+44987654321

  • 8/6/2019 Java Card in Nov 1

    32/33

  • 8/6/2019 Java Card in Nov 1

    33/33