- Open Access
- Authors : Gokul Gopalakrishnan , Akshay Jadhav , Keval Parakhaya , Ronak Singh, K.S Suresh Babu
- Paper ID : IJERTV12IS040091
- Volume & Issue : Volume 12, Issue 04 (April 2023)
- Published (First Online): 24-04-2023
- ISSN (Online) : 2278-0181
- Publisher Name : IJERT
- License: This work is licensed under a Creative Commons Attribution 4.0 International License
Online Voting System using Blockchain
Gokul Gopalakrishnan, Akshay Jadhav, Keval Parakhaya, Ronak Singh,
Department of Computer Engineering, Pillai College of Engineering, Panvel, Navi Mumbai
Prof. K.S Suresh Babu,
Faculty of Computer Engineering Department, Pillai college of engineering, Panvel,
Navi Mumbai
AbstractAn online voting system using blockchain technology can address many of the challenges faced by traditional voting systems, such as security, transparency, and reliability. This system is based on the decentralized and distributed nature of blockchain technology, which allows for tamper-proof and transparent record-keeping of votes. The system involves the creation of a unique digital identity for each voter, which is stored on the blockchain. The voter then uses their digital identity to cast their vote, which is recorded on the blockchain as a transaction. The blockchain network ensures that the vote is secure, transparent, and cannot be tampered with, as each block in the chain is validated and verified by multiple nodes on the network. Overall, an online voting system using blockchain technology can provide a more secure and trustworthy method of conducting elections, thereby increasing voter confidence in the electoral process.
-
INTRODUCTION
An online voting system using blockchain is a revolutionary way to conduct elections that leverages the security and immutability of blockchain technology. Unlike traditional voting systems, which are often prone to fraud, manipulation, and security breaches, a voting system on basis of blockchain offers a more secure and transparent approach to voting.
By using blockchain, an online voting system can ensure that each vote is recorded and stored in a tamper-proof manner, making it impossible for any malicious actor to alter or delete the votes. Moreover, blockchain technology enables voters to cast their votes anonymously, while still allowing them to verify that their vote has been recorded accurately. Overall, an online voting system using blockchain offers many benefits, including increased security, transparency, and accessibility. As the world continues to digitize, such a system could become the new norm for conducting elections, ensuring that democracy remains secure and trustworthy in the digital age. Blockchain technology is created to survive data loss. Researchers are working to capitalize on benefits including non-repudiation, confidentiality, and transparency that are important for voting applications. Blockchain technology has entered a new phase with voting. Every transaction in the system is linked to the one before it thanks to the blockchain. Thus, it is not possible for such a system to change accepted transactions.
-
OBJECTIVES The purpose of this project is to
-
The electoral process should be openly verifiable and transparent.
-
Voter registration would be guaranteed by the election process.
-
Only legitimate electors may cast ballots.
-
Voting procedures must be unbreakable.
-
Election influencing and rigging should not be permitted by any organization with a desire for power.
-
Authenticity, anonymity, accuracy, and verifiability standards must be adhered to. Accuracy, anonymity, scalability, and speed are the four fundamental characteristics of voting systems. Blockchain technology is being used for electronic voting applications, and initiatives are being made to use it to meet these four requirements:
-
Accuracy: Each voter's intent must be ascertained and translated into a final result by the voting process.
-
Anonymity- Anonymity is a challenging task. The voter needs to be discrete and wont leak or altered. Blockchain has a hashing function that would make it impossible to retrieve the data without a specific key.
-
Scalability- India is with the highest growing population. It is most important to keep scalability because each and every vote should be recognized and can be calculated.
-
Speed- The process of voting is fast and the result will be displayed as soon as the election gets completed. Blockchain provides a platform for creating a decentralized, highly secure, and maintain anonymity.
The same technology can use to record votes, report votes, display votes, and helps to prevent many types of voter fraud. We wanted our system to be tested thoroughly making sure that both the modules are working together properly and the smart contracts are deployed properly and working the way, it was designed for. All this testing was done on the Ganache virtual private network. End-to-end verifiability is achieved in the system. The system will have features like Speed, Scalability, Anonymity, Authentication, Anonymity, Accuracy, Verifiability, atomicity, and integrity.
-
-
LITERATURE SURVEY
The Author Prof. Mrunal Pathak, Amol Suradkar, Akansha Ghodeswar, and Assistant Professor at Information Technology Department, AISSMS Institute of Information Technology, Pune. This research discusses adopting blockchain in the distribution of databases on an online voting system, Which can reduce one of the cheating sources of database manipulation. The pre-election registration
process, like counting, voting, final election results, and auditing was explained. Author Prof. Anita A. Lahane, Junaid Patel, ITM Web of Conferences Andheri West, Mumbai, Maharashtra 400053. The paper proposed that the consensus algorithm is proof of work and that all the election properties such as validity, privacy, individuality, flexibility, etc. were satisfied. Author Prof. Pravin Nimbalkar Department of Computer Engineering JSPMs Imperial College of Engineering, research Pune, India. This Paper discusses the benefits of blockchain like cryptographic foundations and also achieving end-to-end verifiability. The main approach has been implemented with Multichain and transparency to achieve effective solutions to an online voting system. Author Ahmed Ben Ayed, Department of Engineering, Computer Science, Colorado Technical University, Colorado Springs, Colorado, USA. This paper proposed to allow users to access their Ethereum wallet through a browser extension, Author Satish Basapur, Neetha Natesh, Vanishree Abhay, Bachelor of Engineering, Information Technology Student, Dr. Ambedkar Institute of Technology, Bangalore. The online voting system is implemented using smart contracts for an Ethereum network, the Metamask wallet used for transactions, and the Solidity language. A blockchain database is mainly distributed, shared, and fault-tolerant. An append-only database maintains the record in blocks. Thus, from this research paper, we have to conclude that the Blockchain with its key characteristics, has shown its potential to reshape traditional industries, one of them being Online Voting Systems.
-
Limitations of Existing System
One of the most important technical challenges that online voting systems presently face is secure digital identification management, but it's not the only one. All potential voters should register with the voting mechanism prior to the election. The data ought to be available online. Furthermore, any material involving them must maintain the confidentiality of their identifying information. Using outdated internet voting methods could lead to the following problems:
-
Voting anonymously: After a vote is made through the system, it ought to be kept that way for system administrators and everyone else. There may or may not be a choice for each contende on each ballot.
-
Processes for individual voting forms: The representation of the vote in databases or online applications remains a topic of intense debate. A hashed token will not provide obscurity or integrity, despite the fact that sending a transparent text message is the most undesirable option. The token resolution cannot bind the vote at that point because the vote ought to be unreliable.
-
Ballot casting verifiability by (and only by) the voter: When a voter casts a ballot, only that voter should be able to see and verify their own vote. This counter-life has the potential to increase voters' sense of trust in addition to suggesting non-repudiation.
-
High initial setup costs: Despite the fact that online voting systems are in many ways less expensive to maintain than traditional elections.
-
Increasing security problems- A cyber attack would be very bad for public polls. Nobody would shoulder the responsibility of helping someone win an election who had a degree in hacking. Although the DDoS attacks have been documented, they largely did not occur during the elections.
-
-
Existing System Architecture
The casting and counting of votes is aided or managed by an electronic voting system known as an electronic voting machine (EVM). An electronic voting machine is made up of two main parts: the control unit and the balloting unit. The link associates these parts, and the EVM's control unit ought to be kept with either the directing official or the surveying official. The balloting unit is located in the voting compartment, where voters can cast their ballots. A symbol and a list of candidate names will be displayed on a machine with a blue button next to it. By pressing the blue button next to a candidate's name, voters can select their favorite. As it designs the voting chain for a crowded nation, the system will be secure. The data might not be changed. Humans are necessary for this kind of system.
Fig. Current Election System
-
-
PROPOSED SYSTEM
To ensure that an online voting system will not permit coercion and to meet the privacy and security requirements of the system, voters will vote under supervision. At work, we set up a Go-Ethereum permission Proof-of-Authority blockchain to accomplish these aims. POA employs a consensus-based algorithm that will be distributed proportionally for quick transactions based on identity as a stake.
An existing electronic voting system could benefit from the Ethereum blockchain technology, as we have proposed.
-
SYSTEMS ARCHITECTURE
The number of levels in such a system varies. In accordance with the requirements of the nation, it provides a system that is quick, consistent, and secure. Level architecture is used in the design of the system. To get this system to agree, DPoS algorithms should also be used. Our system has several
modules such as Admin webpage, User authentication, Candidate Registration, Change State, Voting, and Result.
-
Metamask Browser Extension
A software wallet for digital currencies that was generally used to communicate with an ethereum blockchain. Additionally, it makes it possible for users to interact with decentralized applications by providing them with access to their Ethereum wallets via a browser extension or mobile app.
-
Solidity
This object-oriented programming language allows for the creation of smart contracts for Ethereum and other blockchain platforms. Christian Reitwiessner, Alex Beregszaszi, and the various Ethereum core contributors were primarily in charge of developing Ethereum.An Ethereum Virtual Machine application runs strength applications.
-
Smart Contract
The terms of a contract between the buyer and seller are directly encoded into the lines of code in this self-executing contract.The distributed, decentralized blockchain network holds both the code and the agreement.The execution is guided by the code and uses traceable and irreversible transactions.
-
Truffle and Ganache
The truffle framework is primarily utilized throughout the prototype creation process. It invented the built-in capability to compile Solidity code and then deploy it using a blockchain, which is crucial for its capacity as a package manager. The truffle provided three primary commands: truffle compile, truffle test, and truffle migrate. which is mostly used for making contracts, putting them on a blockchain on a network, and testing them later. On a local machine, ganache essentially mimics the Ethereum blockchain. It mainly comes up with two different models, GUI, and CLI. Representation of this online voting system, Users need to register first using credentials such as name, date of birth, and valid email address. Email addresses get verified by sending OTP to the respective mail addresses of the users. Then the user needs to log in using their credentials. Users need to be registered as a voter. Users can view the candidate's information. Users can see the result. Users can cast votes using candidate information. Users can see the voting starts as per the candidates.
The blockchain-based voting system has admin and user sections to carry out their respective processes. Admin can log in with its credentials. After login admin can perform tasks like creating elections, adding candidates, and result declaration. On the basis of the availability of the candidate, the admin can add their information to the system and schedule an election. Admin can announce results after the election.
Admin can control the phases or states in elections. There are three phases in the system pre-voting phase in which all voters and candidates register in the system. Admin can validate voters and candidates. The voting phase is when voters are able to vote to their desired eligible candidate. Thus, the resulting section is in which, admin will declare the result of the voting.
The dataflow under the blockchain.conditions required for executing smart contracts are coded into a smart contract using a solidity programming language. When predefined conditions have to meet, then such a smart contract acquires self-execution. Users cast their votes, and information of the user and their casted votes are encrypted using the SHA-256 algorithm. It gets stored in the smart contract truffle, compiles, and helps in migration so that it will deploy on the blockchain network workflow of the application. Firstly, admin registration is carried out followed by voter registration and candidate registrations are done and verified. Admin authenticates users that are registered. Admin can manage the phases of the online voting system. Voters can vote only if the admin has started the voting phase. At particular times the admin closes the voting and tallies results and the admin can announce results.
Admin and user have different roles in each phase of the system. In the pre-voting phase, voters can register and give the proof that admin can verify their respective identities. In the voting phase, voters can cast their votes. In the post- voting phase, the admin publishes the results so that voters can observe the results of the election.
-
-
PROCESS
Admin can log in with its credentials. After login admin can perform tasks like creating elections, adding candidates, and result declaration. On the basis of the availability of the candidate, the admin can add their information to the system and schedule an election. Admin can announce results after the election.The user needs to register first using credentials such as name, date of birth, and valid email address. Email addresses get verified by sending OTP to the respective mail addresses of the users. Then the user needs to log in using their credentials. Users need to be registered as a voter. Users can view the candidate's information.
Users can cast votes using candidate information. Users can see the voting stats as per the candidates. Voters cast their votes in the form of a transaction and then the block will be created for each such vote. After that, all data is encrypted, and transactions must be stored. After that, the transaction is sent out to every node in the network, which checks it out. If this network approves the transaction, it is added to a chain and stored in a block. highlighting the fact that a block cannot be removed from the chain after it has been added to it. The results can now be seen by users, and they can retrace the transactions if necessary.
hacked. It will increase speed and accuracy and also it will save time and money. It will be used in opinion polls for generating various opinions among the people, also used for business purposes to carry out polls and generate data for business-related purposes and create data-driven models for organizations. Online voting systems can be used in the education sector to carry out student elections. As it is based on blockchain technology, it will maintain atomicity and integrity.
Currently, Voting systems do not suffice the security requirements of this modern generation. The construction of a system that takes advantage of the security, and also helps to convenience, and trust, and is generally involved in the voting process. Consequently, these voting systems will utilize Blockchain technology, which enables voters to vote at any time and from any location and contributes to the improvement of security. The voting process only becomes more cost- and time-efficient.
-
FUTURE SCOPE
The Blockchain concept has been proposed as the basis for our voting system. Taking into account that the most widely used protocol in the blockchain sector is Ethereum. One reason for this is that Ethereum allows for the creation of contracts, which are accounts managed by the EVM. These contracts can be used to build a voting mechanism in a secure way by abiding by all of the predetermined restrictions in the contract.
Our original strategy was to piecemeal build the system to maximize efficiency. In order to optimize the user experience, we made the front-end module as simple as possible in the first stage of the system's construction. The second is the back-end module, where each smart contract is created, with all of the voting requirements stated and prepared to be uploaded to the blockchain network. The two modules and testing are connected in the last stage. We needed our system to undergo rigorous testing in order to make sure that the smart contracts were deployed properly and were working as planned.
VIII. APPLICATION
The online voting system can be used in government elections so that it will give full transparency to voters. As it is a Tamper-proof system so there is no chance of getting
-
CONCLUSION
In conclusion, an online voting system using blockchain technology offers several potential benefits, including increased security, transparency, and accuracy. By leveraging the decentralized nature of blockchain, an online voting system can prevent tampering or manipulation of votes, and ensure that each vote is recorded and counted accurately.
However, implementing such a system would require overcoming several technical and logistical challenges, such as ensuring user privacy while maintaining the integrity of the voting process, and preventing attacks on the underlying blockchain infrastructure.
Despite these challenges, an online voting system using blockchain technology holds great promise for improving the integrity and accessibility of the voting process. Further research and development in this area could lead to the widespread adoption of blockchain-based voting systems, potentially revolutionizing the way we conduct elections and democratic decision-making.
-
REFERENCE