Document Type : Research Paper

Authors

1 Department of computer science, University of Technology, Baghdad, Iraq

2 Computer Science Dept., University of Technology-Iraq, Alsina’a street, 10066 Baghdad, Iraq.

Abstract

Abstract—In the second decade of the twenty-first century, blockchain is considered one of the most popular computer technologies. Blockchain is a zero-trust network, making it a potent tool for various services provided that people are ready to believe and invest in it. In the Ethereum world, the blockchain runs on smart contracts, self-executing applications that come at the cost of security. As technology is used increasingly, Election is facing new issues of trust and management. Therefore, E-voting systems are increasingly acceptable because they are more accurate, reliable, practical,6 and secure. This research purpose is to propose a decentralized elections application based on Ethereum; the application was developed using the Truffle development framework. The actions of the software were written into an Ethereum smart contract, which was then deployed on the Ethereum network. A web interface had been used to read the user's vote before it was broadcast to the Ethereum network through the web3.js API. The ganache was utilized as the Ethereum client. Metalmark was used as a wallet on a website, and the remix was used to deploy the smart contract on the main network, the results of implementing the proposed system show that the cost of each transaction is not stable, its increases with the increase the network load, and the throughput ends up at 14 transactions per second.

Graphical Abstract

Highlights

  • A smart contract-based blockchain-based e-election system that operates on Ethereum and provides a set of rules for communication and contract decision-making among participants.
  •   Blockchain technology has the potential to move beyond the constraints of centralized voting systems, demonstrating that it is not only quick and cheap but also safe and secure.
  •   Ganache, the Truffle framework, NPM,  metamask, and Remix ide  were among the technologies utilized in this project.

Keywords

Main Subjects

[1] U. Jafar, M. J. A. Aziz, and Z. Shukur, Blockchain for the electronic voting system—review and open research challenges, Sensors, 21 (2021) 5874. https://doi.org/10.3390/s21175874
[2] W.-J. Lai, Y.-C. Hsieh, C.-W. Hsueh, and J.-L. Wu, Date: A decentralized, anonymous, and transparent e-voting system, in 2018 1st IEEE International Conference on Hot Information-Centric Networking (HotICN), 2018, 24–29. https://doi: 10.1109/HOTICN.2018.8605994.
[3] S. Gupta and M. Sadoghi, Blockchain transaction processing, arXiv preprint arXiv:2107.11592, 2021. https://doi.org/10.48550/arXiv.2107.11592
[4] K. Wüst and A. Gervais, Do you need a blockchain?, in 2018 Crypto Valley Conference on Blockchain Technology (CVCBT), 2018, 45–54. https://doi: 10.1109/CVCBT.2018.00011.
[5] S. Bistarelli, M. Mantilacci, P. Santancini, and F. Santini, An end-to-end voting-system based on bitcoin, in Proceedings of the Symposium on Applied Computing (SAC), 2017, 1836–1841. https://doi.org/10.1145/3019612.3019841
[6] P. Tarasov and H. Tewari, Internet voting using zcash, Cryptology ePrint Archive, 2017.
[7] B. Shahzad and J. Crowcroft, Trustworthy electronic voting using adjusted blockchain technology, IEEE Access,7,2019, 24477–24488. https://doi: 10.1109/ACCESS.2019.2895670.
[8] M. Mitra and A. Chowdhury, A Modernized Voting System Using Fuzzy Logic and Blockchain Technology., Int. J. Mod. Educ. Comput. Sci., 12 (2020) 17-25. https://doi: 10.5815/ijmecs.2020.03.03
[9] A. Bahga and V. K. Madisetti, Blockchain platform for industrial internet of things, J. Softw. Eng. Appl., 9 (2016) 533–546. https://doi: 10.4236/jsea.2016.910036.
[10] J. Golosova and A. Romanovs, The advantages and disadvantages of the blockchain technology, in 2018 IEEE 6th workshop on advances in information, electronic and electrical engineering (AIEEE), 2018, 1–6.https://doi: 10.1109/AIEEE.2018.8592253.
[11] D. Vujičić, D. Jagodić, and S. Ranđić, Blockchain technology, bitcoin, and Ethereum: A brief overview, in 2018 17th international symposium infoteh-jahorina (infoteh), 2018, 1–6. https://doi: 10.1109/INFOTEH.2018.8345547.
[12] V. Buterin, A next-generation smart contract and decentralized application platform, white paper, 3 (2014) 1–2.
[13] S. Rouhani and R. Deters, Performance analysis of ethereum transactions in private blockchain, in 2017 8th IEEE international conference on software engineering and service science (ICSESS).2017,70–74.https://doi: 10.1109/ICSESS.2017.8342866.
[14] Xiwei Xu , Ingo Weber and Mark Staples, Architecture for blockchain applications. Springer, 2019. https://doi.org/10.1007/978-3-030-03035-3
[15] B. Salam Al-E’mari, Y. Sanjalawe, and S. Manickam, A Labeled Transactions-Based Dataset on the Ethereum Network, in Advances in Cyber Security: Second International Conference, ACeS 2020, Penang, Malaysia, December 8-9, 2020, Revised Selected Papers. 1347, 2021, 61–79.https://doi.org/10.1007/978-981-33-6835-4_5
[16] B. K. Mohanta, S. S. Panda, and D. Jena, An overview of smart contract and use cases in blockchain technology, in 2018 9th International Conference on Computing, Communication and Networking Technologies (ICCCNT), 2018, 1–4. https://doi: 10.1109/ICCCNT.2018.8494045.
[17] S. Raval, Decentralized applications: harnessing Bitcoin’s blockchain technology. O’Reilly Media, Inc., 2016.
[18] Mohanty, D., 2018. Ethereum Architecture, in Ethereum for Architects and Developers, Springer, pp. 37–54. https://doi.org/10.1007/978-1-4842-4075-5_2
[19] K. Wang, Q. Wang, and D. Boneh, “ERC-20R and ERC-721R: Reversible Transactions on Ethereum,” arXiv preprint arXiv:2208.00543, 2022. https://doi.org/10.48550/arXiv.2208.00543
[20] W. Ethereum, Ethereum Whitepaper, Ethereum. URL: https://ethereum. org [accessed 2020-07-07], 2014.
[21] B. Chinthanet et al., What makes a good Node. js package? Investigating Users, Contributors, and Runnability, arXiv preprint arXiv:2106.12239, 2021. https://doi.org/10.48550/arXiv.2106.12239
[22] J. Ali, Instant Node Package Manager. Packt Publishing Ltd, 2013.
[23] J. Oberschweiber, A package manager for Curry, Masterarbeit. Christian-Albrechts-Universität zu Kiel, 2016.
[24] F. Doglio, Pro REST API Development with Node. js. Apress, 2015.
[25] K. Lei, Y. Ma, and Z. Tan, Performance comparison and evaluation of web development technologies in php, python, and node. js, in 2014 IEEE 17th international conference on computational science and engineering, 2014, 661–668. https://doi: 10.1109/CSE.2014.142.
[26] H. Sun, D. Bonetta, C. Humer, and W. Binder, Efficient dynamic analysis for Node. js, in Proceedings of the 27th International Conference on Compiler Construction, 2018, 196–206. https://doi.org/10.1145/3178372.3179527
[27] K. Bhosale, K. Akbarabbas, J. Deepak, and A. Sankhe, Blockchain based secure data storage, International Research Journal of Engineering and Technology (IRJET), 6 (2019) 5058–5061.
[28] S. Khan, A. Arshad, G. Mushtaq, A. Khalique, and T. Husein, Implementation of Decentralized Blockchain E-voting, EAI Endorsed Transactions on Smart Cities, 4 (2020)1–12. http://dx.doi.org/10.4108/eai.13-7-2018.164859
[29] S. A. Renu and B. G. Banik, Implementation of a secure ridesharing DApp using smart contracts on Ethereum blockchain, Int. J. Saf. Secur. Eng., 11 (2021) 167–173. https://doi.org/10.18280/ijsse.110205
[30] P. Hegedűs, Towards analyzing the complexity landscape of solidity based ethereum smart contracts, in Proceedings of the 1st International Workshop on Emerging Trends in Software Engineering for Blockchain, 2018, 35–39. https://doi.org/10.1145/3194113.3194119
[31] Chris Dannen, Introducing Ethereum and solidity, Springer, 2017. https://doi.org/10.1007/978-1-4842-2535-6
[32] M. J. A. Baig, M. T. Iqbal, M. Jamil, and J. Khan, Design and implementation of an open-Source IoT and blockchain-based peer-to-peer energy trading platform using ESP32-S2, Node-Red and, MQTT protocol, Energy Rep., 7 (2021) 5733–5746. https://doi.org/10.1016/j.egyr.2021.08.190
[33] A. Jabbar and S. Dani, Investigating the link between transaction and computational costs in a blockchain environment, Int .J. Prod. Res., 58 (2020) 3423–3436. https://doi.org/10.1080/00207543.2020.1754487
[34] L. M. Bach, B. Mihaljevic, and M. Zagar, Comparative analysis of blockchain consensus algorithms, in 2018 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), 2018, 1545–1550. https://doi: 10.23919/MIPRO.2018.8400278.
[35] D. Fullmer and A. S. Morse, Analysis of difficulty control in bitcoin and proof-of-work blockchains, in 2018 IEEE Conference on Decision and Control (CDC), 2018, 5988–5992. https://doi: 10.1109/CDC.2018.8619082.
[36] L. Hang, I. Ullah, and D.-H. Kim, A secure fish farm platform based on blockchain for agriculture data integrity, Comput. Electron. Agric.,170 (2020) 105251. https://doi.org/10.1016/j.compag.2020.105251