An All-Steps Anonymous Purchase Platform (ASAPP) Based on Separation of Data
Total Page:16
File Type:pdf, Size:1020Kb
GhostBuy: An All-Steps Anonymous Purchase Platform (ASAPP) based on Separation of Data by Fabian Willems A thesis submitted to the University of Ottawa in partial fulfillment of the requirements for the degree of Master of Science in Electronic Business Technologies (EBT) School of Electrical Engineering and Computer Science Faculty of Engineering University of Ottawa © Fabian Willems, Ottawa, Canada, 2021 Preface The research presented in this thesis is entirely our own work. Sources are declared throughout the thesis and – regarding adapted / adopted code snippets – in the source code of the prototype implementation that we provide with the thesis. However, in Appendix V we provide an overview of sources that were particularly useful for the prototype implementation. We hope that others will find them as useful as we did. ii Abstract In recent years – and especially since the beginning of the COVID-19 pandemic – online shopping has become a part of everyday life for many people. Yet, in contrast to buying at a traditional retail store, staying anonymous is at least difficult if not impossible when shopping online – in particular, when physical goods are to be delivered. From the customer perspective, reasons for seeking anonymity when shopping online can be manifold, for example some do not want anyone to know about their purchases, others do not want their data to be used by Big Data-enabled online retailers. From the point of view of online retailers, the prospect of anonymous online shopping should therefore not only be seen as a threat to their data-driven business models, but also as an opportunity to attract new customers. In this thesis we search and find support in the literature regarding the question whether there is indeed a demand for anonymous online shopping, and we discuss system architecture designs that were proposed by other authors for potentially realizing what we call All-Steps Anonymous Purchase Platforms (ASAPP). We propose a new architecture design that improves earlier work by realizing the concept of Separation of Data within a single platform: GhostBuy. We implement a working prototype of this platform that demonstrates not only the fundamental feasibility of the architecture but also that such a platform can be realized with a look-and-feel similar to that of common online shops. We also propose solutions for certain related aspects that are particularly important in the context of such a platform, as for example a guaranteed use of secure user passwords or application-level database encryption. We evaluate to what extent the proposed architecture and prototype preserve the customers’ anonymity/privacy, showing that the prototype provides it to the maximum possible extent that can be achieved based on the proposed architecture. We also show that the system provides 256-bit security against all but one considered cryptographic and mis-authentication attack vectors and discuss how this can also be achieved for the remaining attack vector. Closing our evaluation, we show how well the platform could presumably be deployed in the real world. Finally, limitations, possible improvements, and potential further future work are discussed and proposed. iii Acknowledgements I would like to thank my wife for her continuous support before and during my studies in the University of Ottawa’s EBT program. Without you, I would not have been able to finish the program, and, in fact, I never would have started it. I also want to thank my kids for being understanding or at least accepting when I was not at home or just not available due to taking classes or working on assignments and this thesis. I am looking forward to a time of just being a dad – and a husband! Also, I like to give a big thank you to my brother Sebastian for doing such a great job of implementing my rough logo-design idea – it looks fantastic! Being allowed to enter the EBT program would not have been possible without the support of my current and former supervisors Monika and Andreas and my former professors at the Fachhochschule der Wirtschaft (FHDW), Dr. Künzel and Dr. Baeumle-Courth. Thank you for your guidance and support, your lectures, and the reference letters for my application for the EBT program. A big thank you also goes to Ms. Carroll-Scott and Ms. Schwabe from the FHDW’s International Office: Your spontaneous willingness to translate my study documents was invaluable! I would also like to acknowledge the directors and lecturers of the EBT (now DTI) program at the University of Ottawa. The program has provided me with a wealth of valuable knowledge and skills which, not least, have enabled me to write this thesis. Finally, I would like to thank my supervisor Professor Carlisle Adams, firstly, for certainly significantly improving my prospects of successfully applying for the EBT program through his willingness to be my supervisor. Secondly, I want to thank him for his continuous guidance and support throughout my studies: I absolutely enjoyed working and talking with you and very much hope that we will stay in contact. iv Table of Contents 1. Introduction....................................................................................................................... 1 1.1. Motivation .................................................................................................................. 2 1.1.1. Terms and Definitions ........................................................................................ 2 1.1.2. Research Gap ...................................................................................................... 5 1.2. Thesis Contributions .................................................................................................. 5 1.3. Thesis Methodology and Organization ...................................................................... 6 1.4. Gendering, Synonyms & Related Terms ................................................................... 8 2. Related Work .................................................................................................................. 10 2.1. Demand for Anonymous Online Shopping .............................................................. 10 2.2. Demand for All-Steps Anonymous Purchase Platform ........................................... 11 2.3. Recent related work ................................................................................................. 14 3. Objectives ....................................................................................................................... 18 3.1. Platform Architecture Design .................................................................................. 18 3.2. Platform Prototype Implementation: GhostBuy ...................................................... 20 3.3. Evaluation of Objectives .......................................................................................... 21 4. Research Problems, Methods, Process & Important Decisions ...................................... 22 5. Prototype Design & Implementation .............................................................................. 26 5.1. Preliminary and Final GhostBuy Prototype Architecture ........................................ 26 5.2. Overview of GhostBuy Prototype Development Environment ............................... 33 5.3. Pages & Navigation of GhostBuy Prototype ........................................................... 35 5.4. Overview of Cryptographic Keys Used in GhostBuy Prototype ............................. 43 5.5. Initial Cryptographic Setup ...................................................................................... 45 5.6. Subsequent Data Processing and Data Flows .......................................................... 50 5.6.1. Loading Web Pages with De-Facto Static Content .......................................... 51 5.6.2. Dynamically Adding Encrypted Content .......................................................... 53 5.6.3. Client-Side Parameter Encryption and Submission .......................................... 56 v 5.6.4. Special Processing of Image Data and Original Product Description .............. 57 5.6.5. Client-Side Search Term Evaluation ................................................................ 59 5.6.6. Client State Preservation During Navigation ................................................... 63 5.6.7. Client to Frontend Authentication (Customer Authentication) ........................ 67 5.6.8. Client to Frontend Checkout Data Submission and Processing ....................... 70 5.6.9. Order Data Merging, Authorization, History Preparation and Placement ........ 74 5.7. Backend to Frontend Workflow Outline and Prototype Support ............................. 79 5.8. Database Implementation ......................................................................................... 83 5.9. Important Prototype Properties and Features ........................................................... 86 5.10. Package Verification and Law Enforcement Inquiries ......................................... 90 6. Evaluation ....................................................................................................................... 94 6.1. Threat Model ............................................................................................................ 94 6.2. Privacy & Anonymity .............................................................................................. 96 6.2.1. Customer Privacy and Anonymity ...................................................................