Next Article in Journal
Health IoT Threats: Survey of Risks and Vulnerabilities
Previous Article in Journal
Key Enabling Technologies for Beyond 5G Networks
Previous Article in Special Issue
A Survey on Data Availability in Layer 2 Blockchain Rollups: Open Challenges and Future Improvements
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Decentralizing Democracy: Secure and Transparent E-Voting Systems with Blockchain Technology in the Context of Palestine

by
Eman Daraghmi
1,*,
Ahmed Hamoudi
2 and
Mamoun Abu Helou
3
1
Department of Computer Science, Palestine Technical University—Kadoorie, Jaffa Street, Tulkarm 9993400, Palestine
2
Faculty of Graduate Studies, Palestine Technical University—Kadoorie, Jaffa Street, Tulkarm 9993400, Palestine
3
Department of Data Science, Al Istiqlal University, Jericho 4728, Palestine
*
Author to whom correspondence should be addressed.
Future Internet 2024, 16(11), 388; https://doi.org/10.3390/fi16110388
Submission received: 30 September 2024 / Revised: 18 October 2024 / Accepted: 21 October 2024 / Published: 23 October 2024

Abstract

:
Elections and voting play a crucial role in the development of a democratic society, enabling the public to express their views and participate in the decision-making process. Voting methods have evolved from paper ballot systems to e-voting systems to preserve the integrity of votes, ensuring a secure, transparent, and verifiable process. Continuous efforts have been made to develop a secure e-voting system that eliminates fraud attempts and provides accurate voting results. In this paper, we propose the architecture of a blockchain-based e-voting system called VoteChain. Developed to support the existing voting system in the state of Palestine, VoteChain aims to provide secure e-voting with features such as auditability, verifiability, accuracy, privacy, flexibility, transparency, mobility, availability, convenience, data integrity, and distribution of authority. The work introduces a smart contract designed to meet the demands of e-voting, governing transactions, monitoring computations, enforcing acceptable usage policies, and managing data usage after transmission. The proposed system also adopts advanced cryptographic techniques to enhance security. VoteChain features a web-based interface to facilitate user interaction, providing protection against multiple or double voting to ensure the integrity of the election. Furthermore, VoteChain is designed with a user-friendly and easily accessible administrator interface for managing voters, constituencies, and candidates. It ensures equal participation rights for all voters, fostering fair and healthy competition among candidates while preserving voter anonymity. A comparative analysis demonstrates VoteChain’s advancements in privacy, security, and scalability over both traditional and blockchain-based e-voting systems.

1. Introduction

Elections and voting play a pivotal role in the development of a democratic society by allowing the public to express their views and participate in the decision-making process, ensuring equal rights and fair representation. To maintain the credibility of participants, the election and voting processes must be reliable and transparent [1,2,3,4,5].
Over time, voting methods have evolved from traditional paper ballot systems to e-voting systems, aiming to preserve integrity and establish a secure, transparent [3,4], and verifiable system. Ongoing efforts focus on improving overall efficiency and resilience. Traditional voting, conducted at specific polling stations, incurs significant costs and time. Consequently, e-voting has emerged as a replacement, minimizing election costs and ensuring integrity by addressing privacy, security, and compliance requirements [6]. E-voting leverages cryptographic techniques [7], enabling full features on common household devices and ensuring instant and anonymous vote counting. To implement e-voting systems, it is important to follow key standards and benchmarks that protect voter privacy, ensure vote accuracy, and prevent denial of a voter’s action. However, these systems often face major challenges, especially in terms of security, privacy, and maintaining voter trust, due to risks of fraud and manipulation.
To address these problems, there is a need for a strong solution, such as blockchain technology, that offers secure cryptographic capabilities [8]. As blockchain [9,10,11,12,13] provides an unchangeable and transparent structure, e-voting systems can improve security and trust. Moreover, the decentralized nature of blockchain reduces the risk of corruption or manipulation that can happen in centralized systems [14,15,16].
Many researchers in the literature have proposed blockchain-based e-voting systems that employ tools such as smart contracts, blind signatures, and homomorphic encryption [17,18]. While blockchain has the potential to improve e-voting, its use in this field is still new and needs more research and development to reach its full potential. Although some blockchain-based e-voting systems exist, they do not yet provide complete solutions that cover all key areas of election security, such as safe voter registration and reliable vote counting.
This paper introduces VoteChain, a new blockchain-based e-voting system designed to address modern election challenges, specifically in Palestine. VoteChain uses several cryptographic methods to ensure the security, privacy, and verifiability of votes. It provides transparency by allowing public audits of all transactions without revealing voter identities. The system prevents unauthorized access and double voting through the use of cryptographic hashes and smart contracts while maintaining voter privacy.
VoteChain is designed with a user-friendly web interface, making it easy for all voters to use. Its decentralized structure reduces the risks of centralized control, making the voting process more democratic and harder to manipulate. The system is scalable, allowing it to handle large-scale elections and making it suitable for national use.
VoteChain’s design includes a strong, smart contract system that controls transactions, checks computations, enforces rules, and handles data after they are sent. This setup improves security and keeps the voting process trustworthy. It also meets the needs of different voters while supporting fair competition.
The contribution of this research could be summarized as follows:
  • Introducing VoteChain, a blockchain-based e-voting system designed to address the specific voting challenges in the state of Palestine, with enhanced security and privacy features;
  • Using several advanced cryptographic methods, including SHA-256 hashing and elliptic curve signatures, to ensure votes are secure, private, and verifiable;
  • Implementing decentralized governance in order to remove centralized control, increase transparency, prevent manipulation, and protect voter anonymity;
  • Designing a scalable system to handle large voter numbers, making it suitable for national elections;
  • Providing a comparison that shows how VoteChain improves on traditional and existing blockchain e-voting systems in terms of privacy, security, transparency, and scalability.

1.1. Motivation

Although many blockchain-based e-voting solutions exist, the specific challenges faced in Palestine make it difficult to apply these systems directly. One of the main issues is that they are not flexible enough to accommodate the unique political, social, and technological environment in Palestine, particularly the difficulties of conducting elections in divided regions, the West Bank and Gaza. A more tailored system, such as VoteChain, is necessary to address the country’s distinct electoral processes, legal structures, and security needs.
Furthermore, existing systems often fall short in terms of protecting privacy and anonymity, which are crucial in places where political retaliation is a real threat. Some systems do not fully secure voter identities or prevent unauthorized tracking of votes, putting voters’ privacy and safety at risk. VoteChain, on the other hand, incorporates advanced cryptographic techniques, such as homomorphic encryption, and plans to implement privacy-preserving technologies, such as zero-knowledge proofs (ZKP), to ensure that voter identities remain completely protected while still allowing for transparent and verifiable elections.
Another challenge is scalability, especially in large elections where infrastructure is limited. Many systems struggle with high computational demands and energy use, leading to delays and inefficiencies. VoteChain addresses this by using private blockchains and off-chain solutions to improve efficiency, reduce costs, and manage large numbers of voters, making it more appropriate for national elections in Palestine.
Trust and decentralization are both equally important in Palestine, where central control can easily lead to manipulation. Many systems depend on centralized authorities for key voting processes, which poses a risk. VoteChain, however, uses a decentralized governance model, distributing control across multiple nodes. This enhances transparency and limits the chances of corruption or manipulation.
Additionally, VoteChain is designed to comply with Palestinian legal and regulatory requirements, unlike many other systems that do not easily integrate with the Central Election Commission (CEC) or local voter registration systems. This compliance is crucial for seamless integration into the existing election framework. Finally, infrastructure limitations in Palestine, particularly in rural areas with unreliable internet, make many blockchain-based systems impractical. VoteChain is built to function in low-tech environments, offering offline voting features and low-resource computing options, ensuring that even voters in underserved areas can participate.

1.2. Organization

The paper is structured into several key sections to comprehensively elucidate the architecture and implications of the VoteChain system within the context of electronic voting systems in the state of Palestine. Section 2 and Section 3, Background and Related Work, explore local elections in the state of Palestine, including the West Bank and Gaza Strip, in addition to existing research and technologies in electronic voting, pinpointing deficiencies in current methodologies and demonstrating how VoteChain addresses these gaps. The detailed ‘VoteChain System: Analysis and Design’ Section 4 elaborates on the smart contract architecture and security measures integral to VoteChain, explaining their roles in ensuring voter integrity, privacy, and resilience against fraud and cyber threats. Following this, in Section 5, a comprehensive guide on the configuration and deployment of the VoteChain system is provided.
Performance testing results, demonstrating the system’s robustness under varying operational loads, are presented in Section 6, underscoring key performance indicators like system response time, transaction throughput, latency, and stability. A comparative analysis of how VoteChain and traditional electronic voting systems delineate the advancements in security, transparency, and scalability is illustrated in Section 7. Finally, Section 8, Conclusion, synthesizes the findings and maps out directions for future research and development.

2. Background

This section outlines the background regarding local elections in the state of Palestine, including the West Bank and Gaza Strip. All the information in this section is drawn from a report published about local elections in Palestine [19].
The Higher Committee for Local Elections (HCLE) initially oversaw the first local elections, which occurred in five rounds, with four completed successfully. The Central Election Commission (CEC) took over administration following the passage of Local Council Elections Law No. (10) of 2005. The first round occurred in December 2004 in the West Bank and January 2005 in Gaza, with subsequent rounds held in 2005. The elections utilized a simple majority system initially and later transitioned to a proportional representation system under the new law [19].
Electoral lists, composed of political parties or coalitions, are registered by a representative who submits the necessary applications. The nomination process requires forms available at CEC offices or online and lasts for ten days. Each application must include detailed information about the candidates and electoral symbols.
Candidates must meet specific requirements, including age, voter registration, no felony convictions, and residency in the local authority for at least a year. Dual candidacy is not permitted.
Additionally, candidates are required to pay a security deposit of 1000 Jordanian dinars, with half securing candidacy and the other half ensuring compliance with campaign rules. Refunds are granted under certain conditions, such as winning a seat or withdrawing before deadlines.
Applications may be rejected for failing to meet legal requirements or for submitting incorrect information. Decisions can be appealed in court.
Candidates can withdraw their nominations until specified deadlines, requiring a new list of candidates after withdrawal.
Approved lists can appoint agents to monitor the election process, adhering to certain eligibility conditions.
Electoral campaigning, defined as activities explaining electoral programs, is legally protected and monitored by the CEC. The campaign duration is limited to 13 days, with strict regulations against campaigning outside this period. Lists must submit detailed financial reports post-election, outlining funding sources and campaign expenditures.
These provisions aim to ensure transparency and fairness in the electoral process while upholding the integrity of local elections in Palestine.

3. Related Work

Blockchain technology has made significant advancements [20,21,22], which have had a big impact on the development of e-voting systems. Researchers have worked for a long time on creating secure and efficient voting protocols [23], resulting in a wide variety of blockchain-based e-voting solutions. These solutions tackle important issues like accuracy, voter anonymity, auditability, privacy, reliability, and scalability. Different types of blockchain voting systems have emerged, typically grouped by their main features: privacy-preserving systems, scalable systems, and verifiable systems.
For example, Lai et al. [1] created a decentralized e-voting system using Ethereum, which provides secure and anonymous voting. All voting activities are managed within the Ethereum blockchain, which ensures transparency and security through the use of smart contracts, making the system both decentralized and trustworthy.
Similarly, Patil et al. [2] proposed a blockchain-based voting system that uses smart contracts to create a secure and cost-effective election process on a private Ethereum blockchain. This system eliminates the need for a central server and verifies voter eligibility through ID numbers and recognition devices. Once verified, voters receive a unique hash address to cast their votes, which improves both security and process integrity. Shahzad and Crowcroft [3] developed a flexible framework that adapts to different voting needs while providing a secure and tamper-proof environment. Their system allows the blockchain to be adjusted for various election processes.
Further enhancing the security aspect, Ma et al. [24] implemented feedback mechanisms in their blockchain voting system to constrain malicious voting behavior, using the Wilson score as the initial support rate for each candidate. Prasetyadi et al. [4] tailored their system to the Indonesian voting principles, verifying votes with the Elliptic Curve Digital Signature Algorithm (ECDSA) and integrating the data into blockchain blocks. Similarly, Taş and Tanriöver [5] propose a double-layer security model that can prevent fraud and minimize the effects of manipulation during the elections.
Moreover, a comprehensive review of blockchain-based e-voting systems by [25] emphasizes that while many systems provide strong guarantees for security, transparency, and voter privacy, certain challenges remain unresolved, particularly scalability and accessibility. This review highlights that many existing solutions focus on small or medium-sized elections and struggle to handle the high transaction volumes of national elections, presenting a barrier to wider adoption of blockchain in large-scale democratic processes.
To promote anonymity and security, In 2019, Awalu et al. [17] proposed a multi-chain blockchain network that includes an arbitration server, a distributed database, and a multi-device GUI through digital signatures and the Secure Hash Algorithm (SHA), coupled with Proof of Work (PoW). Their system met various e-voting requirements such as transparency, privacy, scalability, receipt-freeness, and auditability. Similarly, in 2018, Khan et al. [26] achieved end-to-end verifiability by utilizing the Multichain platform, providing a comprehensive analysis that demonstrates the system’s compliance with e-voting criteria. In 2018, Yavuz et al. [27] tested a prototype e-voting application as an Ethereum smart contract utilizing Ethereum wallets and Solidity. Android could allow individuals without Ethereum wallets to vote. Ethereum blockchain will keep ballots and votes after an election. Users can vote via Android or their Ethereum wallets, and every Ethereum node handles these transaction requests. This consensus makes e-voting transparent. Further, voter anonymity is addressed in Tarasov et al. [28] and Patidar et al. [29], who use Ethereum-based models that employ a unique genesis block to link votes to candidates without revealing voter identities. This method is complemented by Sun et al.’s [30] use of Quantum Blockchain, which enhances security through quantum secure communication, preventing unauthorized access to ballots.
Focusing on integrity, the study in [31] has assessed the use of blockchain technology in implementing decentralized electronic voting systems that highlight blockchain’s intrinsic security features, such as cryptography, decentralization, and consensus, which ensure data integrity. The study in [31] proposes an alternative electronic voting system based on blockchain, aiming to overcome the challenges and limitations of existing systems. It evaluates well-known blockchain frameworks to develop this blockchain-based e-voting system. Furthermore, a case study is analyzed to explore the practical applications and potential of distributed ledger technology in enhancing electronic voting systems. As noted in [25], the scalability of these systems remains an open challenge, particularly in national elections where voter turnout can exceed millions. Solutions like sharding and layer-2 protocols are still under research to make these systems scalable for real-world applications.
The auditability of voting systems has also been a focal point, with Awalu et al. [17] proposing an architecture that automatically generates vote counts. Additionally, Fusco et al. [32] introduced a cryptographic model using ZCash that operates a dual blockchain structure to independently record voter actions and tally votes, enhancing the transparency and verifiability of the electoral process. In terms of system integrity, Khoury et al. [33] and Khan et al. [27] have implemented Ethereum-based systems that rely on trusted miners within the consensus process to mitigate biases, highlighting the role of blockchain in fostering fair electoral environments.
Privacy concerns have been addressed by incorporating advanced cryptographic techniques such as unlinkable signatures and two-phase verification processes, as discussed by Wang et al. [30]. These methods keep voter information encrypted and private during the voting process. However, several studies have pointed out that techniques like zero-knowledge proofs and homomorphic encryption are still costly in terms of computing power, making them difficult to use in large-scale systems [25]. Because of these challenges, researchers continue to work on finding a balance between privacy, auditability, and scalability in blockchain-based voting systems.
Finally, the scalability of these systems has been tested through different implementations. Gonzalez et al. [34] and Yavuz et al. [27] highlight the need for strong frameworks that can manage large elections without losing speed or security. Future research should focus on improving consensus algorithms and looking into layer-2 solutions to increase the efficiency of blockchain-based voting systems, especially in countries with large populations.

4. Methodology and System Design

In this section, the design and the setup of the proposed VoteChain system are presented. VoteChain is a blockchain-based e-voting system developed to improve the current voting process in the state of Palestine. VoteChain is designed to provide protection against fraud and manipulation. VoteChain preserves the privacy of voters and ensures that their votes remain confidential while allowing for audits, transparency, and accountability by tracking all voting activities.
The system is protected against unauthorized access and manipulation, offering secure voting from any location at any time. It ensures the accuracy and authenticity of all data, and by distributing authority across multiple nodes, it avoids any single point of failure, making the system more resilient and secure.
VoteChain incorporates a user-friendly web-based interface that makes voting simple for voters while ensuring the election process remains secure. It prevents double voting to keep the process fair and trustworthy. For administrators, there is a special interface to manage voters, districts, and candidates, making it easy to oversee the entire system smoothly. The comprehensive design of VoteChain’s interfaces ensures seamless interaction for both voters and administrators, reinforcing the system’s overall effectiveness. VoteChain promotes inclusivity by encouraging broad voter participation and supports the principle of equal voting rights. The architecture of VoteChain (see Figure 1) facilitates fair competition among candidates while preserving voter anonymity, thereby advancing an unbiased electoral process.
Figure 1 presents the architecture of the VoteChain system, designed to secure the voting process. The User Interface (UI) and Front-End Security are critical components that assist voters and administrators in managing elections. The UI serves as the interaction portal, where voter credentials are authenticated using secure methods, such as username/password and One-Time Password (OTP) authentication. This not only secures the voting process but also enhances user experience by ensuring compliance with system policies. Access Control Management defines and manages user roles, ensuring that only authorized individuals can execute specific actions. Additionally, this module manages the definition of voting transactions and initiates the mining process for the blockchain.
The E-Voting Transaction Management Level ensures the confidentiality of each vote by generating cryptographic hashes and transaction IDs. It also maps transactions onto the blockchain while incorporating voter credentials from the user interface. VoteChain’s decentralized security is strengthened by a mining mechanism that uses multiple virtual nodes, which makes the system more resistant to tampering.
The Ledger Synchronization Level is responsible for keeping the local application in sync with the multichain ledger, ensuring that all votes are securely recorded on the blockchain using cryptographic hashes. This level also calculates the voting results using smart contracts and announces them at the end of the voting period.
All voting-related data, including vote counts, voter registration details, and transaction histories, are stored as permanent records on the blockchain. The ability to access and query this data is crucial for real-time election monitoring, audits, and transparency. Currently, VoteChain relies on basic blockchain query tools to access transaction logs, smart contract events, and block data through APIs provided by platforms like Ethereum. This allows stakeholders to track election progress and verify votes without compromising voter privacy.
To boost efficiency and scalability, VoteChain incorporates advanced blockchain query services such as vql and vchain+. Vql provides efficient and verifiable cloud query services, allowing stakeholders to query large datasets on the blockchain without having to store the entire ledger locally, improving both performance and accessibility. Similarly, vchain+ optimizes verifiable blockchain queries, enabling stakeholders to query voting results based on preferences, regions, or demographic data while keeping voter information secure. By using these advanced query services, VoteChain enhances the process of extracting and verifying election data, increasing both security and performance.
Ethereum was chosen as the underlying platform for VoteChain due to its strong smart contract capabilities and decentralized structure, which are essential for creating a secure and transparent e-voting system. Ethereum’s smart contracts, developed in Solidity, automate key aspects of the election process—ranging from voter registration to vote counting. These contracts enforce election rules automatically, reducing the need for manual intervention and minimizing the risk of fraud. Ethereum’s ability to handle complex, programmable smart contracts makes it a reliable platform for managing the election process in a secure and verifiable way.
Ethereum’s decentralized architecture ensures that no single entity can control the system, which helps prevent tampering and reduces the risks associated with central points of failure. Additionally, Ethereum’s active developer community continuously enhances its security features, making it a platform that adapts to the latest blockchain advancements. Its wide adoption and proven security record make Ethereum a trusted choice for critical applications like e-voting.
As for scalability, Ethereum is constantly addressing challenges with innovations like sharding and layer-2 technologies. These developments ensure that VoteChain can scale to accommodate growing numbers of voters while maintaining high performance and transaction throughput. This flexibility in Ethereum’s infrastructure allows VoteChain to evolve as the demand for voting changes.
VoteChain also employs various cryptographic techniques to secure the voting process, protect voter privacy, and defend against different types of attacks. The following points summarize these techniques:
  • SHA-256 hashing generates a unique cryptographic hash for each vote, ensuring the immutability of voting records. Any attempt to modify a vote will produce a completely different hash, flagging the tampering attempt. Moreover, if a malicious actor tries to alter votes or create fake identities (such as in a Sybil attack), the blockchain’s hashing mechanism would immediately detect these changes. Each block’s hash is cryptographically linked to the previous one, meaning a Sybil attack would require altering every subsequent block—an almost impossible feat given the computational power required;
  • The Elliptic Curve Digital Signature Algorithm (ECDSA) is employed to authenticate voter identity by allowing only authorized voters to sign their votes with their private keys. This guarantees non-repudiation, meaning a voter cannot later deny casting a specific vote since their private key was used to sign it. In addition, since votes are signed with private keys, even if an attacker intercepts the vote in a MitM attack, they would be unable to alter or impersonate the voter without access to their private key, preventing vote manipulation during transmission;
  • Zero-Knowledge Proofs (ZKPs) enable a voter to prove their eligibility to vote without revealing any personal details or the contents of their vote. This ensures that the voting system can verify a vote’s legitimacy while maintaining voter privacy. Since ZKPs conceal the actual vote content, they help prevent coercion or collusion, ensuring voter privacy even from election organizers and other third parties;
  • Homomorphic encryption allows computations, such as vote tallying, to be performed on encrypted votes without needing to decrypt them. This ensures that election results are tallied securely without compromising individual voter privacy. Even administrators or validators cannot access or decrypt votes because they remain encrypted during the entire process. This prevents insider threats from individuals attempting to view or manipulate votes before the final tally is published.
By utilizing these advanced cryptographic techniques, VoteChain ensures the confidentiality, integrity, and authenticity of votes while defending against common security threats such as Sybil attacks, MitM attacks, and insider manipulation. This combination of hashing, digital signatures, zero-knowledge proofs, and homomorphic encryption strengthens both the privacy of voters and the resilience of the system against multiple types of attacks.

4.1. VoteChain: Block’s Structure

The blockchain architecture of VoteChain is based on Distributed Ledger Technology (DLT) to ensure a secure, transparent, and immutable electronic voting process. Each block in the blockchain plays a key role in safeguarding the integrity and security of the voting process. These blocks contain several essential elements (see Figure 2) that collectively contribute to a tamper-resistant and verifiable voting system.
Voter ID is a unique identifier randomly assigned to eligible voters, enabling accurate identification without revealing personal details, thus preserving voter anonymity. The vote represents the voter’s choice and is securely recorded within the blockchain, ensuring that every ballot is cast and stored with the highest security measures. The vote’s hash is signed using the voter’s private key, which allows for verification of the vote while keeping the vote’s content private.
The timestamp records the exact moment each block is submitted, helping to resolve conflicts when multiple blocks have similar timestamps, ensuring fairness.
The digest (Hash) of the Previous Block connects each block to the one before it using the SHA-256 algorithm, ensuring that the chain remains tamper-proof. Any alteration of a block would immediately be detectable due to the break in the cryptographic link.

4.2. Implementation Structure of VoteChain

The implementation of VoteChain is structured using various tools and technologies, each playing a distinct role in building and maintaining the system’s functionality. This section provides a deeper understanding of the rationale behind choosing each tool and how they integrate to support the VoteChain architecture, ensuring secure, scalable, and efficient electronic voting.
Node Package Manager (NPM) is a widely used package manager for JavaScript that simplifies the process of adding and updating third-party packages. It provides essential libraries and dependencies needed for the VoteChain application, allowing developers easy access to a vast ecosystem of packages. This helps streamline the development process, as VoteChain developers can efficiently install and manage cryptographic libraries, testing frameworks, and necessary modules for Ethereum blockchain integration.
The Truffle Framework serves as the primary development environment for creating decentralized applications (DApps) on the Ethereum blockchain. It offers comprehensive tools for compiling, linking, and deploying smart contracts. In VoteChain, Truffle simplifies the development and testing of smart contracts written in Solidity. The framework also includes testing utilities that allow developers to simulate various voting scenarios, ensuring that the smart contracts perform as expected before deployment.
To simulate the blockchain environment, Ganache is employed as a local Ethereum blockchain. It allows developers to test the entire voting process, including casting votes, validating transactions, and maintaining data immutability, all within a controlled environment. This eliminates the need to interact with the main Ethereum network during the development phase, making the testing process more efficient.
MetaMask, a browser extension that functions as an Ethereum wallet, is utilized by VoteChain voters to manage their voting transactions. MetaMask enables users to interact with the blockchain directly from their browser, sign transactions, and monitor their voting status. This integration ensures that voters can cast their votes securely while maintaining full control over their private keys and transaction approvals.
Visual Studio Code (VS Code) serves as the primary development environment for the VoteChain project. It provides developers with a robust code editor that supports debugging, code linting, version control, and extension support. These features are crucial for writing, testing, and deploying smart contracts and other aspects of the VoteChain infrastructure, making VS Code an essential tool for the development team.
MongoDB, an open-source NoSQL database, is used to store important supplementary data, such as voter registration details, authentication tokens, and voting logs. While the core voting records are securely stored on the Ethereum blockchain, MongoDB enhances the system’s scalability and performance by efficiently managing user sessions and tracking login history.
For voter authentication, VoteChain integrates Twilio, a cloud-based communication platform that sends One-Time Passwords (OTPs) via SMS or email. This two-factor authentication mechanism ensures that only registered voters can access the voting platform, enhancing security and preventing unauthorized access.
The combination of these tools ensures that VoteChain is built with security, efficiency, and scalability in mind. The Ethereum blockchain forms the backbone of the system, providing immutability, transparency, and security. Meanwhile, Truffle and Ganache streamline the development and testing of the decentralized application. MetaMask provides a seamless interface for voters, and MongoDB and Twilio add critical functionality for managing voter data and authentication. Lastly, Visual Studio Code and NPM establish a robust development environment that supports the platform’s continued growth and scalability.

4.3. VoteChain: Smart Contracts, Implementation, and Technical Architecture

To create a secure and transparent e-voting system, the proposed VoteChain system employs the Ethereum network, which is an open-source blockchain for decentralized applications [31,33]. Voters and candidates can register and participate in the elections by integrating MetaMask [35], which is a cryptocurrency wallet, with the VoteChain.
The Central Election Commission (CEC) manages the system, ensuring transparency throughout the voting process. Via VoteChain, voters cast ballots using two types of nodes, including (1) Full Nodes that are directly connected to the Ethereum blockchain, providing higher security, and (2) Service Nodes that are accessed via cloud services or wallets, allowing more flexible and accessible interaction with VoteChain. A key aspect of VoteChain is the Casper consensus mechanism that employs a Proof-of-Stake (PoS) protocol [36]. PoS enables validators to “stake” cryptocurrency as collateral. Validators are selected to propose or validate new blocks based on their staked assets, significantly enhancing the security of the system while simultaneously minimizing energy consumption. Any malicious behavior by validators results in losing their staked assets, thereby discouraging dishonest practices. Therefore, VoteChain ensures that transactions are validated securely, protecting the election process from manipulation or fraud. The integration with the Casper consensus mechanism enables decentralized governance by distributing the power to validate transactions, ensuring that no single entity can dominate the process.
The smart contract of the proposed VoteChain, written in Solidity, automates critical processes such as the registration of voters/candidates, vote casting, and vote counting. These smart contracts ensure transparency and immutability at every step of the election cycle. The list below presents the key smart contract structures:
  • PoliticalParty: Stores information about political parties, such as the party name and the number of seats won;
  • Candidate: Holds candidate details, such as their name, party affiliation, and vote count;
  • Voter: Manages voter information, ensuring that each voter can only vote once by tracking the canVote flag.
During the election phases, smart contracts manage transitions from registration to voting and finally to result declaration. This automated governance ensures that all election operations comply with the pre-set rules, minimizing the need for manual oversight and reducing the risk of tampering.
The technical architecture of VoteChain enhances its overall security, privacy, and efficiency. Before transactions are recorded on Ethereum’s main chain, voter credentials are verified against an off-chain database maintained by the CEC. This dual-layer architecture, combining on-chain and off-chain components, strengthens the privacy of voter data while maintaining a transparent voting process. MongoDB Atlas Cloud Database is used to store voter credentials and supplementary information securely.
Furthermore, VoteChain integrates several cryptographic techniques to ensure the confidentiality and integrity of voter data. SHA-256 Hashing ensures immutability and verifiability by cryptographically securing each vote. The Elliptic Curve Digital Signature Algorithm (ECDSA) authenticates the identity of voters without revealing their personal details, ensuring non-repudiation and preserving privacy. Zero-Knowledge Proofs (ZKPs) enhance privacy by allowing voter actions to be verified without exposing underlying data. Homomorphic Encryption enables computations on encrypted votes without decrypting them, ensuring vote tallying can be performed securely while maintaining the confidentiality of individual votes.
In addition to the security provided via the cryptographic mechanisms, VoteChain further enhances privacy via the integration with Blockshare [37]. Blockshare is a privacy-preserving data-sharing system designed for blockchain platforms. It uses techniques such as Zero-Knowledge Proofs and Homomorphic Encryption to allow for the verifiable sharing of data without exposing sensitive voter information. With Blockshare, VoteChain ensures that while votes are recorded on the blockchain for auditability, voter identities remain hidden, maintaining privacy without compromising transparency.

4.4. VoteChain: Voting Process

Figure 3 and Figure 4 illustrate the flow of a secure e-voting session offered by the VoteChain. The initial step involves user login to the VoteChain website or the Decentralized Application (DApp). Employing the voter credentials stored in the CEC database, user authentication is enhanced through the use of a One-Time Password (OTP) delivered via SMS.
Crucially, the outcome of successful voter registration is safeguarded within the CEC database (off-chain), distinct from Ethereum’s main chain (on-chain). This meticulous process serves to uphold the reliability and authenticity of voters throughout the voting procedure.
It is imperative to note that each voter’s private account is established on the Ethereum framework and a service node akin to a bitcoin wallet (MetaMask). Ganache, a personal Ethereum blockchain, facilitates testing and provides a view of on-chain transactions and blocks. Meanwhile, MetaMask functions as a service node and cryptocurrency wallet, enabling the payment of the requisite Ether (ETH) gas fee to cast a vote.
Upon the formation of Ganache and MetaMask accounts, voters receive a public key, private key, and MetaMask username. Importantly, the voter’s Ganache account credentials (public and private keys) are imported and linked with the MetaMask account, serving as the foundation for ballot casting and future elections.
To cast a vote using DApp, the voter logs into the CEC website and selects “Vote” from the DApp menu. Following the confirmation and verification of voter credentials, the voter submits their private key to cast a vote. Concurrently, MetaMask credentials are provided by either the voter or CEC authority to log transactions and blocks on Ganache. Subsequently, this block is mined and seamlessly integrated into Ethereum’s immutable main chain, marking the successful execution of transactions and block mining on the main chain.
Voter credentials undergo validation, ensuring the casting of an immutable vote in accordance with smart contract protocols. This meticulous process is designed to safeguard the privacy and security of both the ballot and the cast vote.
During the voting phase, the involvement of a third party is entirely unnecessary, distinguishing this process from traditional client– server systems. Moreover, voters have the flexibility to submit their votes by logging into the dedicated voters’ link on the CEC website, providing an additional layer of accessibility to the voting process.

5. User Interface and Set Up

This section provides a comprehensive guide on configuring and deploying the VoteChain system, a blockchain-based voting platform that ensures transparency, security, and resilience in elections. It highlights the key administrative responsibilities, including system configuration, user management, and oversight of the entire voting process. By detailing the setup and running procedures, administrators can better understand their critical role in safeguarding the election process.

5.1. Configuring the Environment for the VoteChain System

Configuring the VoteChain system involves setting up the necessary software, dependencies, and environment variables on a Linux-based infrastructure. The administrator ensures that the system is correctly installed and functioning securely.

5.1.1. Installing the Necessary Software

The administrator is responsible for installing and managing several essential software components:
  • Ubuntu: A reliable, open-source Linux distribution that serves as the foundation for the VoteChain system;
  • Node.js: A JavaScript runtime essential for running backend services and ensuring the system’s responsiveness;
  • Truffle: A development framework for managing and deploying smart contracts, which is integral to executing the voting functions on the Ethereum blockchain;
  • MetaMask: A cryptocurrency wallet that enables voters and administrators to interact with the blockchain and manage transactions securely.
The administrator ensures these components are correctly installed and configured to provide a stable platform for VoteChain.

5.1.2. Installing VoteChain Dependencies

After setting up the environment, the administrator installs the necessary dependencies by navigating to the project directory and running the following command:
npm install
This installs the libraries and modules required for the system’s operation. Ensuring all dependencies are correctly installed helps prevent issues during smart contract deployment and system execution.

5.1.3. Smart Contract Deployment and Blockchain Setup

The administrator compiles and deploys smart contracts, which form the backbone of the VoteChain system.
1- 
Compiling Smart Contracts: The following command is used to compile the smart contracts:
truffle compile
This ensures that any changes in the contracts are reflected in the system and alerts the administrator to any issues during compilation.
2- 
Deploying Smart Contracts (see Figure 5, Figure 6, Figure 7 and Figure 8): Using Truffle’s built-in private blockchain (Ganache), the administrator tests and deploys the contracts locally with the following:
truffle develop
The administrator uses Ganache to simulate different user scenarios and monitor contract performance, ensuring a smooth transition to live deployment.

5.1.4. Managing User Credentials and Authentication

VoteChain integrates MetaMask and MongoDB to handle voter authentication and data management:
  • MetaMask Setup (see Figure 9): MetaMask enables secure user interaction with the blockchain. Administrators oversee the installation and configuration of MetaMask to ensure that voters can connect to the system safely;
  • MongoDB Configuration: MongoDB stores voter data, including personal details and authentication records. The administrator is responsible for creating databases and configuring access control to protect sensitive data.
Additionally, the administrator ensures that environment variables, such as keys and database URIs, are securely configured.

5.2. Test Case: Voting Process

The voting process (see Figure 10) is an end-to-end sequence designed to ensure integrity, security, and transparency in elections. The administrator plays a vital role throughout, managing voter registration, monitoring the voting process, and declaring results. The main screen of VoteChain is shown in Figure 11.

5.2.1. Voter Registration and Pre-Election Preparations

  • Database Preparation: The Central Election Commission (CEC) compiles a voter list and uploads it to the MongoDB database. The administrator ensures the accuracy of voter data and manages the voter registration process (see Figure 12, Figure 13 and Figure 14).
  • Administrator’s Role in Voter Registration: The administrator is responsible for validating voter credentials and managing the OTP verification process via Twilio. They ensure that each voter is correctly registered and able to participate in the election securely.

5.2.2. Managing Political Parties and Candidates (See Figure 15 and Figure 16)

  • Admin Login: The administrator securely logs into the system, using bcrypt for password hashing to protect credentials;
  • Creating Political Parties: The administrator inputs party details and deploys a smart contract that records these details on the blockchain. The party creation process is securely signed using MetaMask, ensuring immutability and traceability.
Figure 15. Admin login screen.
Figure 15. Admin login screen.
Futureinternet 16 00388 g015
Figure 16. Fill party detail.
Figure 16. Fill party detail.
Futureinternet 16 00388 g016

5.2.3. Starting and Monitoring the Voting Process

The administrator initiates the voting period by triggering the startVoting function, transitioning the system to the voting phase (see Figure 17, Figure 18, Figure 19 and Figure 20). They monitor the voting process by:
  • Managing Voter Authentication: Ensuring that only eligible voters can participate;
  • Overseeing Vote Casting: Monitoring transactions to guarantee that each vote is securely recorded on the blockchain and that no double voting occurs.

5.2.4. Declaring and Finalizing Results

  • Computing Results: After the voting period concludes, the administrator triggers the computeResult function to tally votes. This function calculates the final results while ensuring that all votes remain immutable and tamper-proof;
  • Result Declaration (see Figure 21): Once computed, results are recorded on the blockchain, ensuring transparency and security. The administrator is responsible for ensuring that the process follows the predefined smart contract rules and that results are publicly accessible and verifiable.

5.3. Enhancing the Administrator’s Role in the Voting Process

The administrator plays a critical role in ensuring the success of the VoteChain system, from setup to execution. Their responsibilities include the following:
  • User Credential Validation: Administrators verify the authenticity of user credentials, ensuring that only authorized voters can participate. This involves overseeing OTP verification and managing voter registration;
  • System Monitoring: Administrators actively monitor the system during the election process, ensuring that all interactions with the blockchain are secure and transparent. They prevent unauthorized access, detect any abnormal behavior, and address potential system issues;
  • Dispute Resolution: In cases where there are disputes or anomalies in the voting process, administrators have the authority to investigate and resolve these issues, ensuring the integrity of the election results.

6. Experimental Results

6.1. Performance Testing of VoteChain System

The primary objective of this performance testing is to evaluate the VoteChain system’s capability to handle varying loads effectively. The focus is on assessing key performance indicators, including system response time, transaction throughput, latency, and overall system stability when subjected to high volumes of simultaneous voter interactions. The goal is to determine if VoteChain can maintain optimal performance and reliability under the stress of a large-scale national election.
To simulate a real-world national election scenario, the experiment involved generating a significant number of virtual voters interacting with the VoteChain system concurrently. These virtual voters mimicked real user actions, such as registering, casting votes, and confirming transactions. The test environment was configured to progressively increase the number of concurrent users, starting from a baseline of 1000 users and scaling up to 100,000 users, which represents the maximum expected load during a national election.

6.2. Experiment Steps

1- 
Initialization:
The test environment was initialized with 10,000 predefined user accounts and corresponding transactions to simulate the election process;
2- 
Load Simulation:
A load testing tool, JMeter, was employed to generate concurrent user activity. The tool simulated up to 100,000 voters accessing the system simultaneously, performing actions like voting and checking transaction status;
3- 
Monitoring:
During the simulation, system performance was continuously monitored, focusing on metrics such as response time, transaction throughput (TPS), latency, and error rates;
4- 
Scaling:
The load was incrementally increased from 1000 to 100,000 users to observe the system’s behavior under different stress levels.

6.3. Performance Metrics Collected

To ensure a comprehensive evaluation of the VoteChain system, the following key performance metrics were collected during the performance testing:
  • Time to Complete Transactions: This metric represents the average time taken to complete a voting transaction, from initiation to confirmation on the blockchain.
    Result: Figure 22 illustrates the response time across different user loads, highlighting the system’s ability to maintain quick transaction processing even as the number of users increases. The system maintained an average transaction time of 1.5 s with up to 50,000 concurrent users. When the number of users increased to 100,000, the transaction time slightly rose to 2.2 s. These results indicate that the system can process transactions quickly, even under significant load, ensuring a smooth voting experience during high-demand periods.
  • System Uptime: This metric measures the percentage of time the system remained operational and accessible to users throughout the testing period.
    Result: Figure 23 shows the system uptime percentage during maximum load conditions, emphasizing VoteChain’s reliability. VoteChain achieved an impressive uptime of 99.98% during the test, with only brief and negligible downtimes occurring during peak load conditions. This high level of availability is critical for maintaining voter trust and ensuring that the system is reliable during an election.
  • Network Latency: Network latency refers to the delay experienced in network communication between users’ devices and the VoteChain server, measured in milliseconds.
    Result: Figure 24 details the latency experienced by users during the test, indicating that the system provides timely responses under various load conditions. The network latency averaged 120 milliseconds under baseline conditions and peaked at 250 milliseconds during maximum load. Despite the increased load, the latency remained within acceptable limits, ensuring that users could interact with the system in near real-time without noticeable delays.
  • Transactions Per Second (TPS): TPS is a crucial metric that indicates the number of voting transactions the system can process per second, reflecting its throughput capacity.
    Result: Figure 25 depicts the TPS scaling with the number of users, demonstrating VoteChain’s capacity to handle high transaction volumes during peak periods. The system demonstrated the ability to handle a TPS of 750 during moderate loads, which scaled up to 1200 TPS under heavy load conditions. This shows that VoteChain can efficiently manage a large number of transactions during peak voting periods, meeting the demands of a national election.
  • Error Rates: This metric tracks the frequency and type of errors encountered during the voting process, including failed transactions and system crashes.
    Result: Figure 26 shows the error rates during the voting process under different system loads. The graph illustrates that as the load on the system increases, the error rate also slightly increases but remains exceptionally low, with a maximum error rate of 2% at the highest load. This demonstrates the VoteChain system’s resilience and ability to maintain high performance and reliability even under stress. Error rates remained exceptionally low, with only 0.02% of transactions failing under maximum load. These isolated failures were primarily due to network congestion and were quickly resolved, having minimal impact on the overall system performance.

6.4. Discussion and Analysis

In order to evaluate the capability of VoteChain in supporting a national election, the performance testing results were analyzed against industry standards:
1- 
Time to Complete Transactions: VoteChain maintained a transaction completion time well within acceptable limits, even as user numbers increased significantly. This consistency suggests that VoteChain’s architecture and smart contract execution are optimized for rapid processing, a key requirement for ensuring voter confidence and system reliability during peak usage periods;
2- 
System Uptime: VoteChain demonstrated exceptional availability, with uptime consistently above 99.98%. This level of robustness is vital for the success of an election process, as it ensures the system remains operational without interruptions, even under heavy loads;
3- 
Network Latency: Latency remained within an acceptable range, with minimal delays observed even under maximum load. This low latency is essential for providing voters with real-time interactions with the system, contributing to a smooth and user-friendly voting process;
4- 
Transactions Per Second (TPS): VoteChain has the capacity to handle a high number of transactions per second, scaling effectively with increased load. The TPS measurements were aligned with industry benchmarks, confirming that VoteChain can manage the transactional demands of a national election without performance degradation;
5- 
Error Rates: Error rates remained extremely low throughout the testing, with only isolated incidents of transaction failures, primarily due to network issues during extreme load conditions. These errors were swiftly resolved, and their impact on overall system performance was negligible.
The performance testing shows that the VoteChain system is capable of supporting a national election with high voter turnout. The system demonstrated strong performance across all key metrics, including transaction speed, system uptime, and scalability. The low error rates and consistent transaction throughput suggest that VoteChain is well-prepared to handle the demands of a large-scale election, providing a reliable, secure, and efficient platform for electronic voting.

7. Improvements to the Existing E-Voting System

A comparison of the proposed VoteChain system with other blockchain-based e-voting systems is presented in this section. The comparison shows the unique advantages of VoteChain in terms of security, scalability, transparency, and query efficiency.
  • Security
Via employing decentralized consensus mechanisms and cryptographic protections, blockchain-based e-voting systems provide strong security. However, further security enhancement is provided by VoteChain through the integration of advanced cryptographic techniques, including SHA-256 hashing, elliptic curve signatures, and the Casper proof-of-stake (PoS) consensus mechanism [16].
In contrast to other systems that rely on traditional proof-of-work (PoW) protocols, Casper PoS [36] ensures that malicious validators face financial penalties for attempting to manipulate the voting process. This makes VoteChain more resilient to attacks while maintaining voter privacy and ensuring that each vote is securely recorded and cannot be tampered with.
2.
Scalability
Because of the limitations of network bandwidth and consensus protocols, scalability is considered a challenge in many blockchain-based e-voting systems [31]. VoteChain supports a large voter base without affecting performance by utilizing the scalability features of Ethereum, such as sharding and off-chain processing capabilities. Unlike some blockchain systems that face bottlenecks with higher transaction volumes, the architecture of VoteChain ensures running operations smoothly with minimal latency, even during peak voting times, making it suitable for national-level elections.
3.
Transparency
Transparency [16] is a key requirement of any blockchain-based e-voting system. VoteChain enables authorized observers to audit the entire voting process in real-time by accessing the immutable ledger of the blockchain, ensuring that every vote is verifiable. While some other systems provide transparency, they require a trade-off with privacy or even complex cryptographic solutions to verify vote authenticity. VoteChain, through its balanced use of smart contracts and transparent hashing mechanisms, allows auditing while preserving the privacy of voters.
4.
Query Efficiency
Querying large datasets when extracting voting-related data from the blockchain is a challenge in many blockchain-based e-voting systems [38]. By integrating advanced query mechanisms, such as vql (verifiable query language) and vchain+, VoteChain will support efficient and secure querying of blockchain data. VoteChain will provide faster retrieval of voting statistics and results without the need for full data replication.
In contrast, other blockchain-based systems provide limited querying capabilities, which in turn slow down the analysis of voting data, especially in real-time.
5.
User and Administrative Roles
When comparing VoteChain with other blockchain-based e-voting systems [31] that may support complex or less-defined administrative processes, the roles of the administrators and voters are clearly defined by VoteChain. The responsibilities of administrators, including voters’ registration management, monitoring the voting process, and computing results, are integrated into the smart contracts of VoteChain, thus reducing the need for manual intervention and increasing the reliability of the system. The role-based architecture of VoteChain makes it different from other systems, as the actions of administrators can sometimes introduce vulnerabilities or require more manual control.

8. Conclusions and Future Work

This research presents an innovative blockchain-based e-voting system that employs smart contracts to facilitate secure and cost-effective elections while safeguarding voter privacy in the state of Palestine. Our demonstration on an Ethereum private blockchain underscores the transformative potential of blockchain technology in addressing the inherent challenges associated with traditional e-voting systems. By utilizing blockchain, VoteChain not only guarantees the security and integrity of elections but also significantly enhances transparency, making it a groundbreaking advancement in the field of electronic voting. The transparency provided by the blockchain enables election audits and analysis, making all election processes more accessible and reliable.
The proposed VoteChain enhances traditional e-voting systems by providing robust solutions to challenges such as privacy, eligibility, receipt freedom, ease of use, and verifiability. Regarding privacy and secrecy, VoteChain employs advanced cryptographic hashing techniques to protect voter anonymity, adding a sophisticated layer of complexity to traceability. This ensures that voter identities remain secure, preventing the risk of misuse. Further research is needed to explore enhancements in security measures, user experience improvements based on feedback, and scalability for diverse electoral contexts, particularly in the unique political landscape of Palestine. Collaborating with governmental bodies for real-world pilot implementations can provide valuable insights and empirical data to refine and validate the VoteChain system. By continuing to innovate and adapt, VoteChain aims to become a leading solution in the future of secure and transparent elections.
This research on VoteChain opens up several avenues for future exploration and development. While the current system demonstrates the feasibility of blockchain-based e-voting in the context of Palestine, further advancements are required to fully address the challenges of large-scale national elections. Future work should focus on scalability and performance optimization, exploring techniques such as sharding or off-chain transaction processing to reduce latency and increase transaction throughput, making VoteChain more suitable for larger electoral contexts.
Additionally, quantum-resistant encryption is a crucial area for future development, as quantum computing may render current cryptographic algorithms vulnerable. Incorporating quantum-resistant encryption methods, such as lattice-based cryptography, could ensure the system’s long-term security.
Integration with privacy-preserving protocols like Blockshare, zero-knowledge proofs, and homomorphic encryption should also be explored to enhance privacy without compromising transparency. These techniques will allow for secure, verifiable elections while maintaining voter confidentiality.
A real-world pilot implementation in collaboration with governmental bodies is another essential step. Such pilot projects would provide practical feedback on usability, security, and scalability, offering opportunities for further refinement and validation of the system.

Author Contributions

Conceptualization, E.D. and A.H.; Methodology, A.H.; Software, A.H.; Validation, E.D., A.H. and M.A.H.; Formal Analysis, E.D. and M.A.H.; Investigation, E.D.; Resources, A.H.; Data Curation, E.D.; Writing—Original Draft Preparation, E.D.; Writing—Review and Editing, M.A.H.; Visualization, A.H. and M.A.H.; Supervision, E.D.; Project Administration, E.D., A.H. and M.A.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The source code for the smart contracts used in the VoteChain system has been made available for review and public access. You can access the code via the following link: Smart Contract Code Repository: Google Drive Link (https://docs.google.com/document/d/1nB6-t2WsPmI3NN5ajA7pPNcY3F2JTYfC/edit?usp=sharing&ouid=114508684580003119735&rtpof=true&sd=true).

Acknowledgments

The authors would like to thank Palestine Technical University-Kadoorie (PTUK) and Al Istiqlal University for their support.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. 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 2019; pp. 24–29. [Google Scholar] [CrossRef]
  2. Patil, H.; Ladkat, P.; Jituri, A.; Desai, R.; Shinde, D.S. Blockchain Based E-Voting System. SSRN Electron. J. 2019, 102. [Google Scholar] [CrossRef]
  3. Shahzad, B.; Crowcroft, J. Trustworthy Electronic Voting Using Adjusted Blockchain Technology. IEEE Access 2019, 7, 24477–24488. [Google Scholar] [CrossRef]
  4. Prasetyadi, G.C.; Mutiara, A.B.; Refianti, R. Blockchain-Based Electronic Voting System with Special Ballot and Block Structures That Complies with Indonesian Principle of Voting. Int. J. Adv. Comput. Sci. Appl. 2020, 11, 164–170. [Google Scholar] [CrossRef]
  5. Taş, R.; Tanriöver, Ö.Ö. A Manipulation Prevention Model for Blockchain-Based E-Voting Systems. Secur. Commun. Netw. 2021, 2021, 6673691. [Google Scholar] [CrossRef]
  6. Guide, N.; Gauriansurkar, A. Electronic Voting. Int. J. Res. Eng. Sci. IJRES ISSN 2022, 10, 21–26. [Google Scholar]
  7. Daraghmi, E.; Daraghmi, Y.; Daraghma, R.; Fouchal, H.; Ayaida, M.A. Marwane Ayaida A Blockchain Framework for Enhancing NB-IoT Security and Authentication: Health Monitoring System as a Case. Telematique 2022, 21, 7497–7505. [Google Scholar]
  8. Daraghmi, E.; Qaroush, Z.; Hamdi, M.; Cheikhrouhou, O. Forensic Operations for Recognizing SQLite Content (FORC): An Automated Forensic Tool for Efficient SQLite Evidence Extraction on Android Devices. Appl. Sci. 2023, 13, 10736. [Google Scholar] [CrossRef]
  9. Alsaed, Z.; Khweiled, R.; Hamad, M.; Daraghmi, E.; Cheikhrouhou, O.; Alhakami, W.; Hamam, H. Role of Blockchain Technology in Combating COVID-19 Crisis. Appl. Sci. 2021, 11, 12063. [Google Scholar] [CrossRef]
  10. Daraghmi, E.-Y.; Abu Helou, M.; Daraghmi, Y.-A. A Blockchain-Based Editorial Management System. Secur. Commun. Netw. 2021, 2021, 9927640. [Google Scholar] [CrossRef]
  11. Daraghmi, E.Y.; Daraghmi, Y.A.; Yuan, S.M. MedChain: A Design of Blockchain-Based System for Medical Records Access and Permissions Management. Appl. Sci. 2019, 7, 164595–164613. [Google Scholar] [CrossRef]
  12. Daraghmi, E.Y.; Daraghmi, Y.A.; Yuan, S.M. UniChain: A Design of Blockchain-Based System for Electronic Academic Records Access and Permissions Management. Appl. Sci. 2019, 9, 4966. [Google Scholar] [CrossRef]
  13. Daraghmi, E.; Jayousi, S.; Daraghmi, Y.; Daraghmi, R.; Fouchal, H. Smart Contracts for Managing the Agricultural Supply Chain: A Practical Case Study. IEEE Access 2024, 12, 125462–125479. [Google Scholar] [CrossRef]
  14. Daraghmi, E.-Y.; Wu, M.-C.; Yuan, S.-M. A Multilayer Data Processing and Aggregating Fog-Based Framework for Latency-Sensitive IoT Services. Appl. Sci. 2021, 11, 1374. [Google Scholar] [CrossRef]
  15. Daraghmi, E.; Zhang, C.-P.; Yuan, S.-M. Enhancing Saga Pattern for Distributed Transactions within a Microservices Architecture. Appl. Sci. 2022, 12, 6242. [Google Scholar] [CrossRef]
  16. Salem, Y.; Daraghmi, E. Gdpr-Blockchain Compliance for Personal Data. J. Theor. Appl. Inf. Technol. 2021, 99, 5867–5877. [Google Scholar]
  17. Awalu, I.L.; Kook, P.H.; Lim, J.S. Development of a Distributed Blockchain Evoting System. In Proceedings of the ACM International Conference Proceeding Series; Association for Computing Machinery, Beijing, China, 15–17 July 2019; pp. 207–216. [Google Scholar]
  18. Zhang, W.; Yuan, Y.; Hu, Y.; Huang, S.; Cao, S.; Chopra, A.; Huang, S. A Privacy-Preserving Voting Protocol on Blockchain. IEEE Int. Conf. Cloud Comput. Cloud 2018, 2018, 401–408. [Google Scholar] [CrossRef]
  19. Central Election Commision. Palestine Report. on 2021 Local. Election. 2022. Available online: https://www.elections.ps/tabid/1203/language/en-US/Default.aspx (accessed on 10 October 2024).
  20. Guo, Y.; Liang, H.; Zhu, L.; Gai, K. Zk-SNARKs-Based Anonymous Payment Channel in Blockchain. Blockchains 2024, 2, 20–39. [Google Scholar] [CrossRef]
  21. Mišić, V.B.; Naderi Mighan, S.; Mišić, J.; Chang, X. Decentralization Is Good or Not? Defending Consensus in Ethereum 2.0. Blockchains 2024, 2, 1–19. [Google Scholar] [CrossRef]
  22. Moosavi, N.; Taherdoost, H. Blockchain Technology Application in Security: A Systematic Review. Blockchains 2023, 1, 58–72. [Google Scholar] [CrossRef]
  23. Agrawal, S.; Neu, J.; Tas, E.N.; Zindros, D. Proofs of Proof-of-Stake with Sublinear Complexity. arXiv 2022, arXiv:2209.08673. [Google Scholar]
  24. Ma, X.; Zhou, J.; Yang, X.; Liu, G. A Blockchain Voting System Based on the Feedback Mechanism and Wilson Score. Information 2020, 11, 552. [Google Scholar] [CrossRef]
  25. Hajian Berenjestanaki, M.; Barzegar, H.R.; El Ioini, N.; Pahl, C. Blockchain-Based E-Voting Systems: A Technology Review. Electronics 2023, 13, 17. [Google Scholar] [CrossRef]
  26. Khan, K.M.; Arshad, J.; Khan, M.M. Secure Digital Voting System Based on Blockchain Technology. Int. J. Electron. Gov. Res. 2018, 14, 53–62. [Google Scholar] [CrossRef]
  27. Yavuz, E.; Koç, A.K.; Çabuk, U.C.; Dalkılıç, G. Towards Secure E-Voting Using Ethereum Blockchain. In Proceedings of the 2018 6th International Symposium on Digital Forensic and Security (ISDFS), Antalya, Turkey, 2–25 March 2018; pp. 1–7. [Google Scholar]
  28. Tarasov, P.; Tewari, H. The Future of E-Voting. IADIS Int. J. Comput. Sci. Inf. Syst. 2017, 12, 148–165. [Google Scholar]
  29. Patidar, K.; Jain, S. Decentralized E-Voting Portal Using Blockchain. In Proceedings of the 2019 10th International Conference on Computing, Communication and Networking Technologies (ICCCNT), Kanpur, India, 6–8 July 2019; pp. 1–4. [Google Scholar]
  30. Sun, X.; Wang, Q.; Kulicki, P.; Sopek, M. A Simple Voting Protocol on Quantum Blockchain. Int. J. Theor. Phys. 2019, 58, 275–281. [Google Scholar] [CrossRef]
  31. Singh, S.; Singh, A.; Verma, S.; Dwivedi, R.K. Designing a Blockchain-Enabled Methodology for Secure Online Voting System. In Proceedings of the 2023 International Conference on Intelligent Data Communication Technologies and Internet of Things (IDCIoT), Bengaluru, India, 5–7 January 2023; pp. 178–184. [Google Scholar]
  32. Fusco, F.; Lunesu, M.I.; Pani, F.E.; Pinna, A. Cryptovoting, a Blockchain Based E-Voting System. In Proceedings of the 10th International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management (IC3K 2018)-Volume 3: KMIS; Science and Technology Publications, Lda: Seville, Spain, 2018; pp. 221–225. [Google Scholar]
  33. Khoury, D.; Kfoury, E.F.; Kassem, A.; Harb, H. Decentralized Voting Platform Based on Ethereum Blockchain. In Proceedings of the 2018 IEEE International Multidisciplinary Conference on Engineering Technology (IMCET), Beirut, Lebanon, 14–16 November 2018; pp. 1–6. [Google Scholar]
  34. Ordoñez, C.C.; Organero, M.M.; Ramirez-Gonzalez, G.; Corrales, J.C. Smart Contracts as a Tool to Support the Challenges of Buying and Selling Coffee Futures Contracts in Colombia. Agriculture 2024, 14, 845. [Google Scholar] [CrossRef]
  35. MetaMask MetaMask: The Crypto Wallet for Defi, Web3 Dapps and NFTs. Available online: https://metamask.io/ (accessed on 10 October 2024).
  36. Bandara, E.; Shetty, S.; Mukkamala, R.; Liang, X.; Foytik, P.; Ranasinghe, N.; Zoysa, K.D. Casper: A Blockchain-Based System for Efficient and Secure Customer Credential Verification. J. Bank. Financ. Technol. 2022, 6, 43–62. [Google Scholar] [CrossRef]
  37. Avhad, A.; Devadiga, I.; Jadhav, S.; Karmode, S. Decentralize block share using blockchain. Int. J. Progress. Res. Eng. Manag. Sci. 2024. [Google Scholar] [CrossRef]
  38. Daraghmi, E.-Y.; Hamoudi, A. The Development of A Blockchain-Based System For Electronic Voting. J. Theor. Appl. Inf. Technol. 2024, 102, 6468–6481. [Google Scholar]
Figure 1. Architecture of the proposed e-voting system.
Figure 1. Architecture of the proposed e-voting system.
Futureinternet 16 00388 g001
Figure 2. Voting Block.
Figure 2. Voting Block.
Futureinternet 16 00388 g002
Figure 3. Secure e-voting Session.
Figure 3. Secure e-voting Session.
Futureinternet 16 00388 g003
Figure 4. Secure e-voting flowchart.
Figure 4. Secure e-voting flowchart.
Futureinternet 16 00388 g004
Figure 5. Truffle Develop Command.
Figure 5. Truffle Develop Command.
Futureinternet 16 00388 g005
Figure 6. Configuring .env file variables.
Figure 6. Configuring .env file variables.
Futureinternet 16 00388 g006
Figure 7. React and Blockchain URL.
Figure 7. React and Blockchain URL.
Futureinternet 16 00388 g007
Figure 8. Starting and running the project.
Figure 8. Starting and running the project.
Futureinternet 16 00388 g008
Figure 9. Metamask network Localhost 7545.
Figure 9. Metamask network Localhost 7545.
Futureinternet 16 00388 g009
Figure 10. Voting process workflow.
Figure 10. Voting process workflow.
Futureinternet 16 00388 g010
Figure 11. Main screen of the e-voting system.
Figure 11. Main screen of the e-voting system.
Futureinternet 16 00388 g011
Figure 12. Add voter ID and Ethereum wallet address.
Figure 12. Add voter ID and Ethereum wallet address.
Futureinternet 16 00388 g012
Figure 13. Voter is registered.
Figure 13. Voter is registered.
Futureinternet 16 00388 g013
Figure 14. Send the one-time password to the phone number that was registered.
Figure 14. Send the one-time password to the phone number that was registered.
Futureinternet 16 00388 g014
Figure 17. Voting procedures.
Figure 17. Voting procedures.
Futureinternet 16 00388 g017
Figure 18. Start Voting or Declare Results.
Figure 18. Start Voting or Declare Results.
Futureinternet 16 00388 g018
Figure 19. Start Voting.
Figure 19. Start Voting.
Futureinternet 16 00388 g019
Figure 20. A vision of suppressing tallying authorities.
Figure 20. A vision of suppressing tallying authorities.
Futureinternet 16 00388 g020
Figure 21. Declare Results.
Figure 21. Declare Results.
Futureinternet 16 00388 g021
Figure 22. Response time of VoteChain system.
Figure 22. Response time of VoteChain system.
Futureinternet 16 00388 g022
Figure 23. VoteChain system uptime.
Figure 23. VoteChain system uptime.
Futureinternet 16 00388 g023
Figure 24. Network latency.
Figure 24. Network latency.
Futureinternet 16 00388 g024
Figure 25. Transactions Per Second (TPS).
Figure 25. Transactions Per Second (TPS).
Futureinternet 16 00388 g025
Figure 26. Error rate.
Figure 26. Error rate.
Futureinternet 16 00388 g026
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Daraghmi, E.; Hamoudi, A.; Abu Helou, M. Decentralizing Democracy: Secure and Transparent E-Voting Systems with Blockchain Technology in the Context of Palestine. Future Internet 2024, 16, 388. https://doi.org/10.3390/fi16110388

AMA Style

Daraghmi E, Hamoudi A, Abu Helou M. Decentralizing Democracy: Secure and Transparent E-Voting Systems with Blockchain Technology in the Context of Palestine. Future Internet. 2024; 16(11):388. https://doi.org/10.3390/fi16110388

Chicago/Turabian Style

Daraghmi, Eman, Ahmed Hamoudi, and Mamoun Abu Helou. 2024. "Decentralizing Democracy: Secure and Transparent E-Voting Systems with Blockchain Technology in the Context of Palestine" Future Internet 16, no. 11: 388. https://doi.org/10.3390/fi16110388

APA Style

Daraghmi, E., Hamoudi, A., & Abu Helou, M. (2024). Decentralizing Democracy: Secure and Transparent E-Voting Systems with Blockchain Technology in the Context of Palestine. Future Internet, 16(11), 388. https://doi.org/10.3390/fi16110388

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop