Upload
alex-rivkin
View
215
Download
0
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