Architecture-Centric Evaluation of Blockchain-Based Smart Contract E-Voting for National Elections
Abstract
:1. Introduction
2. Background and Related Work
2.1. E-Voting for National Elections
2.2. Overview of Blockchain Technology
2.3. Related Work
3. Research Design
3.1. Overview of Elicited E-voting Requirements for South Africa
- (i)
- Trust: All stakeholders must have confidence and trust in the e-voting system. This will depend on multiple aspects such as security, transparency, auditability, verifiability and other essential attributes.
- (ii)
- Transparency: The system should support the casting of votes and tally of votes by all stakeholders, as well as allow them to verify this easily.
- (iii)
- Verifiability: The system must enable voters to check that their votes were cast and recorded as valid votes for a candidate of their choice without any error or internal manipulation.
- (iv)
- Auditability: The system must be able to support any process that may necessitate the rechecking and recounting votes in the event of electoral disputes.
- (v)
- Availability: The system must have sufficient mechanisms in place to forestall instances of down-time during the period of elections.
- (vi)
- Performance: The system must ensure that all operations are handled speedily and efficiently. Efficiency depends on the overall system’s throughput such as the number of transactions per time (seconds/minutes), and the response time to user queries.
- (vii)
- Non-coercion of voters: The system must minimise the risk of voters being coerced to vote in certain ways by preventing manipulation and intimidation of voters. The system must be able to conceal the identity of voters, and the choices made during voting.
- (viii)
- Socio-economic influences: Politicians should not be able to exploit the poor socio-economic status of some voters to unduly influence them to vote in a particular way. This is a particularly significant problem in South Africa, and indeed in many elections in Africa.
- (ix)
- Socio-political factors: The e-voting system should not be vulnerable to socio-political manipulations that can compromise the integrity of the voting process.
3.2. A Proposed Blockchain Architecture for National Elections
- (i)
- E-Voting nodes: The primary purpose of these nodes is to enable voters authentication and casting of votes, and to ensure that all blockchain transactions are recorded.
- (ii)
- Administrator nodes: These nodes are used to configure blockchain network channels, assign roles to the nodes of the blockchain, grant permissions, and set the level of access control for specific nodes.
- (iii)
- Public nodes: These are the nodes that enable view-only public access to transactions of the e-voting blockchain.
- (iv)
- Vote validation: These nodes are responsible for vote validation. They are also used to ensure the authenticity of transactions that are included in a block.
- (v)
- Committing nodes: These are the nodes that validate and commit new blocks to the blockchain.
3.3. Other Vital Aspects of the Blockchain Architecture
3.4. A Process View of the Blockchain Architecture for E-Voting (BANES)
- (i)
- The voter inserts the personal smart card into the voting node and supplies a password.
- (ii)
- Authentication and authorisation of the votes take place via the IEC database.
- (iii)
- If successful, a digital ballot is generated by the IEC system. A digital ballot consists of a set of candidate public keys and a unique ballot ID
- (iv)
- Voter submits a vote for the preferred candidate.
- (v)
- The ballot ID is assigned to the preferred candidate through their public key. The transaction is authenticated by using the digital signature of the private key.
- (vi)
- The transaction is sent to all nodes and stored on the blockchain.
4. ATAM Evaluation
4.1. Assessing Blockchain E-voting Architecture Using the Trade-Off Analysis Method (ATAM)
4.2. Use of Scenarios for evaluation of Business Drivers and Quality Attributes
4.3. Observations Based on ATAM Activities and Scenarios
5. Discussion of Findings from ATAM Evaluation
6. Security Analysis of the Hyperledger Fabric for National E-Voting
6.1. Attack on the Application Layer
- Ensure effective real-time monitoring of the system through data encryption storage protection, and proactive security threat detection in the blockchain. The invention by Signorini et al. [45] (U.S. Patent) enables the detection of security threat within a blockchain or distributed ledger system by (i) adding forked chains discarded at a device to a standard blockchain to enhance the structure of the original chain; (ii) inspecting all forked chains that have been added; (iii) anomaly detection based on patterns in the added forked chains in enhanced blockchain, and (iv) a review of all transactions that involved the forked chain in the enhanced blockchain structure.
- Prevent both internally- and externally-induced attacks.
- Forestall repetitive intrusion attacks. The network administrator must ensure that a list of revoked membership certificates to ensure that members that are once revoked cannot re-join the network.
6.2. Attack on the Smart Contract Layer
6.3. Attack on the Consensus Layer
6.4. Attacks on the Network Layer
6.5. Attacks on the Data Layer
7. Implications of the Study
7.1. Managerial Implication
7.2. Practical Implications
- Reason collectively on the desirable quality attribute requirements, risks, and probable challenges of blockchain e-voting to find a mutually agreeable solution;
- Formulate, review, and revise architecture documentations and in the process find the best fit for the proposed system.
- Promotes mutual reasoning and buy-in, and better project planning eventually leading to improved systems implementation and performance.
8. Conclusions
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
References
- Ayo, C.; Daramola, O.; Azeta, A. Developing A Secure Integrated E-Voting System. In Handbook of Research on E-Services in the Public Sector: E-Government Strategies and Advancements; IGI Global: Hershey, PA, USA, 2011; pp. 278–287. [Google Scholar]
- Osgood, R. The Future of Democracy: Blockchain Voting’. COMP116: Information Security. Available online: http://www.cs.tufts.edu/comp/116/archive/fall2016/rosgood.pdf (accessed on 14 May 2020).
- Bulut, R.; Kantarci, A.; Keskin, S.; Bahtiyar, S. Blockchain-Based Electronic Voting System for Elections in Turkey. In Proceedings of the 2019 4th International Conference on Computer Science and Engineering (UBMK), Samsun, Turkey, 11–15 September 2019; pp. 183–188. [Google Scholar]
- Kazman, R.; Klein, M.; Clements, P. ATAM: Method for Architecture Evaluation; Defense Technical Information Center (DTIC): Pittsburgh, PA, USA, 2000. [Google Scholar]
- Carvalho, M.B.; Bellotti, F.; Berta, R.; De Gloria, A.; Gazzarata, G.; Hu, J.; Kickmeier-Rust, M. A case study on Service-Oriented Architecture for Serious Games. Entertain. Comput. 2015, 6, 1–10. [Google Scholar] [CrossRef] [Green Version]
- Ben Ayed, A. A Conceptual Secure Blockchain Based Electronic Voting System. Int. J. Netw. Secur. Appl. 2017, 9, 1–9. [Google Scholar] [CrossRef]
- Yavuz, E.; Koc, A.K.; Çabuk, U.C.; Dalkiliç, G. Towards secure e-voting using ethereum blockchain. In Proceedings of the 2018 6th International Symposium on Digital Forensic and Security (ISDFS), Antalya, Turkey, 22–25 March 2018; pp. 1–7. [Google Scholar] [CrossRef]
- McCorry, P.; Shahandashti, S.; Hao, F. A Smart Contract for Boardroom Voting with Maximum Voter Privacy. In International Conference on Financial Cryptography and Data Security; Springer Science and Business Media LLC: Cham, Switzerland, 2017; pp. 357–375. [Google Scholar]
- Zhang, S.; Lee, J.-H. Analysis of the main consensus protocols of blockchain. ICT Express 2019. [Google Scholar] [CrossRef]
- Bartoletti, M.; Carta, S.; Cimoli, T.; Saia, R. Dissecting Ponzi schemes on Ethereum: Identification, analysis, and impact. Futur. Gener. Comput. Syst. 2020, 102, 259–277. [Google Scholar] [CrossRef]
- Hjalmarsson, F.P.; Hreioarsson, G.K.; Hamdaqa, M.; Hjalmtysson, G. Blockchain-Based E-Voting System. In Proceedings of the 2018 IEEE 11th International Conference on Cloud Computing (CLOUD), San Francisco, CA, USA, 2–7 July 2018; pp. 983–986. [Google Scholar]
- Thuy, L.V.-C.-; Cao-Minh, K.; Dang-Le-Bao, C.; Nguyen, T.A. Votereum: An Ethereum-Based E-Voting System. In Proceedings of the 2019 IEEE-RIVF International Conference on Computing and Communication Technologies (RIVF), Danang, Vietnam, 20–22 March 2019; pp. 1–6. [Google Scholar]
- Braghin, C.; Cimato, S.; Cominesi, S.R.; Damiani, E.; Mauri, L. Towards Blockchain-Based E-Voting Systems. In Proceedings of the New Information and Communication Technologies for Knowledge Management in Organizations; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 274–286. [Google Scholar]
- Zhang, Q.; Xu, B.; Jing, H.; Zhang, S.; Zheng, Z. Ques-Chain: An Ethereum Based E-Voting System. In Proceedings of the 9th International Conference on Computer Science and Information Technology (CCSIT 2019), Sydney, Australia, 29–30 June 2019. [Google Scholar]
- Lai, W.-J.; Hsieh, Y.-C.; Hsueh, C.-W.; Wu, J.-L. DATE: A Decentralized, Anonymous, and Transparent E-voting System. In Proceedings of the 2018 1st IEEE International Conference on Hot Information-Centric Networking (HotICN), Shenzhen, China, 15–17 August 2018; pp. 24–29. [Google Scholar]
- Naphade, S.; Dubbewar, H.; Patil, M.; Tambave, S. Ethereum Blockchain Based E-Governance System. Available online: http://www.ijrti.org/papers/IJRTI1905057.pdf (accessed on 14 May 2020).
- Canessane, R.A.; Srinivasan, N.; Beuria, A.; Singh, A.; Kumar, B.M. Decentralised Applications Using Ethereum Blockchain. In Proceedings of the 2019 Fifth International Conference on Science Technology Engineering and Mathematics (ICONSTEM), Chennai, Tamil Nadu, 14–15 March 2019; pp. 75–79. [Google Scholar]
- Teja, K.; Shravani, M.; Simha, C.Y.; Kounte, M.R. Secured voting through Blockchain technology. In Proceedings of the 2019 3rd International Conference on Trends in Electronics and Informatics (ICOEI), Tirunelveli, India, 23–25 April 2019; pp. 1416–1419. [Google Scholar]
- Pawade, D.; Sakhapara, A.; Badgujar, A.; Adepu, D.; Andrade, M. Secure Online Voting System Using Biometric and Blockchain. In Advances in Intelligent Systems and Computing; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 93–110. [Google Scholar]
- Kirillov, D.; Korkhov, V.; Petrunin, V.; Makarov, M.; Khamitov, I.M.; Dostov, V. Implementation of an E-Voting Scheme Using Hyperledger Fabric Permissioned Blockchain. In Proceedings of the Applications of Evolutionary Computation; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 509–521. [Google Scholar]
- Verwer, M.B.; Dionysiou, I.; Gjermundrod, H. TrustedEVoting (TeV) a Secure, Anonymous and Verifiable Blockchain-Based e-Voting Framework. In Proceedings of the Education and Technology in Sciences; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 129–143. [Google Scholar]
- Zhou, Y.; Liu, Y.; Jiang, C.; Wang, S. An improved FOO voting scheme using blockchain. Int. J. Inf. Secur. 2019, 1–8. [Google Scholar] [CrossRef]
- Hsiao, J.-H.; Tso, R.; Chen, C.-M.; Wu, M.-E. Decentralized E-Voting Systems Based on the Blockchain Technology. In Lecture Notes in Electrical Engineering; Springer Science and Business Media LLC: Cham, Switzerland, 2017; Volume 474, pp. 305–309. [Google Scholar]
- Murtaza, M.H.; Alizai, Z.A.; Iqbal, Z. Blockchain Based Anonymous Voting System Using zkSNARKs. In Proceedings of the 2019 International Conference on Applied and Engineering Mathematics (ICAEM), Taxila, Pakistan, 27–29 August 2019; pp. 209–214. [Google Scholar]
- Tso, R.; Liu, Z.-Y.; Hsiao, J.-H. Distributed E-Voting and E-Bidding Systems Based on Smart Contract. Electronics 2019, 8, 422. [Google Scholar] [CrossRef] [Green Version]
- Kurbatov, O.; Kravchenko, P.; Shapoval, O.; Poluyanenko, N.; Malchyk, M.; Sakun, A.; Kovtun, V. Anonymous decentralized e-voting system. In Proceedings of the 2019 International Workshop on Conflict Management in Global Information Networks (CMiGIN), Lviv, Ukraine, 29 November 2019; pp. 12–22. [Google Scholar]
- Nimje, R.; Bhalerao, D.M. Blockchain Based Electronic Voting System Using Biometric. In Proceedings of the Lecture Notes on Data Engineering and Communications Technologies; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 746–754. [Google Scholar]
- Shahzad, B.; Crowcroft, J. Trustworthy Electronic Voting Using Adjusted Blockchain Technology. IEEE Access 2019, 7, 24477–24488. [Google Scholar] [CrossRef]
- Leema, A.A.; Gulzar, Z.; Padmavathy, P. Trusted and Secured E-Voting Election System Based on Block Chain Technology. In Proceedings of the International Conference on Computer Networks, Big Data and IoT (ICCBI—2019), Madurai, India, 19–20 December 2019; Springer Science and Business Media LLC: Cham, Switzerland, 2020; pp. 81–88. [Google Scholar]
- Zhang, S.; Wang, L.; Xiong, H. Chaintegrity: Blockchain-enabled large-scale e-voting system with robustness and universal verifiability. Int. J. Inf. Secur. 2019. [Google Scholar] [CrossRef]
- Sadia, K.; Masuduzzaman, M.; Paul, R.K.; Islam, A. Blockchain Based Secured E-Voting by Using the Assistance of Smart Contract. arXiv 2019, arXiv:1910.13635. [Google Scholar]
- Li, P.; Lai, J. LaT-Voting: Traceable Anonymous E-Voting on Blockchain. In Proceedings of the Applications of Evolutionary Computation; Springer Science and Business Media LLC: Cham, Switzerland, 2019; pp. 234–254. [Google Scholar]
- Alharby, M.; Van Moorsel, A. Blockchain Based Smart Contracts: A Systematic Mapping Study. In Proceedings of the 3rd International Conference on Artificial Intelligence and Soft Computing, Zakopane, Poland, 3–7 June 2017; pp. 125–140. [Google Scholar]
- IEC. 2014 Report on the National and Provincial Elections; Technical Report; Independent Electoral Commission: Centurion, Pretoria, South Africa, 2014. [Google Scholar]
- Thebus, D.; Daramola, O. E-voting System for National Elections Using a Blockchain Architecture. In Pan African International Conference on Science, Computing and Telecommunications Book of Proceedings; University of Swaziland: Kwaluseni, Swaziland, 2019. [Google Scholar]
- Daramola, O. A Process Framework for Semantics-Aware Tourism Information Systems. In Proceedings of the International Conference on Web Engineering, Vienna Austria, 5–9 July 2010; Volume 6385, pp. 521–532. [Google Scholar]
- Hyperledger: Hyperledger Fabric—Hyperledger. Available online: https://www.hyperledger.org/projects/fabric (accessed on 26 October 2018).
- Gupta, A. Design and Implementation of Public Key Infrastructure on Smart card Operating System. Ph.D. Thesis, Indian Institute of Technology, Department of Computer Science, Kanpur, India, 2008. [Google Scholar]
- Goldwasser, S.; Micali, S.; Rackoff, C. The Knowledge Complexity of Interactive Proof Systems. SIAM J. Comput. 1989, 18, 186–208. [Google Scholar] [CrossRef]
- Babar, M.; Gorton, I. Comparison of Scenario-Based Software Architecture Evaluation Methods. In Proceedings of the 11th Asia-Pacific Software Engineering Conference, Busan, Korea, 30 November–3 December 2005; pp. 600–607. [Google Scholar]
- Kruchten, P. The 4+1 View Model of architecture. IEEE Softw. 1995, 12, 42–50. [Google Scholar] [CrossRef] [Green Version]
- Dinh, T.T.A.; Liu, R.; Zhang, M.; Chen, G.; Ooi, B.C.; Wang, J. Untangling Blockchain: A Data Processing View of Blockchain Systems. IEEE Trans. Knowl. Data Eng. 2018, 30, 1366–1385. [Google Scholar] [CrossRef] [Green Version]
- Qassim, N.; Qasse, I.A.; Abu Talib, M.; Bou-Nassif, A. Performance Analysis of Hyperledger Fabric Platforms. Secur. Commun. Netw. 2018, 2018, 1–14. [Google Scholar] [CrossRef] [Green Version]
- Wang, H.; Wang, Y.; Cao, Z.; Li, Z.; Xiong, G. An Overview of Blockchain Security Analysis. In Proceedings of the Education and Technology in Sciences; Springer Science and Business Media LLC: Singapore, 2019; pp. 55–72. [Google Scholar]
- Signorini, M.; Di Pietro, R.; Kanoun, W. Blockchain-Based Security Threat Detection Method and System. U.S. Patent 16/325,564, 13 June 2019. [Google Scholar]
- Andola, N.; Raghav; Gogoi, M.; Venkatesan, S.; Verma, S. Vulnerabilities on Hyperledger Fabric. Pervasive Mob. Comput. 2019, 59, 101050. [Google Scholar] [CrossRef]
- Yamashita, K.; Nomura, Y.; Zhou, E.; Pi, B.; Jun, S. Potential Risks of Hyperledger Fabric Smart Contracts. In Proceedings of the 2019 IEEE International Workshop on Blockchain Oriented Software Engineering (IWBOSE), Hangzhou, China, 24–24 February 2019; pp. 1–10. [Google Scholar] [CrossRef]
- Dimitriou, T.; Michalas, A. Multi-party trust computation in decentralized environments in the presence of malicious adversaries. Ad Hoc Netw. 2014, 15, 53–66. [Google Scholar] [CrossRef]
Authors | S.E | Req. | D/I | S.F | Eval. |
---|---|---|---|---|---|
Bulut et al. [3]; Ayed [6]; Zhang et al. [14]; Teja et al. [18]; | 🗴 | DA | ✓ | 🗴 | 🗴 |
Pawade et al. [19] | 🗴 | DA | ✓ | ✓ | PE |
Murtaza et al. [24] | 🗴 | DA | ✓ | 🗴 | PE |
Zinh Vo-Cao et al. [12]; Hjlmarsson et al. [11]; Tso et al. [25] | 🗴 | DA | ✓ | 🗴 | SA |
Zhang et al. [30] | 🗴 | DA | ✓ | 🗴 | SA + PE |
Vewer et al. [20] | 🗴 | DA | ✓ | 🗴 | Use Cases |
Braghin et al. [13] | 🗴 | EP | ✓ | 🗴 | PE |
Lai et al. [14]; Hsaio et al. [23] | 🗴 | EP | ✓ | 🗴 | SE |
Shahzad & Crowcroft [28] | 🗴 | PM | ✓ | 🗴 | Argument |
McCorry et al. [8] | 🗴 | 🗴 | ✓ | ✓ | PE |
Yavuz et al. [7] | 🗴 | 🗴 | ✓ | 🗴 | 🗴 |
Sadia et al. [31] | 🗴 | 🗴 | ✓ | 🗴 | SA |
Canessane et al. [17]; Naphade et al. [16]; Kurbatov et al. [26]; Nimje & Bhalerao [27]; Leema et al. [29] | 🗴 | SR | ✓ | 🗴 | 🗴 |
Kirillov et al. [20]; Zhou et al. [22]; Li et al. [32] | 🗴 | SR | ✓ | 🗴 | SA |
S/N | Phase 1 | Description of Activity |
---|---|---|
1. | Present ATAM | A quick overview of the process, techniques, and expected outputs of ATAM was presented to the panel of experts in the first phase and then to all participants in the second phase together in the same session. The techniques used are: Utility tree generation; Architectural approach-based; elicitation/analysis; and; scenario brainstorming/mapping. The outputs of ATAM are:
|
2. | Present Business Drivers | A description of various business drivers (see Section 3.1) that relate to e-voting was presented to the participants to give them a better understanding of the system they are evaluating. |
3. | Present Architecture | The BANES was presented to the participants using the 4 + 1 architectural view model of Kruchten [41], which prescribes a logical view, development view, process view, physical view, and also scenarios descriptions.
|
4. | Identify Architectural Approaches | The architectural approaches that have been adopted and the rationale for adopting them were explained. The summary of quality attributes and the approach/component that seeks to address them is presented as follows:
|
5. | Generate Quality Attribute Utility Tree | The quality attribute utility tree was generated from the questions from the participating experts in their attempt to further understand the architecture design and process, together with stated concerns and scenario discussion and elicitation. The utility tree allows for the prioritisation of specific quality attribute requirements, as they relate to the scenarios. |
6. | Analyse Architectural Approaches | The prioritised list of scenarios, which is the output of the previous step is used to probe the architectural approaches to realise the important quality attributes. This step was used to identify any risks, sensitivity points, and trade-offs within the design architecture. The 3 highest priority scenarios were mapped to the relative architectural approach. The approaches were analysed by identifying risks, scenarios that were concerned with more than one approach was identified as a sensitivity point. The following scenarios were included: Scenario 1—Connections outside of the blockchain network are hampered by a Man-in-the-middle attack. Scenario 2—Vote verification introduces the risk of coercion. Scenario 3—High volumes of traffic is affecting accessibility and reliability. |
Phase 2 | ||
7. | Brainstorm and Prioritise Scenarios | The discussion included both sets of stakeholder representatives to elicit new scenarios that the expert group may have thought of and to identify any other scenarios from an end-user, voters, perspective. The generated utility tree from Step 5, aided in the discussion and elicitation of a larger set of scenarios. |
8. | Analyse Architectural Approaches Present Results | This step is a reiteration of step 6 if the highest-ranked scenarios of the first iteration of step 6 differ from the highest-ranked scenarios identified in step 7. In the case of our ATAM, the highest priority scenarios of step 6 remained the same. |
9 | Present Results | This is the step where the results of the evaluation are presented. From the result of the ATAM evaluation, the major trade-off is the aspect of vote validation. To forestall the possibility of voters’ coercion the vote validating nodes should be restricted to only secure locations. |
Attributes | Scenarios |
---|---|
Security | Keeping a voter’s choice private and concealed in all circumstances |
Only one vote per voter is allowed | |
There is a Man-in-the-middle attack during voting | |
Performance | There is a high volume of transactions which could affect the speed of processing and reliability |
Functional Suitability (Transparency, verifiability, Auditability) | Stakeholders want to view the process to be sure of transparency |
After voting, stakeholders want to verify election result | |
A voter wants to verify his/her vote without the risk of coercion |
© 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Daramola, O.; Thebus, D. Architecture-Centric Evaluation of Blockchain-Based Smart Contract E-Voting for National Elections. Informatics 2020, 7, 16. https://doi.org/10.3390/informatics7020016
Daramola O, Thebus D. Architecture-Centric Evaluation of Blockchain-Based Smart Contract E-Voting for National Elections. Informatics. 2020; 7(2):16. https://doi.org/10.3390/informatics7020016
Chicago/Turabian StyleDaramola, Olawande, and Darren Thebus. 2020. "Architecture-Centric Evaluation of Blockchain-Based Smart Contract E-Voting for National Elections" Informatics 7, no. 2: 16. https://doi.org/10.3390/informatics7020016
APA StyleDaramola, O., & Thebus, D. (2020). Architecture-Centric Evaluation of Blockchain-Based Smart Contract E-Voting for National Elections. Informatics, 7(2), 16. https://doi.org/10.3390/informatics7020016