Investigating performance constraints for blockchain based secure e-voting system

https://doi.org/10.1016/j.future.2019.11.005Get rights and content

Abstract

Voting is one of the fundamental pillars of modern democracy. Continuous efforts have been made to strengthen the processes and methods involved to achieve verifiable, transparent voting systems. In recent years, blockchain has been increasingly used to address multi-dimensional challenges across widespread application domains including healthcare, finance and e-voting. However, achieving an efficient solution via use of blockchain requires consideration of a range of factors such as block generation rate, transaction speed, and block size which have a profound role in determining the overall performance of the solution. Current research into this aspect of blockchain is focused on Bitcoin with the objective to achieve comparable performance as of existing online payment systems such as VISA. However, there exists a gap in literature with respect to investigating performance constraints for wider application domains. In this paper, we present our efforts to address this gap by presenting a detailed study into performance and scalability constraints for an e-voting system. Specifically, we conducted rigorous experimentation with permissioned and permissionless blockchain settings across different scenarios with respect to voting population, block size, block generation rate and transaction speed. The experiments highlighted interesting observations with respect to the impact of these parameters on the overall efficiency and scalability of the e-voting model including trade-offs between different parameters as well as security and performance.

Introduction

Voting is one of the fundamental characteristics of human democracy with continuous efforts made throughout human history to improve the processes, mechanisms and methods involved to conduct voting in a verifiable, transparent and accessible manner. The advent of Information and Communication Technologies (ICT), has brought renewed emphasis on using ICT to facilitate voting processes primarily to enable transparency and accessibility. Since its first use as punched-card ballots in 1960’s, e-voting systems have achieved remarkable progress via the internet technologies [1] with a range of terminologies used such as e-voting (using a machine in a polling station), digital voting (use of electronic devices such as voting machines) and i-voting (using web browser to cast vote). The focus of our research is on using advancements in ICT via electronic machines in polling stations as part of a public vote (commonly called General Election in the UK) with the view of investigating challenges in this respect and potential solutions to address them.

Blockchain has attracted significant attention with prominent applications across finance [2], healthcare [3] and supply chain management systems [4]. A Blockchain resembles a data structure which maintains and shares all the transactions being executed through its genesis. It is primarily a distributed decentralized database that maintains a complete list of constantly germinating and growing data records secured from unauthorized manipulation, tampering and revision. Blockchain allows every user to connect to the network, send new transactions to it, verify transactions and create new blocks [5], [6], [7]. Each block is assigned a cryptographic hash (which may also be treated as a fingerprint of the block) that remains valid as long as the data in the block is not altered. If any changes are made in the block, the cryptographic hash would change immediately indicating a change in the data which may be due to a malicious activity. Therefore, due to its strong foundations in cryptography, blockchain has been increasingly used to mitigate against unauthorized transactions across various domains [7], [8], [9].

Electronic voting (e-voting) is one of the emerging applications of blockchain whereby researchers aim to leverage benefits such as integrity, anonymity and non-repudiation which are critical for a voting application. Use of blockchain to facilitate e-voting applications has received significant attention recently with efforts such as [10], [11], [12], [13] leveraging blockchain technology to achieve secure and verifiable voting. Specifically, blockchain enables creating a pool of voters by generating unique physical addresses which can be used to represent the voter population and the candidates. A single voting token may be issued to every voter corresponding to their unique address thereby representing a unique voter. Similarly, some addresses are reserved to identify candidates which may then be used to transfer voting token from voter’s addresses. The voting transaction generated by the voter contains the transfer of voting token to his desired candidate as a receiver’s address. This transaction becomes part of the main blockchain when confirmed into a block by one of the designated miners. The connected node to the seed node then takes part in the data synchronization process to update the public ledger of blockchain along with its local copy. This process enables achieving strong non-repudiation for the e-voting application as the record of the transaction becomes immutable due to consensus protocol acknowledged by all miners.

Whilst existing research has focused on leveraging benefits of blockchain such as those highlighted above, efforts with respect to in-depth investigation into challenges surrounding scalability of blockchain based solutions are primarily limited to cryptocurrencies such as Bitcoin. For instance, [14] is one of leading efforts to investigate scalability constraints of Bitcoin where authors investigated practical limitations in achieving performance level expected with respect to attributes including time required to mine a transaction into the block of the longest blockchain, processing rate for number of transactions, time required to download and run a full copy of blockchain from scratch in order to participate in the process of transaction validation, costs incurred due to purchasing, maintaining and working of resources (such as electricity utilization). The motivation for this and other similar research is the comparison with mainstream online payment system such as VISA. Specifically, VISA can process up to 2000 transactions per second whereas Bitcoin system is limited to 7 transactions per second primarily due to limits on block generation rate and transaction processing speed [15], [16], [17].

However, wider applications of blockchain mentioned earlier use platforms such as Ethereum [18] and Multichain [19] that are fundamentally different from Bitcoin with respect to factors such as block generation rate, consensus algorithm, transaction process rate and block size. These parameters have profound role in determining scalability of a blockchain based solution. Furthermore, the throughput of a blockchain based system not only depends upon factors such as the capacity of infrastructure such as hashing power and memory but also on the type of transactions used within an application. Additionally, in scenarios such as e-voting in public domain, large number of transactions are expected to be recorded in blockchain concurrently. Therefore, if the rate of incoming transactions to the unconfirmed pool of transactions does not match to rate of confirmation of transactions to the blocks by the miners, it can result in significant performance overhead as well as delays in transaction confirmation time. Consequently, an in-depth investigation is required to identify and assess challenges with respect to scalability for wider application domains such as the one considered in this paper.

In view of the above challenges, we conducted a thorough investigation into the challenges surrounding scalability ofblockchain based applications in general and blockchain based e-voting applications in particular. Our investigation includes experimentation with a blockchain test-bed hosting an e-voting application focusing on variety of scenarios across permissioned and permissionless blockchain settings. Permissionless setting simulates environments with smaller number of users adopting a public blockchain with experimentation varying with respect to level of difficulty to mine a block, the block-size and average block creation time. These experiments reveal significant trade-off between transaction block size, block generation rate, and transaction processing speed. Furthermore, scenarios with permissioned blockchain aim to simulate e-voting environments with large number of voters such as public voting systems. The experimentation involves evaluation of the system with respect to the volume of transactions as well as the number of remote client voting machines operating from different network locations to observe impact of such constraints on the overall performance of a blockchain based system.

We present the findings from our investigation in this paper with the aim to aid research community to understand the caveats with respect to achieving scalable blockchain based solutions as well as expanding new horizons in this respect. Consequently, through our investigation, we are able to provide a rigorous assessment of the capability of the underlying blockchain fabric and identify potential trade-offs required to achieve desired level of performance. Specifically, the paper makes the following contributions:

  • A thorough investigation is performed aimed at identifying and highlighting significance of parameters such as block size, block generation rate and transaction processing speed to achieve scalable solutions using blockchain technology.

  • Rigorous experimentation is conducted which aims to identify and highlight performance constraints for both permissioned and permissionless blockchain settings which can potentially aid researchers in wide range of application domains.

  • A novel blockchain based e-voting system is presentedwhich investigates the capabilities of blockchain technology to achieve e-voting for permissioned and permissionless voting models.

Rest of the paper is organized as follows: Section 2 presents a background for e-voting systems providing important context to cutting edge research within this domain. Section 3 presents a summary of existing work with respect to scalability research within blockchain identifying the gap addressed by this research. Section 4 presents an overview of the proposed e-voting system followed by details of implementation and experimentation in Section 5 which also includes details of different scenarios and an analysis of results observed. Section 6 concludes the paper.

Section snippets

Electronic voting

Electronic voting has been an area of research focus for many years by using computing machines and equipment to cast votes and produce high quality and precise results in accordance with the sentiments of the participating voters. Various attempts have been adopted in practice to support election process through the use of ICT. One of the first uses of technology involved casting vote on paper which were scanned and tallied at every polling cell on a central server [6], [20], [21]. Direct

Related works

With respect to existing work related to investigating performance and scalability of blockchain, most of the efforts are focused at cryptocurrency applications of blockchain such as Bitcoin. A primary reason for this is the comparison with existing online payment systems such as VISA which have the capability to process 2000 transactions per second whereas a Bitcoin system can only process 7 transactions per second. A fundamental cause of Bitcoin’s comparatively low performance is due to the

A blockchain based e-voting system

We have developed a blockchain based e-voting system for public voting which is also presented at its initial stage in [33] and illustrated in Fig. 1. In this paper, we present an overview of our model including interactions between different entities involved to provide context to the experimentation and analysis. We use our e-voting system as an example scenario to identify and analyse scalability considerations within a blockchain based system.

As presented in Fig. 1, the electoral process

Implementation and experimentation

In order to evaluate our voting model with respect to both permissionless and permissioned access of blockchain network, an experimental setup was established as a test bench. The setup consisted of miners, full blockchain node containing list of candidates and voters, and a client for submitting voting transactions to the blockchain node. The blockchain was implemented using an open source blockchain platform Multichain using its Alpha 4 version released in August, 2018. We selected this

Conclusion

Blockchain is a disruptive technology and has attracted significant attention with prominent applications across diverse application domains including supply chain management, gaming, healthcare, real estate and finance. Electronic or e-voting is one of the emerging applications of blockchain where researchers have proposed to leverage blockchain capabilities to achieve integrity, anonymity and non-repudiation which are critical for a voting application. Current research into scalability and

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Kashif Mehboob Khan graduated in Computer Engineering from Sir Syed University of Engineering & Technology in 2005–2006 followed by Master in C.S. & I.T. from N.E.D University of Engineering & Technology in 2009. He is currently a PhD student in information security at the N.E.D. University, Pakistan.

References (43)

  • GobelJ. et al.

    Bitcoin blockchaindynamics: The selfish-mine strategy in the presence of propagation delay

    Perform. Eval.

    (2016)
  • RyanP.

    Pret a voter with paillier encryption

    Math. Comput. Modelling

    (2008)
  • TreleavenP. et al.

    Blockchain technology in finance

    Computer

    (2017)
  • MettlerM.

    Blockchain technology in healthcare: The revolution starts here

  • TianF.

    An agri-food supply chain traceability system for china based on rfid amp; blockchain technology

  • RosenfeldM.

    Analysis of hashrate-based double spending

    (2014)
  • PraharshJha et al.

    Double spending prevention in bitcoins network

    Int. J. Comput. Eng. Appl.

    (2015)
  • NakamotoS.

    Bitcoin: A peer-to-peer electronic cash system

    (2009)
  • KraftD.

    Difficulty control for blockchain-based consensus systems

    Peer-to-Peer Netw. Appl.

    (2015)
  • Bonneau Joseph, Felten Edward, Miller Andrew, A. Narayanan, S. Gold, Bitcoin and Cryptocurrency Technologies,...
  • KhouryD. et al.

    Decentralized voting platform based on ethereum blockchain

    (2018)
  • KshetriN. et al.

    Blockchain-enabled e-voting

    IEEE Softw.

    (2018)
  • SunX. et al.

    A simple voting protocol on quantum blockchain

    Internat. J. Theoret. Phys.

    (2018)
  • ShahzadB. et al.

    Trustworthy electronic voting using adjusted blockchain technology

    IEEE Access

    (2019)
  • CromanK. et al.

    On scaling decentralized blockchains

  • XuX. et al.

    A taxonomy of blockchain-based systems for architecture design

  • ZhengZ. et al.

    An overview of blockchain technology: Architecture, consensus, and future trends

  • ZhengZ. et al.

    Blockchain challenges and opportunities: A survey

    Int. J. Web Grid Serv.

    (2018)
  • E. Project. Blockchain app platform. [Online]. Available:...
  • Multichain. Open platform for blockchain applications. [Online]. Available:...
  • Bitcongress – process for block voting and law

    (2019)
  • Cited by (0)

    Kashif Mehboob Khan graduated in Computer Engineering from Sir Syed University of Engineering & Technology in 2005–2006 followed by Master in C.S. & I.T. from N.E.D University of Engineering & Technology in 2009. He is currently a PhD student in information security at the N.E.D. University, Pakistan.

    Junaid Arshad is a Senior Lecturer at the University of West London. Junaid achieved his PhD from the University of Leeds, UK where he investigated the challenge of effective intrusion severity analysis for clouds. Junaid’s research areas involve distributed computing, high performance computing such as grid and cloud computing, service oriented computing and Internet of Things emphasizing security challenges including intrusion detection and response, trust establishment and management, and security event classification.

    Muhammad Mubashir Khan is an Associate Professor in the Department of Computer Science and Information Technology at NED University of Engineering and Technology, Karachi Pakistan. He received his PhD degree in Computing from University of Leeds, UK in 2011. He did postdoctoral research in Quantum Information Group University of Leeds, UK in 2015–16. His current research interests include Network and Information Security, Cybersecurity and Quantum Cryptography.

    View full text