APPLICATION of BLOCKCHAIN NETWORK for the USE of INFORMATION SHARING by Linir Zamir
Total Page:16
File Type:pdf, Size:1020Kb
APPLICATION OF BLOCKCHAIN NETWORK FOR THE USE OF INFORMATION SHARING by Linir Zamir A Thesis Submitted to the Faculty of The College of Engineering and Computer Science in Partial Fulfillment of the Requirements for the Degree of Master of Science Florida Atlantic University Boca Raton, FL August 2019 Copyright 2019 by Linir Zamir ii ACKNOWLEDGEMENTS I would like to thank my committee members: Dr. Feng-Hao Liu, my commit- tee chair; Dr. Mehrdad Nojoumian and Dr. Elias Bou-Harb for their encouragement, insightful comments and hard questions. I would also like to thank my mother, who supported me with love and understanding. Without you, I could never have made it this far in my academical studies and generally in life. iv ABSTRACT Author: Linir Zamir Title: Application of Blockchain networkfor the use of Information Sharing Institution: Florida Atlantic University Thesis Advisor: Dr. Feng-Hao Liu Degree: Master of Science Year: 2019 The Blockchain concept was originally developed to provide security in the Bitcoin cryptocurrency network, where trust is achieved through the provision of an agreed-upon and immutable record of transactions between parties. The use of a Blockchain as a secure, publicly distributed ledger is applicable to fields beyond finance, and is an emerging area of research across many other fields in the industry. This thesis considers the feasibility of using a Blockchain to facilitate secured infor- mation sharing between parties, where a lack of trust and absence of central control are common characteristics. Implementation of a Blockchain Information Sharing system will be designed on an existing Blockchain network with as a communicative party members sharing secured information. The benefits and risks associated with using a public Blockchain for information sharing will also be discussed. v APPLICATION OF BLOCKCHAIN NETWORK FOR THE USE OF INFORMATION SHARING 1 Introduction .............................. 1 1.1 Preliminaries...............................2 1.1.1 Digital Currency and Cryptocurrency..............2 1.1.2 Blockchain Technology......................2 1.1.3 Bitcoin...............................6 1.1.4 Ethereum.............................8 1.1.5 EOSIO...............................9 1.1.6 Byzantine Generals Problem................... 10 1.1.7 Proof of Work (PoW)....................... 14 1.1.8 Proof of Stake (PoS)....................... 16 1.1.9 Smart Contracts......................... 16 1.1.10 Information Sharing....................... 18 1.2 Problem Definition............................ 20 2 Literature Review ........................... 21 2.1 Protecting Personal Data......................... 21 2.2 Medical Implementation......................... 24 2.3 Technology Implementations....................... 27 2.3.1 Mobile Technology........................ 27 2.3.2 Smart Cars............................ 29 2.3.3 Cybersecurity........................... 30 2.3.4 Big Data.............................. 32 vi 3 Research Methods and Analysis ................... 35 3.1 Prerequisites................................ 35 3.2 Design................................... 37 3.2.1 System Design.......................... 37 3.2.2 Implementation.......................... 39 3.2.3 Testing............................... 41 3.2.4 Types of Data........................... 43 3.3 Analysis.................................. 43 3.3.1 Resources............................. 44 3.3.2 Performance............................ 46 3.3.3 CIA Model............................ 47 3.3.4 STRIDE Model.......................... 48 4 Concluding remarks and future directions . 51 4.1 Conclusion................................. 51 4.2 Future Work................................ 52 Bibliography .............................. 53 vii CHAPTER 1 INTRODUCTION Secured Information Sharing has always been an interest in the Crypto Security community, especially in the recent years with the increase in exposure technology. There are many industries that need to have efficient, and secured Information Sharing as part of their activities. Solving This problem is not an easy task, and it is good to look at different technologies as a possible solution for secured sharing platform. One such platform is the Blockchain. Blockchain technology is an open, decentralized digital ledger where transactions are recorded between people so that the record can't be altered without the alternation of all subsequent blocks on the network. This technology was first introduce in 2008 by a Satashi Nakamoto [1] to serve as the public transaction ledge of the cryptocurrency Bitcoin, a digital currency that has been used ever since. Bitcoin, the decentralized peer-to-peer digital currency, is the most popular example that uses Blockchain technology, but Blockchain technology has worked flawlessly and found wide range of applications in both financial and non-financial world. The wide range of applications include Authentications, Electronic music industry, storage and much more [2]. One possible application for the Blockchain technology is to use it as the platform for Secured Information Sharing. This application has only recently been discussed, and there is much more to learn in that area. 1 1.1 PRELIMINARIES 1.1.1 Digital Currency and Cryptocurrency Digital currency is a payment method which exists only in electronic form and is not tangible. Digital currency is transferred between parties with the help of some algorithm in order to make the transaction secured. Digital currencies can be used to purchase goods and services but can also be restricted to certain online communities such as a gaming or social networks. Digital Currency is the term used to describe all electronic money, that includes both virtual currency and cryptocurrency. It is only available in digital or electronic form and unlike a bill or a coin, it is intangible. This currency is usually decentralized, and the lack of intermediaries means transactions are typically instantaneous and have no or very little fees. Cryptocurrency are currencies that have encryption algorithm as part of its creation. Now a days, many cryptocurrencies operate on a Blockchain decentralized systems without the need for a trusted third-party. Unlike cash, which is entirely anonymous, transactions carried out with cryptocurrencies are stored. 1.1.2 Blockchain Technology Blockchain, as the name suggests, is a chain of blocks that contains information. The first time this type of data structure was introduced was in 1990 by Stuart Habert and W.Scott Strornetta [3] and was originally intended to timestamp digital documents so that it is not possible to temper with them. However, it was mostly unused until it was adapted by an unknown person goes by the name of Satoshi Nakamoto in 2008 [1] as a core component to support transactions of the digital currency, specifically Bitcoin. These transactions are stored on a constantly growing ledger, as new transactions, or blocks, are added to it. Each block includes the 2 cryptographic hash of the prior block (a timestamp and a link), linking the two. The linked blocks form a chain, hence the name 'Blockchain'. Blockchain Technology is based on the idea that each participant has access to a shared ledger. This system provided a reasonable solution to the problem of establishing trust in an unsecured environment without relying on a third-party. This technology gives a solution to a problem with digital cash, the double-spend problem [4], a case where an individual can use the same 'coin' for more than one purchases. Blockchain technology solves the double-spend problem by combining the P2P (peer-to-peer) file sharing technology with public-key cryptography [5] to make a new form of digital money. Coin ownership is recorded in the public ledger and confirmed by cryptographic protocols and the mining community. The Blockchain is trustless in the sense that a user does not need to trust the other party in the transaction, or a central interme- diary, but does need to trust the system: the Blockchain protocol software system. The "blocks" in the chain are groups of transactions posted sequentially to the ledger, that is, added to the "chain". The basic idea behind the Blockchain Technology is that it allows parties to transact digital assets using a P2P network that stores these transactions in a distributed way across the network. The owners of the assets, and the transactions involving change of ownership, are registered on the ledger by the use of public key cryptography and digital signatures. Every transaction is validated by the nodes in the network by employing some kind of a 'consensus mechanism' (a consensus protocol). This works as follows. Whenever a transaction is entered into the P2P network, the nodes first validate the transaction. If the nodes agree on its legitimacy, they confirm the transaction and this decision is laid down in a block. This new block is added to the previous chain of blocks and is then locked. In this way, the latest block maintains a shared, agreed-upon view of the current state of the Blockchain. All transactions are stored in a ledger which all involved nodes hold a copy of. For security reasons, 3 Figure 1.1: Example of Blockchain [6] each block includes the hash of the prior block. The hash is used to identify the information and to ensure the integrity of the data. The linked blocks form a chain, hence the name Blockchain. A ledger contains the shared and agreed-upon state of the Blockchain and the list of transactions that were processed by the nodes. Every