Voting and Election System: using Blockchain Technology

DOI : 10.17577/IJERTV12IS040240

Download Full-Text PDF Cite this Publication

Text Only Version

Voting and Election System: using Blockchain Technology

Abhishek Nandimath

Dept. Artificial Intelligence and Data Science

D. Y. Patil College of Engineering, Akurdi Pune, India

Sujal Mandape

Dept. Artificial Intelligence and Data Science

  1. Y. Patil College of Engineering, Akurdi Pune, India

    Abstract Blockchain is a decentralized technology that is designed to store and handle data securely. Its robustness ensures the integrity of the stored data.[3] In India, the voting system is currently paper-based and manual, making it vulnerable to mistakes and fraud. To enhance security, transparency, and efficiency, the enactment of blockchain technology can be considered. Under the proposed system, voters would require a device with a camera and an internet connection. They would also need to keep their documents in a government-approved program like "Digi-locker." To participate in the voting process, users would log in to a webpage using their "Digi-locker" credentials. They would then provide live verification via their camera before casting their vote. The voting-related data would be stored on a highly secure and impenetrable blockchain network, which can only be decrypted by the Indian Election Commission, thereby ensuring the privacy of the voters. If executed, this approach could potentially revolutionize the Indian voting and election process. It can provide an extremely secure and effective way to safeguard the integrity of the elections and prevent irregularities such as vote tampering, booth capturing, and fake voting.

    Keywords vulnerable, efficiency, live verification, Indian Election Commission.


      India is a democratic nation that practices the electoral process to elect its representatives. To ensure fair and tamper- proof voting, the Election Commission of India has been entrusted with the responsibility of conducting free and fair elections. Although Electronic Voting Machines (EVMs) are currently in use in India, the voting process still involves physical verification of voters at polling stations, making it vulnerable to malpractices. Furthermore, the use of EVMs consumes a significant amount of time and resources, causing inconvenience to voters. Therefore, to reduce the strain on voters who are required to physically visit polling stations, we propose the introduction of e-voting through the use of blockchain technology.

      By leveraging blockchain technology, we can develop a secure and efficient e-voting system that ensures transparency, immutability, and privacy. Unlike the traditional voting system, blockchain-based e-voting eliminates the need for physical verification of voters at polling stations, reducing the potential for malpractice.

      Blockchain technology is a modern and secure database system that enables the transparent sharing of information among network participants. Data is stored in blocks that are linked together in a chain-like structure in a blockchain database. This chain of blocks is protected by cryptographic techniques and is decentralized, making it difficult to tamper with or corrupt the stored data. The technology has various applications, including secure data sharing, tracking transactions, and ensuring the integrity of critical data.

      In the realm of blockchain technology, there are two main types of networks: public and private. For the purpose of e- voting, the focus is on implementing a private blockchain network. This type of network is accessible only to a specific group of authorized individuals who have been granted exclusive rights to access, modify, insert, or delete changes to the network. One of the unique features of blockchain technology is its use of paraphrasing to authenticate and identify users. This means that a user must correctly provide a predetermined phrase or sentence in order to gain access to their data on the blockchain. It is worth noting that this paraphrasing mechanism is only required for authorized personnel, and not for the general public. This added layer of security ensures that only those with explicit authorization can access and modify the data stored on the blockchain network, thereby increasing the security and trustworthiness of the system.

      The paper proposes a blockchain-based e-voting system that can address the limitations of the current system and provide a more secure and transparent voting experience. The proposed system involves users logging in to a website using their Digi- locker credentials and casting their vote using a live verification process through their webcam. The vote details will be stored on a blockchain network, ensuring the integrity of the election procedure.

      The goal of our research paper is to explore the potential benefits of using blockchain technology in voting and election systems. We will discuss the various technical, legal, and regulatory challenges that need to be addressed to make this technology viable for widespread adoption.


      1. Device: The device used for casting votes in this system must have a reliable internet connection and a camera or webcam feature to allow for live verification of the user. Devices such as mobile phones, laptops, or desktop computers can be used for this purpose. The user should ensure that their device is fully charged and has a secure internet connection to avoid any issues while casting their vote. Also, for voters who do not have access to such devices or have limited internet connectivity. alternative methods such as setting up dedicated voting centers with necessary devices and connectivity could be explored.

      2. User: To participate in the voting practice using this system, the user must have their documents stored in a secure and government-approved application, such as a Digi locker. This application can store important documents such as the user's PAN card, Aadhar card, and voter ID card. The user must ensure that their documents are up to date and valid to avoid any issues during the authentication procedure.

      3. Authentication: To cast their vote, the user will need to log in to the voting website using their Digi locker credentials. The website will require authentication to verify the user's identity before allowing them to proceed. Once the user has been verified, they will need to grant the site access to their webcam for live verification purposes. Additionally, two-factor authentication, biometric verification, or blockchain-based identity management systems can be used to provide additional security measures. Once the user has been successfully authenticated, they can proceed to cast their vote for their desired candidate [1]

      4. Casting the Vote: Upon successful verification, the user can proceed to cast their vote for their desired candidate. As soon as the voter casts their vote, they will receive a preview page displaying the details of the candidate, their party affiliation, the ward, and any other relevant details. Once the user has confirmed their vote, they will receive a message confirming that their vote has been successfully cast.

      5. Security Measures: It is important to note that the voting site will prevent users from taking screenshots or photos of their vote so to do so the voting site will function similarly to online exams, preventing the user from taking screenshots or photographs of their vote. If the user attempts to do so, the site will be closed automatically. Additional measures such as using end-to-end encryption, restricting access to voting data to authorized personnel, and conducting regular security udits could be used to maintain security. [4]

      6. Backend: The data of the casted votes will be encrypted and stored on servers in the form of blockchain transactions. This data will be highly secure and fiddle-proof, preventing any

        malpractice or fiddling. The blockchain network is known for its high security and reliability, making data hacking next to impossible. Data decryption capabilities will only be available to the Election Commission of India, ensuring that the voting procedure remains transparent and secure.

        1. Solution for failed attempts of Verification

          • In case the user fails to clear the verification procedure three times in a row, the system will automatically lock the user out and flag the attempted fraud. This is done to ensure that the voting procedure remains secure and is not compromised in any way.

          • The user can reach out to the designated authorities for further assistance and to resolve the issue. The authorities will investigate the matter and provide a resolution as soon as possible to allow the user to participate in the voting procedure.

          • It is important to note that the verification procedure is a critical component of the blockchain-based voting system. The system has been designed to prevent any fraudulent activities and ensure the sanctity of the voting method. The three-attempt limit is in place to minimize the chances of unauthorized access to the voting platform. Any attempt to manipulate the system will be flagged and dealt with promptly to ensure the integrity of the election.

        2. Solution for attempt of fiddling system and taking Photographs of the casted vote through a different device

          • To prevent users from compromising the integrity of the election procedure by taking photos or screenshots of their vote, a timeout feature can be implemented on the voting website. After displaying the casted vote, the site can automatically log the user out after a certain amount of time, such as 10 seconds.

          • If a user violates this rule and takes a photo or screenshot of their vote, their account can be flagged and the Election Commission of India notified. The user may face legal consequences for compromising the integrity of the election procedure.

          • To detect attempts to take photos or screenshots, the voting site can use technology such as detecting print screen functions or camera captures from other devices. If detected, the vote can be instantly invalidated and the user prevented from casting another vote.

          • A warning message can be displayed to users, informing them that taking photos or screenshots of their vote is strictly prohibited and will result in the invalidation of their vote. This will help raise awareness about the importance of maintaining the secrecy and integrity of the voting procedure.

          • Additional measures such as end-to-end encryption, restricting access to voting data, and conducting regular security audits can be implemented to further enhance the security and integrity of the voting procedure.

            def digilocker_login():

            choice = input("Do you want to log in using your Digi locker credentials? (y/n): ")

            if choice.lower() == 'y': grant_permission()

            elif choice.lower() == 'n': logout()


            print("Invalid input.") digilocker_login()

            def grant_permission():

            webcam_permission = input("Do you want to grant permission to access your webcam? (y/n): ")

            mic_permission = input("Do you want to grant permission to access your microphone? (y/n): ")

            if webcam_permission.lower() == 'y' and mic_permission.lower() == 'y':

            lockdown_page() else:

            print("Permission denied.") logout()

            def lockdown_page():

            print("Page locked down and webcam activated.")

            def verify_user():

            otp = str(random.randint(1000, 9999))

            print("OTP sent to registered mobile number: ", otp) user_input = input("Enter the OTP to verify your identity: ") if user_input == otp:

            cast_vote() else:

            print("OTP verification failed.") logout()

            def cast_vote():

            print("You can now cast your vote.")

            def notify_committee():

            print("Malpractice detected. Notifying election committee personnel.")


            def confirm_vote():

            choice = input("Do you confirm your vote? (y/n): ") if choice.lower() == 'y':


        3. Algorithm:

          Step 1: The program starts and displays the welcome message to the user.

          Step 2: The user visits the website and is greeted with a welcome pop-up.

          Step 3: If the user chooses to log in using their Digi locker credentials, they will be prompted to grant permission to access their webcam and microphone. If the user denies permission, the program proceeds to step 10. If the user encounters any technical or login issues, they are instructed to contact authorized personnel.

          Step 4: Once the user grants permission for webcam and microphone access, the program locks down the user's webpage and continuously observes them through the webcam. This creates a remote proctored environment that prevents tampering or malpractices and safeguards voting integrity. The user is not allowed to access any other app or change tabs during this time.

          Step 5: The verification process begins using the webcam and Digi locker credentials, and the user is prompted to provide an OTP for verification. The OTP is sent to the voter's registered mobile number.

          Step 6: If the user is verified, they can now cast their vote for the respective candidate.

          Step 7: If the user is found to be engaging in any malpractice during the procedure, the program proceeds to step 10 and notifies the authorized election committee personnel, who will then carry out legal proceedings.

          Step 8: After casting their vote, the user is displayed a confirmation screen to confirm their selected candidate.

          Step 9: If the user confirms their vote, a preview screen is displayed for about 10 seconds without displaying the voting credentials, and the voting process ends. If the user does not confirm their vote, the program proceeds to step 6.

          Step 10: If the user denies permission for webcam and/or microphone access or if they engage in malpractice during the voting procedure, they are automatically logged out of the system.

        4. Pseudocode

          import random

          def welcome_message():

          print("Welcome to the online voting system.")

          def welcome_popup(): print("Welcome popup displayed.")

          elif choice.lower() == 'n': cast_vote()


          print("Invalid input.") confirm_vote()

          def preview_vote():

          print("Preview screen displayed without displaying voting credentials.")

          def logout():

          print("Logged out of the system.")

          if name == ' main ': welcome_message() welcome_popup() digilocker_login() verify_user() confirm_vote()


        1. Flowchart

      Start Welcome

      Digi locker

      grant N




      Y N

      • A blockchain-based voting system can offer various benefits over traditional paper-based voting systems. Firstly, it can provide increased accessibility to a broader range of voters. With an internet connection, voters can cast their votes from anywhere, removing the need to travel to polling booths, and making it more convenient for them to participate in the democratic procedure.

      • Moreover, the proposed system can have a user-friendly interface, simplifying the voting procedure and reducing the time and effort required to cast a vote. This can increase voter participation and engagement in the democratic procedure, leading to a more representative election outcome.

      • To ensure the authenticity of the voters, the system can utilize secure authentication methods such as Digi locker credentials and live verification through webcams. This can prevent any attempts at fraudulent voting, ensuring the fairness and accuracy of the election results.

      • The blockchain-based voting system can also guarantee the confidentiality of the voters. The vote details will be encrypted and stored on the blockchain network, ensuring that only authorized personnel, such as the Election Commission of India, will have access to decrypt the data. This can give voters peace of mind, knowing that their vote is secure and confidential.

        • Furthermore, blockchain technology can provide transparency in the election procedure. The system can record every vote cast and store it on the blockchain network, making it transparent and fiddle-proof. This can help to build trust among voters and ensure the integrity of the election procedure.

      • In terms of cost-effectiveness, the use of blockchain technology can eliminate the need for paper-based ballots, printing, and logistics. This can save significant costs for

      lockdown page

      Cast vote




      Contact to authorized personnel




      the Election Commission of India, ensuring a more efficient voting procedure and reducing the burden on taxpayers.

        • Lastly, the proposed blockchain-based voting system can provide real-time updates on the voting technique and results, increasing transparency and accountability in the election practice. Voters can track the progress of the election in real-time, ensuring that the results are accurate and free from any manipulation.

        • Overall, a blockchain-based voting system can offer numerous benefits, including increased accessibility, user- friendliness, secure authentication, confidentiality, transparency, cost-effectiveness, and real-time updates.

      These benefits can contribute to a more efficient, fair, and representative election procedure, ultimately strengthening democracy in India.

      • The implementation of a blockchain network for e-voting will require continuous management and development to ensure its smooth functioning.[2] As a result, there will be a demand for skilled professionals such as blockchain engineers and data scientists who can maintain and create data within the network. The introduction of blockchain technology in the voting system has the potential to create job opportunities in the technology sector. Furthermore, the need for additional manpower to manage and monitor the network can also contribute to the creation of job opportunities in other fields. Overall, the implementation of blockchain technology in e-voting has the potential to drive technological innovation and create employment opportunities.


      Traditional voting


      Blockchain- based voting




      Not possible

      Quick results

      Not possible

      Not possible










      Time consuming




      Secure system





In conclusion, the proposed online voting system using Digi locker authentication and live verification through webcams can revolutionize the way elections are conducted in India. This system ensures a secure, fiddle-proof, and convenient way of voting for citizens. The use of blockchain technology for data encryption and storage ensures the safety of the data and eliminates any chances of manipulation. This system will not only increase the participation of citizens in the electoral procedure but will also reduce the cost and time involved in conducting elections. It will also ensure transparency in the voting procedure and reduce the chances of fraudulent activities. However, it is important to keep improving and updating the

system to address any potential challenges and ensure its seamless operation. The proposed system has the potential to transform the electoral system and make it more efficient, secure, and accessible to all citizens. The government should also take necessary steps to promote digital literacy among the citizens to ensure the success of such a system. Overall, the proposed online voting system has the potential to transform Indian democracy and make the voting procedure more efficient and inclusive.


In the accomplishment of this project successfully this time we are utilizing this to thank all the people who have been concerned with the research. In the accomplishment of this project successfully, many people have best owned upon us with their blessing and the heart pledged support, we thank all the teachers, faculty, and everyone who have been concerned with the research. And providing us with all the support. We would thank Prof. Nita Mahale for giving the required guidance and help in the whole process


[1] Annadate, Mrunal & Gandhi, Shreyans & Kaniampal, Nivita & Naral, Pushkar. (2017). Online Voting System Using Biometric Verification. IJARCCE. 6. 276-281. 10.17148/IJARCCE.2017.6452.

[2] Vishnu Narayanan S R, Aswin R, Ponnu G Vijay, Thanush Ram S, Devi Dath, 2021, EVO: An E-Voting System using Blockchain, INTERNATIONAL JOURNAL OF ENGINEERING RESEARCH & TECHNOLOGY (IJERT) NCREIS 2021 (Volume 09 Issue 13),

[3] Abhishek Subhash Yadav , Yash Vandesh Urade , Ashish Uttamrao Thombare , Abhijeet Anil Patil, 2020, E-Voting using Blockchain Technology, INTERNATIONAL JOURNAL OF ENGINEERING RESEARCH & TECHNOLOGY (IJERT) Volume 09, Issue 07 (July 2020),

[4] Dipali Pawar , Pooja Sarode , Shilpa Santpure , Poonam Thore, Prof. Pravin Nimbalkar, 2019, Secure Voting System using Blockchain, INTERNATIONAL JOURNAL OF ENGINEERING RESEARCH &

TECHNOLOGY (IJERT) Volume 08, Issue 11 (November 2019),