A VISIONARY APPROACH TO SMART VOTING SYSTEM
ed
Rohit Sroaa, Priyanshu Sinhaa, Ritwik Sharmaa , Parth Rustagia, and Moolchand Sharmab*
a
Student, Computer Science and Engineering, Maharaja Agrasen Institute of Technology, New Delhi,
India
iew
*b
Assistant Professor, Computer Science and Engineering, Maharaja Agrasen Institute of Technology,
New Delhi, India
Mail-id: [email protected]
a
[email protected]
a
[email protected]
a
[email protected]
* [email protected]
v
re
Abstract
With the emergence of COVID-19 as a global pandemic, the need for an online voting system is
er
becoming appallingly evident in India. Unfortunately, India still suffers from a flawed electoral system
in today's scenario. Ballot rigging, hacking of the EVM (Electronic voting machine), election
manipulation, and polling booth capturing are the significant issues in this voting system. To avert such
a costly predicament in the future, many countries are currently experimenting with blockchain-based
pe
voting systems. However, there are also significant drawbacks to this method. Consequently, our paper
proposes a novel online voting system based on hash graph technology. The hash graph encryption
method is a superior version of blockchain encryption and eradicates a few drawbacks of blockchain.
This system preserves participant's anonymity while still being open to public inspection. Voters are
authenticated using their Voter Id, Aadhaar Card Number, and face recognition. Furthermore, JWT
Authentication is implemented to enhance the security of the login portal. Additionally, the voters can
ot
also assure their cast vote using the highly encrypted unique ID generated by our system. Besides that,
the voter data is stored in a highly secured database. Furthermore, homomorphic encryption is used to
store the votes and assist in counting the vote securely. Finally, it is also equipped with a chatbot that
tn
works as a support to the voters. In conclusion, this paper presents an in-depth evaluation of the scheme
that successfully demonstrates its effectiveness in achieving an end-to-end verifiable online voting
system.
rin
Keywords: JWT authentication, homomorphic, hash graph, blockchain, ballot
1. INTRODUCTION
ep
With the coming of the internet revolution in India, the accessibility, reach, and affordability of the
internet has increased tremendously. With this reach, more and more previously paper-based and
manual activities have been digitized and automated. This has increased the efficiency and reduced the
Pr
time taken previously for all of these activities. Many tasks have been digitized and automated, but
there are yet many more still out there that have benefited from this. One of these activities is the Voting
process. For many years Voting has been electronic but still a manual process. To conduct elections in
India takes months of preparation and occurs in stages that can last for weeks and even months. Due to
the manual process, it is a time-consuming and costly process. One of the most important aspects of a
voting process is to ensure democracy. The people participating should trust the process and have faith
in the correctness of the result. Any voting system must ensure this.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
Nevertheless, in recent times, we have seen many challenges to the election result and claims of
tampering with the electronic devices (EVM's) used for Voting. All of these hampers the democratic
ed
process and make people distrust the process. One of the key ways to solve these problems is to digitize
the process and automate it. Much research and development have been done on this process but lack a
holistic approach to it. With this paper, we aim to provide an overall approach to the problem stated
above. The objective of the paper is defined as follows: -
1. To visualize a system that is equipped for hosting votes online without physical presence.
iew
2. For elicitation of requirements and building an electronic voting system, and identifying the
legal and technological limitations of using blockchain as a service for realizing such systems.
3. To provide a straightforward, efficient, and fair methodology for authentication and verification
of voters
4. To provide an in-depth evaluation of the scheme that successfully demonstrates its effectiveness
in achieving an end-to-end verifiable online voting scheme.
5. To create a storage environment for safe-keeping the votes and protect the votes from cyber-
v
attacks.
India is a country where having a computer is still a luxury, so not many people are acquainted with
re
using a computer. So, the ease of use of the system becomes of immense importance. Instead of using
blockchain, we wanted to provide an alternative that is much faster and transparent to ensure democracy.
Hence, we decided to use Hashgraph, whose advantages will be discussed in the upcoming sections. As
Voting is a sensitive issue and personal data will be stored, having secure databases becomes immensely
important. To ensure a tamper-free process, many security protocols have also been discussed.
er
2. LITERATURE SURVEY
pe
The Covid era took a toll on the ability of people to go out of the place of their vicinity. All work was
restricted to within the walls of one's premise. Many tasks that were once thought to be impossible to
do without physical presence at a particular place were made remotely. This could have been only
possible with technology and its reach to the ordinary person. However, there are still some tasks that
are yet to benefit from this. One such thing is Voting. Voting in India is still predominantly a physical
ot
process. The person to cast his vote has to be physically present at a particular geographical location.
However, the Covid has made us realize that it goes on like this always. Thus, it becomes essential to
develop a voting system that bridges the gap between this problem and casts one's votes without
physical presence.
tn
Another thing to keep in mind is familiarity with a computer system. India is a country where more than
half of the population still does not have access to a personal computer or an internet connection.
Although with the increasing measures taken by the telecom industry to cover most of the areas and
provide internet services, personal computing is still a gap yet to be filled. Thus, the system developed
rin
should have a slight learning curve[1] and easy to use to incorporate more participation. Making a
system online poses a new domain of difficulty and challenges regarding the security and anonymity of
the person's identity[1]. The data should be secure but at the same time provide certain transparency to
have trust in the system, thus promoting democracy. For security, various cryptographic and encryption
ep
techniques must be sought out. Also, considering the Indian population, the data storage must be
incorporated to provide for the large population.
As the personnel would be voting from their vicinity, it is important to verify the users to avoid any
fraud or multiple votes. Therefore, all of these questions have been taken into consideration, and
appropriate research has been conducted to answer each of them in the following.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
S.No Author Research Focus Pros Cons
1. Usmani et Compares various voting It focuses on more Cannot handle
ed
al.[2] methodologies and provides a participation in the large-scale
multipurpose overview of a voting process and operations. It will
system considers the be very slow for
Indian scenario. the Indian
population.
iew
2. Govindaraj Proposes a method that uses Uses Cloud to store Not many security
et al.[3] Cloud to make Voting faster data protocols
and efficient
3. Adeshina et Talks about how e-voting can Discusses the Not proposed
al. [1] be exploited or can be the enter current scenario of model and security
of politics/disputes if used. blockchain-based protocols
voting system
v
4. Varma et al. Uses Aadhaar card for Use of Aadhaar To much focus on
[4] verification of users and card to verify usersone authentication
re
fraudulent votes system and no
alternatives
5. Arputhamoni A voting system that focuses on Very secure To much focus on
et al. [5] user/voter authentication using protocols for authentication of
biometrics-based fingerprint
er verification of users and not
and facial detection using voters much work on
image processing and CNN secure
methodologies of
the casting of
pe
votes
6. Pawar et al. A system for their in college Provides an Very naïve system
[6] voting system using their excellent basic without any
college ID as a unique identifier overall voting security and scope
of each voter system of scalability
7. Suryavanshi, I am a voting efficient and Provides basic Not scalable and
ot
Akash[7] straightforward voting system. functionality as not many security
ease of use protocols
8. Mishra et An elementary voting system Contains all No security
al.[8] with easy to use UI standard procedures protocols and
tn
database security
9. Bethencourt A voting system with highly Many security It is primarily
et al.[9] secure and advanced protocols and hardware-based
cryptographic techniques for detailed and electronic
security using PROM. comparison of each
rin
cryptographic
technique used
10. Sathya et A voting system that uses EVM A very secure It is a manual
al.[10] and uploads to EVM data on methodology and process, and
Cloud to perform all the can be used even at remote Voting
ep
computations places where there will be difficult
is no internet
connectivity
Pr
Table 1: Comparison of different research work with their pros and cons
2.1 RELATED WORK
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
Much existing work related to e-voting and online Voting is present. Chhabra et al. put forward a system
for a web-based application for the online voting system. It put forward a system that allows users to
ed
register and cast their votes[11]. Aruputhamoni et al. developed a voting system that focuses on
user/voter authentication using biometrics-based fingerprint and facial detection using image
processing and CNN[5]. Varma et al. proposed a system that uses the Aadhar Card to protect voters[4].
Pawar et al. proposed a system for their in-college voting system using their college ID to identify each
voter's unique identifier [6]. Fernandes et al. developed a decentralized voting system using blockchain
iew
and secret contracts using Enigma that anonymity to the use and makes the process verifiable[12].
3. PROPOSED WORK
v
3.1 CURRENT WORK
re
Many existing systems solve various problems associated with online Voting, but no system has a
holistic approach to solve each problem in a single system[2]. We aim to solve that gap through our
proposed work. This paper wants to showcase an approach encompassing all aspects, from voter
authentication to casting votes and announcing the result. We also have kept in mind the security
er
protocols and database security to keep the stored records secure. The following section will discuss
the different methodologies used, starting from user authentication and verification for a user. It also
introduces a new technology, namely hash graph, that will store the user data. Then we shall dive into
how the user, once verified, can cast his/her vote and also verify that vote. After this, the paper discusses
pe
the security protocols and how data is stored using hash graphs and homomorphic encryption.
3.2 METHODOLOGIES
ot
3.2.1 Voter Authentication and Credentials
The voting process in India is still predominantly manual and electronic[13]. As a result, it is often
labor-intensive, time-consuming, and vulnerable to fraud.
tn
However, modern technology can deliver significant improvements such as speed and reliability to a
critical phase of an election process: voter authentication just before a ballot is cast.
For election commissions, numerous benefits can be reaped from the modernization of authentication
rin
methods. In particular, they can:
1) Take advantage of investment in enrolment campaigns, leveraging biometrics to improve voter
check-in at polling stations on the day of an election
2) Ensure the "one voter, one vote" principle and therefore enhance the credibility of elections
ep
3) Provide additional tools to validate election results
4) Generate electronic audits and reports
5) Discourage opposition groups from contesting election results
Pr
3.2.2 Voter Registration
A necessary precondition for the online voting system is voter registration. In the case of electronic
voter identification, additional arrangements need to be in place to ensure that the voter's identity may
not be linked to the content of his/her vote. Specific technical and procedural security measures are
needed to guarantee that these two sets of information cannot be linked at any time and under any
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
circumstances (secrecy of the vote). It is essential that these measures are reliable and that they can be
communicated and demonstrated.
ed
❖ Aadhar should be linked with Voter ID, which can be done on National Voter Service Portal
(NVSP).
iew
Steps for voter registration: -
1) The user should provide these credentials for their registration:
✓ VOTER ID
✓ AADHAAR CARD NUMBER
v
2) Afterward, OTP will be generated and send to the user's registered mobile number.
3) Once OTP is verified, the user's face will be detected.
re
4) Finally, the user's voter id, Aadhaar card number, and face data will be stored.
Voter authentication during Voting
er
1) The user should provide these credentials during Voting:
✓ VOTER ID
✓ AADHAAR CARD NUMBER
2) Subsequently, the user's face will be recognized.
pe
3) When the voter is authenticated, then he/she can proceed to cast a vote.
3.2.3 Casting of Votes
ot
Once the user logs in, the backend issues a short-lived JWT (access token) and a long-lived opaque
token (refresh token). Both of these are sent to the frontend via HTTP only and secure cookies[14]. The
JWT is sent for each API call and is used to verify the session. Once the JWT expires, the frontend uses
tn
the opaque token to get a new JWT and a new opaque token. This is known as rotating refresh tokens.
The new JWT is used to make subsequent API calls, and the session usually continues.
The JWT is a self-contained token with authentication, information, expire time information, and other
defined claims digitally signed. This method will prevent SQL injection or tampering with the login
rin
details of the user. This will ensure safe and best practices for session management. We can use it by
generating the encrypted tokens that are valid for some minutes only, and if the user exceeds the time
limit of the token, the token will be expired and will have to log in again.
ep
3.2.4 Ensuring single casting of votes
The ballot can only be accessed if the voter has not already voted. The vote cast is shown to the voter
again for confirmation. This allows voters to double-check their choices and change any mistakes they
may have made before the vote is sent to the online ballot box and made official.
Pr
Logging out of the online voting system is required to complete the voting process. Only then is the
ballot transferred to the online ballot box and your token deleted. You cannot re-use your login data,
and the ballot remains anonymous inside the digital ballot box.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
3.2.5 Voter's Assurance
After the voting process is completed, the user will be given a unique id that will be highly encrypted.
ed
The user can use that unique id to check the vote that he has cast. When the user enters the unique id in
the checking portal, he will have to verify using OTP Authentication linked to his Aadhaar mobile
number; only then can he see his voting details and ensure that his vote was balloted to the correct
candidate or body of his choice.
iew
3.2.6 Ballot Box and Counting of Votes
One of the most critical phases in online Voting is storing votes in the ballot box before the counting
occurs. Votes are required to be stored so that they are secure and not vulnerable to cyber-attack or
tampering. It also makes an essential part of democracy that people trust and faith that their votes are
secure and tamper-free. The system should be accountable to the people's trust and promote democracy.
v
Cryptography offers various advantages to electronic democratic and checking arrangements. It could
re
be utilized to perform undertakings, for example, encoding votes and advanced polling stations,
guaranteeing votes and programming are unmodified, checking the personality of an elector before the
individual projects a voting form, and helping with inspecting and counting the after-effects of a
political race. We will be using Homomorphic Encryption to secure the votes on the ballot[15]. To
give a brief idea, homomorphic encryption is a form of encryption that permits users to perform
er
computations on its encrypted data without first decrypting it. In terms of using homomorphic
encryption for online voting systems proves to be perfect for the job. The votes at the end could be
counted without ever decrypting the votes. The votes are counted in the encrypted form, and only the
result later can be decrypted to get the final tally.
pe
3.2.7 Storing of Voter Data and Security
A distributed ledger is a digital database using a hash graph updated and held by every voter
independently in an ample network space. In this type of ledger, there is no central authority to broadcast
ot
the records to every voter.
Instead, all the nodes will hold the ledger and construct it independently. However, in that case, the
nodes on the network will need to have access to the transaction lists and giving out their conclusion
tn
before adding it to the distributed ledger.
Usually, every node on the network tends to go through an agreement to come to a single conclusion.
Thus, the system differs from distributed ledger to distributed ledger.
After the agreement, the distributed ledger gets updated, and all the node on the network will update
rin
their ledger. The system makes the overall architecture of the interface quite complex compared to
typical database systems.
ep
4. FLOW CHART OF THE PROPOSED METHOD:
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
ed
v iew
re
er
pe
ot
Fig. 1. The architecture of the system
tn
In the architecture diagram given above, we can see the flow of the project. First, the user is encountered
to register or to Login if it is already registered. Then, if the user wants to register, it goes through the
authentication and verification methodology as discussed above. Finally, once registered and logged in,
the data of the user is inserted in the hashgrah.
rin
In Voting, the voter casts his vote to the organization/party of his/her choice. First, the voter goes
through the JWT authentication methodology to cast his vote. This allows him to verify his vote using
the token generated through the JWT. Once the votes are cast, they are stored securely in the ballot in
an encrypted format. Then, using homomorphic encryption, they are counted, and the results are
decrypted and announced.
ep
5. RESULTS
The following are the snippets of the developed application. It describes the various stages of the
Pr
application
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
ed
v iew
re
er
pe
ot
tn
Fig. 2. Login Screen
Fig. 2 is the starting point of the application. Once authentication and verification of the user are
rin
complete, he/she can log in using the username and password provided during registration.
Once logged in, the user needs to verify his/her Aadhaar Card. Once the Aadhaar card is put in, the user
would then receive an OTP to verify it. After receiving the OTP, the user would need to enter the OTP
to verify it.
ep
After the login and verification process, the user comes across the homepage. The homepage shows any
ongoing election that the user is valid to vote for, along with details of the voting process like the date,
time, and time left for the user to cast his/her vote. To vote, the user needs to click the vote now button
and be automatically redirected to a new page.
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
ed
v iew
re
er
pe
ot
Fig. 3. Voting Screen
tn
The page that the user will be redirected to after clicking the "Vote Now" selection from the previous
image (Fig. 2.). This page (Fig. 3.) shows the details of the party name and the candidate's name. The
user has to select the candidate of his/her choice and click the submit button to confirm his choice. He
can also use the "reset" button to reset his choice. Once the ideal candidate is selected and the submit
rin
button is clicked, there will be a final prompt to ensure the user's choice shown is. Till this stage, the
user can still change his choice as he wishes to. After agreeing to the terms and conditions and clicking
the submit button, the vote is cast, and no further change can be made. The vote is locked.
Then comes the final. To confirm the casted vote with the date and time stamp of the vote. After this,
ep
it is safe to close the browser.
6. FUTURE SCOPE
Pr
The system provides a benchmark for all future innovations regarding a much secure online voting
system with greater reach.
1. With growing infrastructure and greater access to remote areas, the online voting system would
have a greater reach, increasing more participation.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
2. With growing Hashgraphs technology and increased speed, the voting phases that would take
months now would take days.
ed
3. Alongside Homomorphic encryption, steganographic encryption can also be used to make data
more secure.
4. Cloud computing can be used to make processing faster and cocurrent[3]. This would also allow
massive storage of data without actually having any physical storage.
iew
7. CONCLUSION
Adjusting advanced democratic frameworks to disclose the electing interaction less expensive, quicker,
and more straightforward is a convincing one in current culture. Making the appointive interaction
modest and fast standardizes it according to the electors, eliminates a specific force hindrance between
the citizen and the chosen official, and squeezes the chosen official. It likewise opens the entryway for
v
a more straightforward type of popular government, permitting electors to communicate their will on
singular bills and suggestions. This paper presented an extraordinary, hashgraph-based electronic
re
democratic framework that uses shrewd agreements to empower secure and cost-effective political
decisions while ensuring electors' protection. We have illustrated the framework's engineering, the plan,
and a security investigation of the framework. By correlation with past work, we have shown that the
hashgraph innovation offers an additional opportunity for popularity-based nations to progress from the
pen and paper political decision plot to a more expense and time-effective political race conspire while
er
expanding the safety efforts of today's plan and offer additional opportunities of straightforwardness.
pe
8. REFERENCES
[1] S. A. Adeshina and A. Ojo, "Maintaining voting integrity using blockchain," Dec. 2019, DOI:
ot
10.1109/ICECCO48375.2019.9043225.
[2] Z. A. Usmani, K. Patanwala, M. Panigrahi, and A. Nair, "Multipurpose platform-independent
online voting system," in Proceedings of 2017 International Conference on Innovations in
tn
Information, Embedded and Communication Systems, ICIIECS 2017, Jan. 2018, vol. 2018-
January, pp. 1–5, DOI: 10.1109/ICIIECS.2017.8276077.
[3] R. Govindaraj, P. Kumaresan, and K. Sree Harshitha, "Online Voting System using Cloud," Feb.
2020, DOI: 10.1109/ic-ETITE47903.2020.245.
rin
[4] C. S. P. Varma, D. S. Rahul, J. Jose, B. K. Samhitha, and S. C. Mana, "Aadhar Card Verification
Base Online Polling," in Proceedings of the 4th International Conference on Trends in
Electronics and Informatics, ICOEI 2020, Jun. 2020, pp. 479–483, DOI:
10.1109/ICOEI48184.2020.9142965.
[5] S. J. J. ARPUTHAMONI and A. G. SARAVANAN, "Online Smart Voting System Using
ep
Biometrics Based Facial and Fingerprint Detection on Image Processing and CNN," Mar. 2021,
pp. 1–7, DOI: 10.1109/icicv50876.2021.9388405.
[6] B. M. Pawar, S. H. Patode, Y. R. Potbhare, and N. A. Mohota, "An Efficient and Secure Students
Online Voting Application," Jan. 2020, DOI: 10.1109/ICISC47916.2020.9171063.
Pr
[7] A. Suryavanshi, "Online Voting system," SSRN Electron. J., May 2020, DOI:
10.2139/ssrn.3589075.
[8] A. Mishra and A. Ofujeh Ahmad, "Design and Development of Real-Time E-Voting System
with High-Security Features," Int. J. Educ. Manag. Eng., vol. 9, no. 3, pp. 37–50, May 2019,
DOI: 10.5815/ijeme.2019.03.04.
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959
[9] J. Bethencourt, D. Boneh, and B. Waters, "Cryptographic Methods for Storing Ballots on a
Voting Machine."
ed
[10] V. Sathya, A. Sarkar, A. Paul, and S. Mishra, "Block chain based cloud computing model on
EVM transactions for secure voting," in Proceedings of the 3rd International Conference on
Computing Methodologies and Communication, ICCMC 2019, Mar. 2019, pp. 1075–1079, DOI:
10.1109/ICCMC.2019.8819649.
iew
[11] R. Chhabra, U. Vohra, V. Khanna, A. Verman, P. Tanwar, and B. Kumar, "The Next Gen
Election: Design and Development of E-Voting Web Application," Jul. 2020, pp. 536–541, DOI:
10.1109/icces48766.2020.9138050.
[12] A. Fernandes, K. Garg, A. Agrawal, and A. Bhatia, "Decentralized Online Voting using
Blockchain and Secret Contracts," in International Conference on Information Networking, Jan.
2021, vol. 2021-January, pp. 582–587, DOI: 10.1109/ICOIN50884.2021.9333966.
v
[13] A. E. Keshk and H. M. Abdul-Kader, "Development of remotely secure e-voting system," in
2007 ITI 5th International Conference on Information and Communications Technology, ICICT
re
2007, 2007, pp. 235–243, DOI: 10.1109/ITICT.2007.4475655.
[14] N. Hong, M. Kim, M. S. Jun, and J. Kang, "A study on a JWT-based user authentication and
API assessment scheme using IMEI in a smart home environment," Sustain., vol. 9, no. 7, 2017,
DOI: 10.3390/su9071099. er
[15] S. Saproo, V. Warke, S. Pote, and R. Dhumal, "Online Voting System using Homomorphic
Encryption," DOI: 10.1051/Autoconf/20203203023.
pe
ot
tn
rin
ep
Pr
This preprint research paper has not been peer reviewed. Electronic copy available at: https://ssrn.com/abstract=3884959