Electronic Voting Machine

Using traditional election system to collect votes from citizens is no longer considered effective due to problems such as inefficiency and unreliability. Currently, many countries, including Pakistan, use paper-based voting system where votes are cast using paper ballot. It usually takes a long tim

2025-06-28 16:32:22 - Adil Khan

Project Title

Electronic Voting Machine

Project Area of Specialization Cyber SecurityProject Summary

Using traditional election system to collect votes from citizens is no longer considered effective due to problems such as inefficiency and unreliability. Currently, many countries, including Pakistan, use paper-based voting system where votes are cast using paper ballot. It usually takes a long time for an individual to cast his or her vote. Then, it takes many hours or in some cases a day or two to count votes manually. To count millions of votes a large man power and time are required. To address all these issues, we are developing an electronic voting system as our final year project. In this system we are using automated registration procedure which will verify the voter’s identity before allowing them to vote. All details of the voter will be stored in the database which will also include the fingerprints of the voters. This database can be developed by our system or an existing database of users, such as the one prepared by NADRA, can be used to authenticate voters. Voter will cast his or her vote using a touch screen. After the end of the deadline, the results will be available to general public in much shorter period of time. The project is being developed with the help and collaboration of Election Commission of Pakistan. Therefore, it meets all the technical, legal and security requirements as desired by the Election Commission of Pakistan and a real world and practical voting system which can be deployed to conduct actual elections when it is completed. The software component is developed in Java programming language in free and open source Linux environment. Therefore, the project does not involve software  licensing fee from commercial vendors and is therefore provides a low cost solution.

Project Objectives

Project objective is to develop and build an Electronic Voting Machine which provides the minimum of following functions:

Project Implementation Method

Initially, the project software will be run on desktop computer along with necessary auxiliary devices such as biometric scanner, QR code reader and ballot paper compact portable printer. After successful completion, software can be burnt in a self contained embedded module thereby avoiding the need of desktop computer altogether.

We have divided the software into two different modules as per requirement of Election Commission of Pakistan.

  1. Authentication Module
  2. Voting Module

The authentication module consists of an Admin login. After logging in, admin can select the time of voting and will also have the option to select the server. The system will store the admin login time and date and will also store the total voting time set by the admin. The system will also store the time when the voting will begin.

The authentication module will verify the identity of the voter using his National Identity Card Number which the voter will verify using QR Code Scanner. Moreover, voter will also have the option to input his/her identity card number if he/she fails to scan the id card in any case.

After scanning the id card, the system will determine whether the voter has already voted or not, if the voter has already voted the system will not allow the voter to vote again the will throw an error.

If the voter is allowed to vote then the voter will need to confirm his/her identity using Fingerprint verification. The System will allow user to scan any finger/thumb. A screen will appear asking voter, which finger/thumb he/she wants to scan to verify his identity. After selecting the required option, the user will be allowed to scan his/her fingerprint. Once the voter is verified, he/she will be allowed to vote.

The voting module consists of an Admin login too. After logging in, admin can select the time of voting. The system will store the admin login time and date and will also store the total voting time set by the admin. The system will also store the time when the voting will begin.

The voting module will show the candidate list after successfully login of admin and setting the time. Once voter is clear to cast his/her vote after passing through authentication process then he/she will come to the booth where voting module is present with candidate list. Voter will select the candidate’s mark. Once mark is selected then vote will be updated in database and same vote will be printed through printer so that voter can testify his vote and then cast this printed vote to nearby ballot box this printed vote will be used for recounting which increase the accuracy and make voting more  convenient.

After a voter cast his vote by selecting one of the candidate screen will not accept clicks for a moment just to avoid multiple votes from a single user it will be disable for a time so that voter can take his paper vote and then cast it to ballot box. After that screen will again start taking action so that the next voter can cast his/her vote.

Benefits of the Project

By using detail of voter, we assign unique id for each voter. Once he/she will cast his/her vote, then that ID will be blocked by the software and that person will not be allowed to vote again.

Benefits of the project:

This system will count vote automatically that is the reason the counting process will much faster and accurate then using labor force and as soon as the deadline ends the results will be available to the general public.

At the time of registration, the voters will also register their fingerprints and their unique ids will be generated. When the election day arrives, the voter will verify their fingerprint as well as their unique ID and if it matches the fingerprints and ID in the database then the user will be allowed to vote.

We are designing a system that will ensure data security. No one can modify or change the information of a voter. Even the administrator cannot modify the records.

System will count vote automatically then all votes will be sent to the server after one hour, so it is another way to secure our voting system.

Our Machine will encrypt the user vote and its ID and save it in its storage for a specific time so that if someone wants to recheck the vote then our machine will provide a platform to recheck the votes.

 Registration will be done by the election commission. Election commission will collect the record of a person and then verify if the person is 18 or older. If the person is below 18 then the machine will not allow it to vote. The election commission will verify all the details and will also store their fingerprints in their database.

Technical Details of Final Deliverable

The final deliverable will comprise of the hardware and software parts.

1. Software

The software will comprise of two modules

a. Authentication Module

b. Voting Module

The software  will provide the desired functions as outlined in the project details above.

2. Hardware

a. Desktop compute system with display screen, keyboard, and mouse

b. Biometric scanner

c. QR code reader

d. Compact portable output device for printing  ballot papers. This is not desktop printer. It is a special compact printer for printing ballot papers

Final Deliverable of the Project Software SystemType of Industry IT Technologies OthersSustainable Development Goals Peace and Justice Strong InstitutionsRequired Resources
Item Name Type No. of Units Per Unit Cost (in Rs) Total (in Rs)
Total in (Rs) 39500
Printer Equipment11350013500
QR scanner Equipment11200012000
Finger Print Scanner Equipment11300013000
other Expense Miscellaneous 110001000

More Posts