Blockchain and Digital Signatures for Digital Self-Sovereignty
Total Page:16
File Type:pdf, Size:1020Kb
BLOCKCHAIN AND DIGITAL SIGNATURES FOR DIGITAL SELF-SOVEREIGNTY ____________________ A Thesis Presented to the Faculty of the Department of Computer Science University of Houston ____________________ In Partial Fulfillment of the Requirements for the Degree Masters of Science ____________________ By Brijesh B. Patel December 2018 BLOCKCHAIN AND DIGITAL SIGNATURES FOR DIGITAL SELF-SOVEREIGNTY ___________________________________________________ Brijesh B. Patel APPROVED: ___________________________________________________ Dr. Weidong Shi, Chairman Dept. of Computer Science ___________________________________________________ Dr. Nikolaos V. Tsekos Dept. of Computer Science ___________________________________________________ Dr. Chris Bronk Dept. of Information System Security ___________________________________________________ Dan Wells, Dean College of Natural Sciences and Mathematics II BLOCKCHAIN AND DIGITAL SIGNATURES FOR DIGITAL SELF-SOVEREIGNTY ____________________ An Abstract of a Thesis Presented to the Faculty of the Department of Computer Science University of Houston ____________________ In Partial Fulfillment of the Requirements for the Degree Masters of Science ____________________ By Brijesh B. Patel December 2018 III Abstract Principles of self-sovereignty have been integrated into the solution to achieve a mechanism where the user is in control of one's digital identity attributes. Through the use of attribute-based credentials, the solution presented here allows the user to control access to their digital identity attributes, so they only have to release the required attributes to the business entities. Selective disclosure proofs, enabled by cryptographically signed containers, allow for minimization of identity attributes transferred to execute a transaction. The user can consent to access of one's identity attributes by granting access licenses to business entities through a blockchain application running on their mobile device. Also, the user can modify the access license to restrict the access based on time or revoke access to any identity attribute. Privacy of identity attributes and access licenses stored on mobile devices is ensured by integration of transparent data encryption. Dependency on any middleman entity required by several other identity management solutions is eliminated through the use of digital signatures. The communication between actors involved in each transaction is encrypted through a PKI infrastructure ensuring the security of claims packages transferred. The solution enables portability through use of digital signature to verify the validation of identity attributes done by the identity guarantor. The user is able to determine the lifespan of any identity attribute through the mobile application and remove it from any future digital transaction. The solution presented here allows IV for the application of theoretical principles of self-sovereign identity into the everyday life of the user. V Contents 1. INTRODUCTION ______________________________________________________ 1 1.1 Digital Identity ___________________________________________________________ 1 1.2 Authentication___________________________________________________________ 3 1.3 Centralized Vs. Decentralized _______________________________________________ 6 1.4 Blockchain ______________________________________________________________ 8 1.5 Research _______________________________________________________________ 9 2 IDENTITY MANAGEMENT ______________________________________________ 12 2.1 Concepts ______________________________________________________________ 12 2.1.1 Know Your Customers (KYC) ____________________________________________________ 12 2.1.2 Federation ___________________________________________________________________ 13 2.1.3 Claims ______________________________________________________________________ 15 2.1.4 Self-sovereign Identity _________________________________________________________ 17 2.1.5 Attribute-based credentials _____________________________________________________ 19 2.1.6 Identity Governance Framework _________________________________________________ 20 2.2 Real-world examples _____________________________________________________ 21 2.2.1 BanQu App __________________________________________________________________ 21 2.2.2 Bitnation ____________________________________________________________________ 22 2.2.3 BlockAuth ___________________________________________________________________ 23 2.2.4 Civic ________________________________________________________________________ 23 2.3 Consumer expectations __________________________________________________ 24 3. BLOCKCHAIN ________________________________________________________ 26 3.1 History ________________________________________________________________ 26 3.2 Cryptocurrency _________________________________________________________ 28 3.2.1 Bitcoin ______________________________________________________________________ 28 3.2.2 Ethereum ___________________________________________________________________ 29 3.3 Blockchain components __________________________________________________ 31 3.3.1 Nodes ______________________________________________________________________ 31 3.3.2 Blocks ______________________________________________________________________ 32 3.3.3 Transaction __________________________________________________________________ 33 3.3.4 Hash Functions _______________________________________________________________ 34 3.3.5 Consensus ___________________________________________________________________ 35 3.4 Fields of applications _____________________________________________________ 37 VI 4. SOLUTION __________________________________________________________ 42 4.1 Necessities _____________________________________________________________ 42 4.1.1 Shortcomings ________________________________________________________________ 42 4.2. High-level Architecture __________________________________________________ 43 4.2.1 Actors ______________________________________________________________________ 43 4.2.2 Use cases____________________________________________________________________ 46 4.3 User __________________________________________________________________ 47 4.3.1 Attribute creation _____________________________________________________________ 47 4.3.2 User granting access license ____________________________________________________ 51 4.3.3 Tacking usage by Relying party __________________________________________________ 54 4.3.4 User revoking or editing license __________________________________________________ 56 4.3.5 Effect on User ________________________________________________________________ 57 4.4 Other actors ____________________________________________________________ 58 4.4.1 Identity guarantor: Validation of identity attributes _________________________________ 58 4.4.2 Effect on identity guarantor _____________________________________________________ 58 4.4.3 Effect on relying party _________________________________________________________ 59 4.5 Communication and storage _______________________________________________ 59 4.5.1 Secure communication _________________________________________________________ 60 4.5.2 Storage of attributes __________________________________________________________ 61 4.5.3 Limitation ___________________________________________________________________ 62 5. Future and Conclusion ________________________________________________ 63 5.1 Online shopping ________________________________________________________ 63 5.2 Single-sign on___________________________________________________________ 63 5.3 Conclusion _____________________________________________________________ 64 REFERENCES __________________________________________________________ 65 VII List of Figures Figure 1.1 Single Sign-on Sequence Diagram ..................................................... 4 Figure 1.2 Centralized vs Decentralized .............................................................. 6 Figure 1.3 Structure of blockchain ....................................................................... 8 Figure 2.1 Federated identity management ....................................................... 14 Figure 2.2 Web service with STS ....................................................................... 16 Figure 2.3 BanQu App ....................................................................................... 22 Figure 4.1 High-level application architecture .................................................... 45 Figure 4.2 Use case diagram ............................................................................. 46 Figure 4.3 Attribute creation............................................................................... 50 Figure 4.5 User granting access license ............................................................ 52 Figure 4.6 Accessing attributes with license ...................................................... 56 Figure 4.7 Certification and keys ....................................................................... 61 Figure 4.8 Digital certification............................................................................. 61 VIII 1. INTRODUCTION 1.1 Digital Identity Digital identity is the network or Internet equivalent to the real identity of a person or entity (like a business or government agency) when used for identification in transactions from PCs, cell phones, or other personal or commercial devices [1]. This identity is based on a person’s real identity and requires the person to validate their real