LUO-THESIS.Pdf (3.607Mb)
Total Page:16
File Type:pdf, Size:1020Kb
BUILDING A DISTRIBUTED TRUST MODEL OF RESTFUL WEB SERVICES FOR MOBILE DEVICES A Thesis Submitted to the College of Graduate Studies and Research In Partial Fulfillment of the Requirements For the Degree of Master of Science In the Department of Computer Science University of Saskatchewan Saskatoon By Min Luo Copyright Min Luo, September, 2012. All rights reserved. PERMISSION TO USE In presenting this thesis in partial fulfilment of the requirements for a Postgraduate degree from the University of Saskatchewan, I agree that the Libraries of this University may make it freely available for inspection. I further agree that permission for copying of this thesis in any manner, in whole or in part, for scholarly purposes may be granted by the professor or professors who supervised my thesis work or, in their absence, by the Head of the Department or the Dean of the College in which my thesis work was done. It is understood that any copying or publication or use of this thesis or parts thereof for financial gain shall not be allowed without my written permission. It is also understood that due recognition shall be given to me and to the University of Saskatchewan in any scholarly use which may be made of any material in my thesis. Requests for permission to copy or to make other use of material in this thesis in whole or part should be addressed to: Head of the Department of Computer Science 176 Thorvaldson Building 110 Science Place University of Saskatchewan Saskatoon, Saskatchewan (S7N 5C9) ACKNOWLEDGMENTS First of all I would like to thank my supervisor, Dr. Ralph Deters for his support, guidance, patience throughout my graduate study. I would like to thank Dr. Julita Vassileva, Dr. Gord McCalla and Dr. Chris Zhang. I also would like to thank other faculty &staff at the department of Computer Science, who has been very helpful throughout my study at University of Saskatchewan. Finally, I would like to thank friends and classmates at MADMUC lab for their selfless support. iii ABSTRACT As of 2011, there were about 5,981 million mobile devices in the world [1] and there are 113.9 million mobile web users in 2012 [2]. With the popularity of web services for mobile devices, the concern of security for mobile devices has been brought up. Furthermore, with more and more cooperation of organizations, web services are now normally involved with more than one organization. How to trust coming requests from other organizations is an issue. This research focuses on building a trust model for the web services of mobile devices. It resolves the issues caused by mobile devices being stolen, lost, users abusing privileges, and cross-domain’s access control. The trust model is distributed in each node of the web servers. The trust value is calculated for every incoming request to decide whether the request should be served or not. The goals of the trust model are 1) flexible; 2) scalable; 3) lightweight. The implementation is designed and accomplished with the goals in mind. The experiments evaluate the overhead for the trust module and maximum capacity of the system. iv TABLE OF CONTENTS page ABSTRACT ......................................................................................................................................... IV LIST OF TABLES ............................................................................................................................ VIII LIST OF FIGURES .............................................................................................................................. X INTRODUCTION ................................................................................................................................ 1 PROBLEM IDENTIFICATION .......................................................................................................... 4 2.1 Web Services for Mobile Devices ..................................................................................................................... 4 2.2 Research Goals ................................................................................................................................................. 7 LITERATURE REVIEW ..................................................................................................................... 9 3.1 Web Service ..................................................................................................................................................... 9 3.2 Access Control ................................................................................................................................................ 12 3.3 Enterprise Service Bus (EBS) ........................................................................................................................... 15 3.4 Mobile Device Security and Comfort .............................................................................................................. 16 3.5 Mobile Context .............................................................................................................................................. 19 3.6 Cloud Computing ........................................................................................................................................... 21 3.7 Trust Model ................................................................................................................................................... 23 3.8 Summary........................................................................................................................................................ 29 DESIGN AND ARCHITECTURE ..................................................................................................... 32 4.1 Overview........................................................................................................................................................ 32 4.1.1 The Trust Model Analysis ......................................................................................................................... 32 4.2 Architecture ................................................................................................................................................... 37 4.2.1 Physical Architecture ............................................................................................................................... 37 4.2.2 Logical Architecture ................................................................................................................................. 38 4.2.3. Replication Trust Module Nodes ............................................................................................................. 39 4.2 Data Format & Flow ....................................................................................................................................... 41 v 4.3 System Functionalities ................................................................................................................................... 42 4.4 Design ............................................................................................................................................................ 47 4.4.1 Mobile Device Design .............................................................................................................................. 47 4.4.2 Proxy Server and Web Server Design ....................................................................................................... 51 4.5 Data Model .................................................................................................................................................... 54 IMPLEMENTATION ........................................................................................................................ 57 5.1 Android Tablet Implementation ..................................................................................................................... 57 5.1.1 Set development environment ................................................................................................................ 57 5.1.1.1 Mobile device information ............................................................................................................... 57 5.1.1.2 Mobile device setting ....................................................................................................................... 57 5.1.1.3 Mobile devices’ development tools: ................................................................................................. 58 5.1.1.4 Set Google Map API key ................................................................................................................... 58 5.1.2 Android Implementation Files ................................................................................................................. 59 5.1.2.1 Mainfest.xml.................................................................................................................................... 59 5.1.2.2 Layout files ...................................................................................................................................... 60 5.1.2.3 HTML & JavaScript Files ................................................................................................................... 61 5.1.2.4 Resource File ................................................................................................................................... 62 5.1.2.5 Java File ..........................................................................................................................................