V0.52 2012-04-13 1/7 Mapping SKS into a TEE/SE "Combo" An SKS (Secure Key Store) may be self-contained like in a smart card, but it may also be architected.

Slides:



Advertisements
Similar presentations
Thomas S. Messerges, Ezzat A. Dabbish Motorola Labs Shin Seung Uk.
Advertisements

Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
PKCS #15 v1.1 Magnus Nyström RSA Laboratories PKCS Workshop, 1999.
Hardware Cryptographic Coprocessor Peter R. Wihl Security in Software.
1 GP Confidential © GlobalPlatform’s Value Proposition for Mobile Point of Sale (mPOS)
Key Provisioning Use Cases and Requirements 67 th IETF KeyProv BOF – San Diego Mingliang Pei 11/09/2006.
Grid Security. Typical Grid Scenario Users Resources.
Dongyan Wang GlobalPlatform Technical Program Manager
Public Key Infrastructure (PKI) Providing secure communications and authentication over an open network.
Feb 18, 2003Mårten Trolin1 Previous lecture Block ciphers Modes of operations First assignment Hash functions.
Mobile Credentials Ennio J. Carboni Product Manager, Keon PKI
SKS – Secure Key Store KeyGen2 –Token Provisioning Protocol Executive Level Presentation.
Java Security Model Lab#1 I. Omaima Al-Matrafi. Safety features built into the JVM Type-safe reference casting Structured memory access (no pointer arithmetic)
LAB#2 JAVA SECURITY OVERVIEW Prepared by: I.Raniah Alghamdi.
Cyber Security and Key Management Models Smart Grid Networks The Network System Key Management and Utilization Why Hardware Security Christopher Gorog,
About PKI Key Stores Dartmouth College PKI Lab. Key Store Defined Protected “vault” to hold user’s private key with their copy of their x.509 certificate.
Using Internet Information Server And Microsoft ® Internet Explorer To Implement Security On The Intranet HTTP.
IPhone Security: Understanding the KeyChain Nicholis Bufmack and Ryan Thomas CS 691 Summer 2009.
SE571 Security in Computing
Web Cryptography & Utilizing ARM TrustZone® based TEE for Authentication & Cryptography Ilhan Gurel September 10th & 11th, 2014.
File System and Full Volume Encryption Sachin Patel CSE 590TU 3/9/2006.
D ATABASE S ECURITY Proposed by Abdulrahman Aldekhelallah University of Scranton – CS521 Spring2015.
Chapter 10: Authentication Guide to Computer Network Security.
LEVERAGING UICC WITH OPEN MOBILE API FOR SECURE APPLICATIONS AND SERVICES Ran Zhou 1 9/3/2015.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 3 Administration of Users.
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.
The Windows NT ® 5.0 Public Key Infrastructure Charlie Chase Program Manager Windows NT Security Microsoft Corporation.
Registration Processing for the Wireless Internet Ian Gordon Director, Market Development Entrust Technologies.
Architecture for Protecting Critical Secrets in Microprocessors Ruby Lee Peter Kwan Patrick McGregor Jeffrey Dwoskin Zhenghong Wang Princeton Architecture.
Key Management with the Voltage Data Protection Server Luther Martin IEEE P May 7, 2007.
Dynamic Symmetric Key Provisioning Protocol (DSKPP) Mingliang Pei Salah Machani IETF68 KeyProv WG Prague.
Gregorio Martínez Pérez University of Murcia PROVIDING SECURITY TO UNIVERSITY ENVIRONMENT COMMUNICATIONS.
Encryption and Security Dylan Anderson Michael Huffman Julie Rothacher Dylan Anderson Michael Huffman Julie Rothacher.
Certificate-Based Operations. Module Objectives By the end of this module participants will be able to: Define how cryptography is used to secure information.
S2008Final_part1.ppt CS11 Introduction to Programming Final Exam Part 1 S A computer is a mechanical or electrical device which stores, retrieves,
MagicNET: Security System for Protection of Mobile Agents.
Middleware for Secure Environments Presented by Kemal Altıntaş Hümeyra Topcu-Altıntaş Osman Şen.
SSL/TLS How to send your credit card number securely over the internet.
Guide to MCSE , Second Edition, Enhanced1 The Windows XP Security Model User must logon with: Valid user ID Password User receives access token Access.
Enterprise Security API (ESAPI) 2.0 Crypto Changes
Operating Systems Security
Java Security Session 19. Java Security / 2 of 23 Objectives Discuss Java cryptography Explain the Java Security Model Discuss each of the components.
Wireless and Mobile Security
11 Restricting key use with XACML* for access control * Zack’-a-mul.
Trusted Computing and the Trusted Platform Module Bruce Maggs (with some slides from Bryan Parno)
SACRED REQUIREMENTS DOCUMENT Stephen Farrell, Baltimore Alfred Arsenault, Diversinet.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
 authenticated transmission  secure tunnel over insecure public channel  host to host transmission is typical  service independent WHAT IS NEEDED?
Security and Privacy for the Smart Grid James Bryce Clark, OASIS Robert Griffin, RSA Hal Lockhart, Oracle.
Biometrics and Security Colin Soutar, CTO Bioscrypt Inc. 10th CACR Information Security Workshop May 8th, 2002.
1 Example security systems n Kerberos n Secure shell.
A l a d d I n. c o m Strong Authentication and Beyond Budai László, IT Biztonságtechnikai tanácsadó.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
Welcome to Intro to Operating Systems Course Website:
Hardware-rooted Trust for Secure Key Management & Transient Trust
LAS16-203: Platform Security Architecture for embedded devices
Hardware Cryptographic Coprocessor
Radius, LDAP, Radius used in Authenticating Users
File System Implementation
Product Manager, Keon PKI
Operating Systems Security
TPM, TEE, SGX Technologies
Student: Ying Hong Course: Database Security Instructor: Dr. Yang
Module 2 OBJECTIVE 14: Compare various security mechanisms.
A simple and secure single sign-in authentication service, designed to help businesses prove who they are when transacting with public services online.
Aimee Coughlin, Greg Cusack, Jack Wampler, Eric Keller, Eric Wustrow
PLANNING A SECURE BASELINE INSTALLATION
Presentation transcript:

V /7 Mapping SKS into a TEE/SE "Combo" An SKS (Secure Key Store) may be self-contained like in a smart card, but it may also be architected as a TEE (Trusted Execution Environment) and SE (Security Element) combination. The primary objectives for dividing an SKS into a TEE/SE combo include: Small SE footprint suitable for CPU integration Stateless SE-operation enabling simple virtualization Unlimited key storage Elimination of NVRAM Logical integration in modern operating systems The described scheme is intended to work equally well in mobile phones as in high-performance servers. The reader is supposed to be familiar with the SKS specification

V /7 SE - Security Element Credential Database Sealed KeysPINPIN RetriesACLEtc... TEE – Trusted Execution Environment Check (KeyID, PIN) Check (KeyID, User:Application) SealedKey = Lookup (KeyID) Result = SE_Sign (SealedKey, Algorithm, Data) Seal/Unseal “SEMasterKey” 1. Unseal SealedKey 2. Perform sign operation 3. Return result to TEE “Owns” SE-sealed data Exclusive user of SE Key access controller Note: PIN and/or ACL protection is optional Result = Sign (KeyID, Algorithm, PIN, Data) User * TEE/SE Combination Sample “User API” Operation Application * * Acquired by the OS   

V /7 Anatomy of a SealedKey class SealedKey { byte[] wrappedKey; // Encrypted PKCS #8 or symmetric key boolean isSymmetric; // True if wrapped_key is symmetric boolean isExportable; // True if allowed to be unsealed to the TEE byte[] mac; // Integrity control } Sealing Algorithm: byte[] IV = randomNumber (16); wrappedKey = IV || AES256-CBC (KDF encryption (SEMasterKey), rawKeyValue, IV); mac = HMAC-SHA256 (KDF mac (SEMasterKey), isExportable || isSymmetric || wrappedKey);

V /7 SE - Security Element TEE – Trusted Execution Environment SealedSessionKey, SessionData = SE_createProvisioningSession (ServerEphemeralKey) Seal/Unseal “SEMasterKey” 1. Create a SessionKey 2. Seal SessionKey 3. Attest SessionData using AttestationKey 4. Return result to TEE SessionData = createProvisioningSession (ServerEphemeralKey) TEE/SE Combination Simplified “Provisioning API” Operation 1. Create Provisioning Session SE Private “AttestationKey”   

V /7 TEE – Trusted Execution Environment SealedKey, KeyData = SE_createKeyEntry (SealedSessionKey, KeySpecifier, KeyID, MAC) 1. Unseal SealedSessionKey 2. Verify MAC using SessionKey 3. Create key-pair 4. Seal private key 5. Attest public key data using SessionKey 6. Return result to TEE KeyData = createKeyEntry (SessionID, KeySpecifier, KeyID, MAC) TEE/SE Combination Simplified “Provisioning API” Operation SealedSessionKey = Lookup (SessionID) 2. Create Object in Session SE - Security Element Seal/Unseal “SEMasterKey”    

V /7 TEE TEE/SE Combination Virtualization Support – Binding keys and provisioning sessions to Virtual Machines SE - Security Element Seal/Unseal “SEMasterKey” Virtual Machine/OS TEE Virtual Machine/OS Instance-unique “OSMasterKey” Result = SE_Operation (OSMasterKey, OtherArguments) Actual Seal or Integrity Key: KDF operation (SEMasterKey) ⊗ OSMasterKey HyperVisor

V /7 Q & A Question: Is this really secure? Rhetoric answer: Do TEE- or application-based embedded PINs and/or obfuscated code actually bring any sustainable and provable security values to the table? Question: Could there even be advantages of using the TEE for access control? Answer: Yes, it enables combining various kinds of access controls like restricting keys to specific applications or users, as well as using device- wide PINs. A TEE can also provide challenge-response authentication and encrypted tunnels without burdening the SE. A TEE typically also supports a “trusted GUI” removing PIN-entry from potentially untrusted applications Question: How does the SE protect keys from theft? Answer: The “seal” contains an attribute which tells if the key is non- exportable. Such keys will not be exported unsealed to the TEE even it asks for it!