Proof of Stake Blockchain: Performance and Scalability for Groupware Communications
Total Page:16
File Type:pdf, Size:1020Kb
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/320020915 Proof of Stake Blockchain: Performance and Scalability for Groupware Communications Conference Paper · November 2017 DOI: 10.1145/3167020.3167058 CITATIONS READS 3 1,705 2 authors: Jason Spasovski Peter W. Eklund IT University of Copenhagen Deakin University 1 PUBLICATION 3 CITATIONS 211 PUBLICATIONS 1,845 CITATIONS SEE PROFILE SEE PROFILE Some of the authors of this publication are also working on these related projects: Blockchain research View project Documenting Publications View project All content following this page was uploaded by Peter W. Eklund on 25 September 2017. The user has requested enhancement of the downloaded file. Proof of Stake Blockchain: Performance and Scalability for Groupware Communications Jason Spasovski and Peter Eklund IT University of Copenhagen Rued Langgaards Vej 7 2300 Copenhagen, Denmark [email protected], [email protected] ABSTRACT demonstrate the consequences of security failures in com- A blockchain is a distributed transaction ledger, a disruptive mercial communication software. The blockchain, or dis- technology that creates new possibilities for digital ecosys- tributed ledger, is a way of decentralizing database control. tems. The blockchain ecosystem maintains an immutable Likewise, the importance of scalability is particularly visible transaction record to support many types of digital ser- in web-based applications, system performance is critical to vices. This paper compares the performance and scalability the growth of a user base [14]. of a web-based groupware communication application using Collaboration tools are on-line services used by large audi- both non-blockchain and blockchain technologies. Scalabil- ences and are characterized by countless database changes, ity is measured where message load is synthesized over two with the addition of other special requirements, such as the typical communication topologies. The first is 1 to n net- need for low response times and confidential data storage. work { a typical client-server or star-topology with a central These requirements prove to be a challenge to both security and scalability. vertex (server) receiving all messages from the remaining 3 n − 1 vertices (clients). The second is a more naturally One such collaboration tool is the web application dallr . occurring scale-free network topology, where multiple com- The first author Spasovski (with Andreassen and Lyck) de- munication hubs are distributed throughout the network. veloped dallr to create a simple intuitive platform with a System performance is tested with both blockchain and non- flat learning curve to target small to medium sized compa- blockchain solutions using multiple cloud computing config- nies. dallr is a groupware communication application that urations. We analyze the empirical results from each con- provides the platform for our empirical comparison. figuration to identify the costs and overhead of blockchain A major threat to any database are tampering attacks. In technology. such attacks the database is partly or completely controlled by an unauthorized third party. Database tampering can be performed in many ways, each reflecting the possible severity General Terms of the attack, depending on the level of privileges held by Groupware communication, distributed ledger ecosystems, the adversary. As a concrete example, if an adversary were blockchain, scale-free networks, distributed & cloud com- to use SQL injection, they would most likely only be able to puting. tamper with the database with minimal privileges, whereas if an adversary gains access to an administrator account, the 1. INTRODUCTION entire database could be deleted. A common approach to deal with database tampering is Security and scalability are chief concerns when provid- auditing [12], a collection of methods to verify the integrity ing data storage and communication solutions in a transac- of the database by simple procedures such as inserted check- tional digital ecosystem. Recent security vulnerabilities ex- sums. The main concern with auditing is that it does not posed in well-established companies, e.g. ebay 1 and Sony 2 protect against an adversary gaining access to the adminis- 1\eBay faces investigations over data breach", BBC trator privileges. An alternative to deal with database tam- News, May, 2014, see http://www.bbc.com/news/ pering is to use an immutable database, such as Datomic4. technology-27539799 Immutable databases lift the modify and delete functional- 2 \Sony PlayStation suffers massive data breach", ity, thus making them immutable by design and allow for Reuters, April, 2011, see http://www.reuters.com/ extreme scalability and performance. article/us-sony-stoldendata-idUSTRE73P6WB20110426 The current trending method to deal with data tamper- ing is by using a decentralized blockchain [15] { a distributed cryptographic ledger. Blockchain is a distributed database consisting of linked blocks that contain timestamped and Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are valid transactions. These blocks are linked using the hash not made or distributed for profit or commercial advantage and that copies 3 bear this notice and the full citation on the first page. To copy otherwise, to J. Spasovski, A. Lyck, J. Andreassen. Collaboration with- out a learning curve [Software], see http://www.dallr.com. republish, to post on servers or to redistribute to lists, requires prior specific 4 permission and/or a fee. Pavlou, Kyriacos E., and Richard T. Snodgrass The fully MEDES 2017 transactional, cloud-ready, distributed database. [Software], Copyright 2017 ACM X-XXXXX-XX-X/XX/XX ...$5.00. see http://www.datomic.com/. of the previous block, creating a chain of blocks where each blockchain data and implemented using an AVL tree, also block reinforces the integrity of its predecessor. Chaining refereed to as a self balancing binary search tree. Merkle blocks in this cryptological manner prevents data stored in trees have one main difference from normal tree-based data the blocks { the blockchain { to be easily tampered. Decen- structures: a value in the tree can always be verified by re- tralization of the blockchain adds an extra layer of security hashing all the way from the selected node upwards to the by distributing the blockchain over multiple decentralized root of the tree, which will take O(log n) time. On every in- participating network nodes, each containing a copy of the sert the the trail of the inserted node is rehashed from where blockchain. In this way, the blockchain cannot be controlled the node is inserted all the way to the root node. or exploited through a single point of attack on any single All blockchains fall into one of two categories, namely node. Public or Private. Public-blockchains are those that allow Blockchain has few benefits over traditional databases while all users on the network to view the data you store, while having multiple trade offs, therefore it is important that the private blockchains hide all data stored on the blockchain be- motivation for using a blockchain is worth the trade offs. tween its permissioned participants. Private blockchains can Our motivation for using a blockchain is primarily to pro- be either fully private or consortium blockchains. Read and tect against database tampering while other use cases could write permissions of a fully private blockchain are controlled be motivated by the decentralized blockchain's ability to re- by a single organization, which can be viewed as a central- move the need for a middle man to authorize transactions. ized database with added cryptographic security. Consor- A large body of work [15, 10, 7] demonstrates that decen- tium blockchains are where the read and write permissions tralized blockchain allows for strong irrefutability and au- are distributed across a permissioned consortium which adds ditable data storage. In most cases, when using a blockchain the extra security of decentralization. to increase the security of a web application, the scalabil- ity and performance of the application is significantly de- 3. IMPLEMENTATION creased [6]. This is due to the overhead of the different Figs. 1 and 2 show User 1 sending a message to User 2. consensus algorithms that secure the blockchain. Fig. 1 does not use a blockchain while in Fig. 2 a blockchain This paper is structured as follows. Section 2 presents a is used. survey of the basic theory behind blockchain, as well as de- scribing some of the mechanisms used in implementations. Section 3 presents the technologies and architecture used and give details of the implementation of both blockchain and non-blockchain versions of dallr. In Section 4, we present the test scenarios and cloud environments used through- out the tests. In Section 5 experimental results are presented focusing particularly on response time and throughput. In Section 6 we confront expectations with the experimental findings, thereafter we analyze each of the results attained. Lastly, in Section 7 we conclude with a brief summary of the experimental results and analysis. Figure 1: Flow diagram of User 1 sending a message 2. BLOCKCHAIN to User 2 without a blockchain. Consensus algorithms are used within blockchains to en- sure that the participating nodes in the distributed system agree with the current state of the blockchain before each new block is added [5]. Blockchain