leveraging uicc with open mobile api for secure applications and services

17
Leveraging UICC with Open Mobile API for Secure Applications and Services

Upload: maximillian-reynolds

Post on 27-Dec-2015

233 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Leveraging UICC with Open Mobile API for Secure Applications and Services

Leveraging UICC with Open Mobile API for Secure Applications and Services

Page 2: Leveraging UICC with Open Mobile API for Secure Applications and Services

UICC

• UICC is a smart card used in mobile terminals in GSM and UMTS networks• It provides

the authentication with the networks secure storage crypto algorithms …

• Java Card as UICC can provide Hash functions: MD5, SHA-1, SHA-256 … Signature functions: HMAC … Public-key cryptography: RSA … Symmetric-key cryptography: AES, DES … …

Page 3: Leveraging UICC with Open Mobile API for Secure Applications and Services

Toolkit

• SIM Application Toolkit is a standard of GSM which can be used by the MNO to provide value-added services

• It is a set of commands which define how the card should interact with the outside world

• But the update of toolkit application and menu stored in the UICC is difficult• and there is no support for multimedia

Page 4: Leveraging UICC with Open Mobile API for Secure Applications and Services

Smart Card Web Server

• The SCWS is based on a standard HTTP 1.1 web server embedded in smart card, allowing communication with any HTTP client – particularly the handset browser

• It will benefit from all the latest improvement of particular client (JavaScript, XMLHttpRequest) and support s browser plug-ins such as Adobe Flash to bring Apps’ UI to the next level

Page 5: Leveraging UICC with Open Mobile API for Secure Applications and Services

Generic Bootstrapping Architecture (GBA)

• GBA extends the security infrastructure and establishes key agreement• It uses the 3GPP Authentication and Key Agreement (AKA) mechanism,

enables authenticated User Equipment (UE) access to the Network Application Function (NAF) services.

• But it requires to implement a GBA module to communicate with the browser, the NAF and the UICC

Page 6: Leveraging UICC with Open Mobile API for Secure Applications and Services

Open Mobile API

• Open Mobile API is established by SIMalliance as an open API between the Secure Element and the applications

• Crypto• Authentication• Secure Storage• PKCS#15• …

Page 7: Leveraging UICC with Open Mobile API for Secure Applications and Services

Open Mobile API• 3 Layers

Transport Layer: using APDUs for accessing a Secure Element Service Layer: provide a more abstract interface for functions on SE Application Layer: represents the various applications using Open Mobile API

Figure 1: Architecture overview

Page 8: Leveraging UICC with Open Mobile API for Secure Applications and Services

Use cases

• NFC services• Payment services• Ticketing services• Loyalty services (Kundenbindungsmaßnahmen)• ID services

Page 9: Leveraging UICC with Open Mobile API for Secure Applications and Services

OpenID ProviderOpenID Provider

Relying PartyRelying Party

UserUserDeviceDevice

Relying PartiesRelying Parties

Submit OpenID ID

Association

User authentication

Log-On

OpenID Overview

Page 10: Leveraging UICC with Open Mobile API for Secure Applications and Services

OpenID Weakness

• Phishing• An “Identity System” without Trust: no authority can

promise OpenID rzhou.myopenid.com is Ran Zhou.• No single-sign-on• Communication Overhead: lots of HTTP requests

Page 11: Leveraging UICC with Open Mobile API for Secure Applications and Services

SmartOpenID

Page 12: Leveraging UICC with Open Mobile API for Secure Applications and Services

• PhishingSensitive data remains on device

• An “identity system” without Trust: no authority can promise OpenID rzhou.myopenid.com is Ran Zhou.

Trust between user and MNO (contract)• No single-sign-on

Local OP interface provide SSO• Communication Overhead: lots of HTTP requests

Significantly reduced authentication traffic

SmartOpenID

Page 13: Leveraging UICC with Open Mobile API for Secure Applications and Services

• A browser which is able to communicate via HTTP with: the service/RP, and the local OP

• Local OP, which provides a web server interface for the browser and acts like a network based OpenID identity provider

• SIM communication API, which provides an API for the local OP to communicate with the application on the smart card: Open Mobile API

• Application on the UICC, which performs all the necessary crypto operations for the local OP

• A Long Term Secret shared between network OP and local OP, which is used to establish the Trust

SmartOpenID Architecture Overview

Page 14: Leveraging UICC with Open Mobile API for Secure Applications and Services

• The UICC application can handle local authentication by means of requesting a user Pin code to unlock the local OP functionality on the UICC

• The Local OP app receives an HTTP request from the browser containing all the message fields which have to be signed and also including the association handle

• The UICC application derives the signature key with the Long Term Secret and the association handle using key derivation function: PBKDF2

• The UICC signs the message with the derived signature key using HMAC function: HMAC-SHA1 or HMAC-SHA256

SmartOpenID Architecture Overview

Page 15: Leveraging UICC with Open Mobile API for Secure Applications and Services

Overview of the Master Thesis

• This master thesis is part of the project “SmartOpenID”, which is carried out by InterDigital, Novalyst and Morpho e-Document

• Within the thesis, different technologies, which intend to extend the UICC’s usage and bring the value-added services, will be discussed

• Then the Open Mobile API, which fills the gap between the UICC and the outside world, will be introduced

• As an use case, the SmartOpenID protocol will be introduced and analyzed• The usage of Open Mobile API with UICC will then be shown. As a result, the

services, which an UICC can provide, will be introduced and discussed• An implementation of the SmartOpenID protocol on an Android device with UICC• A test and analyze of the implementation• Discussion and prospect of the other use cases with Open Mobile API

Page 16: Leveraging UICC with Open Mobile API for Secure Applications and Services

• Android Emulator + Open Mobile API + PCSC Card Reader + Morpho UICC• Android Handset (Samsung Galaxy S2 NFC) + Open Mobile API + Moupho UICC

Development environment

Page 17: Leveraging UICC with Open Mobile API for Secure Applications and Services

Thanks!