Securing Mobile Ubiquitous Services Using Trusted Computing
Total Page:16
File Type:pdf, Size:1020Kb
Securing Mobile Ubiquitous Services using Trusted Computing Adrian Ho Yin Leung Technical Report RHUL{MA{2009{17 10 July 2009 Department of Mathematics Royal Holloway, University of London Egham, Surrey TW20 0EX, England http://www.rhul.ac.uk/mathematics/techreports Securing Mobile Ubiquitous Services using Trusted Computing by Adrian Ho Yin Leung Thesis submitted to the University of London for the degree of Doctor of Philosophy Information Security Group Department of Mathematics Royal Holloway, University of London 2009 To my daughters, Louisa and Lavigne Declaration These doctoral studies were conducted under the supervision of Professor Chris J. Mitchell. The work presented in this thesis is the result of original research carried out by my- self, in collaboration with others, whilst enrolled in the Information Security Group, Department of Mathematics, Royal Holloway, University of London as a candidate for the degree of Doctor of Philosophy. The research presented in Chapter 5 is my own work, although I received many constructive comments from Liqun Chen and Chris J. Mitchell. The results presented in Chapter 6 are joint work with Raphael Phan. The weaknesses described in Section 6.4 of the SSB Scheme were jointly identi¯ed by both of us, while the suggested solutions in Section 6.5 are my work. The results in Chapter 7 and 8 were research carried out by myself with constructive comments from Chris J Mitchell. The protocol described in Chapter 9 was jointly developed with Geong Sen Poh. However, the idea to use trusted computing to solve the problem was mine. This work has not been submitted for any other degree or award in any other uni- versity or educational establishment. Adrian Ho Yin Leung June, 2009 3 Acknowledgements My heartfelt thanks to my supervisor Professor Chris J. Mitchell for his guidance, encouragement, motivation, advice, patience and dedication. Chris you are an ex- cellent teacher and mentor; I have learnt a great deal from you in the last few years. I would like to thank my examiners, Professor Bruce Christianson and Professor Peter Wild for taking the time to examine my thesis and for their constructive comments. I would like to thank the British Foreign and Commonwealth O±ce (FCO) and Royal Holloway for awarding the British Chevening/Royal Holloway Scholarship to me. This research would not have been possible without this very generous ¯nancial support. Many thanks also to the EU-funded ECRYPT network of excellence for providing conference and travel support. I am also grateful to the Virtual Centre of Excellence in Mobile and Personal communications (Mobile VCE) for inviting me to participate in this exciting research programme on ubiquitous services. I would like to thank my co-authors Roderick Bloem, Liqun Chen, Haitham Cruick- shank, Karin Greimel, Raphael Phan, Geong-Sen Poh, Yingli Sheng, Ronald Toegl and Po-Wah Yau. I am particularly grateful to Liqun Chen for patiently answering my numerous queries on DAA. It has been a pleasure working with and learning from all of you. And not forgetting the ISG for (i) the very supportive and friendly research environ- ment, (ii) the very approachable academic/research sta® (in particular John Austen, Shane Balfe, Jason Crampton, Hilary Ganley, Kenny Paterson, Fred Piper, Hoon Wei Lim, Keith Martin, Scarlet Schwiderski-Grosche, Allan Tomlinson, Stephen Wolthusen, and Po-Wah Yau) with whom I have had the honour of interacting, (iii) the helpful and ever smiling support sta®, in particular Pauline Stoner, Jenny Lee, Lisa Nixon, and Jon Hart, and (iv) my fellow PhD students, especially my o±ce mates from McCrea 255. My deepest gratitude goes to my parents for all their years of unwavering support and love. Thanks also to my wife for taking this journey with me, and my dear daughters Louisa and Lavigne for keeping me motivated, and for making everything worthwhile. 4 Abstract This thesis examines how trusted computing technology can be used to enhance the security of ubiquitous services in mobile environments. It is envisaged that, in a mobile ubiquitous environment, users (through one of their mobile devices and using a range of network access technologies) will be able to seamlessly discover, select, and access a rich o®ering of services and content from a range of service providers. To realise this vision, it is important that security and privacy issues are addressed from the outset. Initially we introduce the model of mobile ubiquitous computing that underlies the discussions in the remainder of the thesis. We then identify the security requirements for ubiquitous service provision arising in the context of this model. In Part II of the thesis we examine the technology of trusted computing. We consider the e®ectiveness of a recently proposed attack on one of the trusted computing primitives, namely the Direct Anonymous Attestation protocol, and also examine ways in which the attack can be prevented. We further cryptanalyse a trusted computing based protocol designed to secure the storage and distribution of secrets. In the ¯nal part of the thesis, we propose three novel schemes for mobile services security, all using trusted computing as the primary building block. Firstly, we de- scribe a Secure and Private Service Discovery Protocol in which, during the service discovery process, the trustworthiness of a user platform is anonymously authenti- cated to a service provider, whilst a service provider is simultaneously authenticated to the user. The novel scheme possesses the following desirable properties: user anonymity, service information con¯dentiality, unlinkability, and rogue blacklisting. We next present a Device Management Framework for Secure Service Delivery. Apart from providing secure service interactions between the service provider and user devices, the framework is designed to reduce the complexity of device security management tasks for users. The framework also protects the interests of service providers by preventing unauthorised credential sharing amongst user devices. One other novel feature of the framework is that compromised devices are self-revoking, hence removing the need for a cumbersome revocation infrastructure. Finally, we construct a Privacy-Preserving Content Watermarking Scheme. Our scheme minimises the reliance on a TTP for privacy protection, as the buyer can 5 generate veri¯able pseudonyms on its own. As a result, we are able to reduce communication overheads, and hence improve the overall e±ciency compared to existing schemes. In addition, the content provider is able to obtain assurance that a buyer-generated watermark is well-formed. The scheme also provides the following security features: framing resistance, user anonymity, content information con¯dentiality, unlinkability (even against the TTP), and transaction linkability. 6 Contents 1 Introduction 15 1.1 Motivation and Challenges . 15 1.2 Contributions . 17 1.3 Organisation of Thesis . 19 1.4 List of Publications . 20 I Background 23 2 Security Preliminaries 24 2.1 Introduction . 24 2.2 Security Threats . 25 2.3 Security Services . 26 2.4 Security Mechanisms . 28 2.4.1 Symmetric Encryption . 28 2.4.2 Cryptographic Hash Functions . 29 2.4.3 Message Authentication Codes . 29 2.4.4 Asymmetric Encryption . 30 2.4.5 Digital Signatures . 31 2.4.6 Key Agreement . 31 2.4.7 Public Key Infrastructures . 32 3 Mobile Ubiquitous Computing 34 3.1 Introduction . 34 3.2 A Mobile Ubiquitous Environment . 36 3.3 Personal Distributed Environments . 39 3.3.1 PDE scenario . 39 3.3.2 PDE management . 40 3.4 A Ubiquitous Services Scenario . 42 3.5 Ubiquitous Services Security Issues . 44 3.5.1 User Perspective . 44 3.5.2 Service Provider Perspective . 46 3.6 Security Requirements . 47 3.6.1 General Security Requirements . 47 3.6.2 Speci¯c User and Service Provider Security Requirements . 47 3.7 Summary . 49 7 CONTENTS II Security Issues in Trusted Computing 50 4 Trusted Computing 51 4.1 Introduction . 52 4.1.1 The Trusted Computing Group . 53 4.1.2 What is a Trusted Platform? . 54 4.2 Trusted Platform Architecture . 55 4.2.1 Roots of Trust . 55 4.2.2 TPM Functional Components . 56 4.2.3 TPM Keys and Identities . 59 4.2.4 TPM Credentials . 61 4.3 Trusted Computing Functionality . 63 4.3.1 Integrity Measurement, Storage and Reporting (IMSR) . 63 4.3.2 Protected Message Exchange and Storage . 65 4.3.3 Authenticated Boot and Secure Boot . 67 4.3.4 Isolated Execution Environments . 68 4.4 Trusted Computing and Privacy . 70 4.4.1 Privacy CA . 71 4.4.2 Direct Anonymous Attestation . 72 4.5 Applications of Trusted Computing . 78 4.5.1 Commercial Applications . 78 4.5.2 Client Applications . 79 4.5.3 Distributed Computing Environments . 81 4.5.4 Other Applications . 83 4.6 Summary . 84 5 A Possible Privacy Flaw in DAA 85 5.1 Introduction . 86 5.2 A Privacy Attack on DAA . 87 5.3 How Realistic is the Rudolph Attack? . 89 5.3.1 Scenario 1: Linking large numbers of users . 89 5.3.2 Scenario 2: Linking a small set of users . 91 5.4 Preventing the Rudolph Attack . 92 5.4.1 Modifying the TCG Speci¯cations . 92 5.4.2 Using a Trusted Auditor . 93 5.4.3 A User-Centric Approach . 96 5.5 Summary . 96 6 Analysis of a Secret Distribution and Storage Scheme 98 6.1 Introduction . 99 6.2 Preliminaries . 99 6.2.1 Notation . 100 6.2.2 TPM Commands . 100 6.2.3 Assumptions . 101 6.3 A TPM-based Secret Distribution and Storage Scheme . 102 6.4 Analysis of the Scheme . 104 6.4.1 Absence of Server-to-Client Authentication . 105 8 CONTENTS 6.4.2 Preventing the Client from Receiving the Secret . 105 6.4.3 Exploiting the TPM as an (Signing) Oracle .