Blockchain based remote voting system: a performance perspective

Date

2021-08-05

Authors

Paneru, Sushil

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Although cryptography based remote voting protocols have been researched since 1981, most of the previous protocols [9], [5], [13] assume the existence of public bul- letins or, in other words, a publicly readable, tamper-proof, append-only log. As blockchain or distributed ledger technology (DLT) offers properties like irreversibil- ity, transparency and decentralization, it is suitable for realization of public bulletin board for the voting system. We see a gap in the research of blockchain based voting systems because there either exists work on just the protocol aspect of the voting system or the performance aspect of the blockchain. As blockchain is a general purpose tool, we believe that there lies opportunities for micro-optimizations that could specifically benefit the voting system. This ushered us to focus our effort on the performance aspect of integration of voting protocol with blockchain. Hence, in this thesis, we first introduce a homomorphic encryption based voting protocol that uses blockchain, Hyperledger Fabric (HLF), as bulletin board. The protocol is de- signed such that it leverages the transaction processing characteristics of underlying DLT. We then created an experiment where we designed a smart contract, set up a blockchain network and exposed the system to 40k concurrent voting transactions to profile the code of HLF. From the profile data, it was found that execution of cryptographic operations constitutes most of the transaction processing time. This led us to benchmark cryptographic libraries for SHA256 and digital signature algo- rithm and integrate the faster library into HLF for better performance. We also found that the transaction manager of HLF does not need read-write locks to ensure transaction isolation in special scenarios, which alleviates the performance drop due to lock contention. Altogether we were able to improve the throughput and latency of the baseline system by more than 30%. Lastly, we make a comparison between public and permissioned DLT based remote voting system and discuss the suitability of permissioned blockchain for the application of voting systems.

Description

Keywords

blockhain, hyperledger fabric, voting system, code profiling

Citation