Professional Documents
Culture Documents
COMPUTER ENGINEERING
November-2022
Submitted By :
206450307148 -- Shubham Ganesh Thakur
206450307140 -- Sachin Bijay Singh
206450307121 -- Dhruv Dharmendrakumar Rana
206450307114 -- Ved Priyavadan Mehta
Guided By
Mr. LALIT KUMAR PANDYA
Submitted to
successfully
of Diploma carried out project
in Computer work.entitled
Engineering "Graphical
This project Login
work has been
System
carriedTo Avoid
out underShoulder Attack"
my guidance and for partial
is up to myfulfilment
satisfactionfor
. the
Date :
Place :
we pay special thanks to our project guide Mr. Lalit kumar Pandya,
who was very supportive and compassionate throughout the
preparation of this project report. we would like to pay our sincere
gratitude for his timely guidance and direction during the course of
my project Mr. Lalit kumar Pandya's technical knowledge, caring
attitude and Capable leadership have been a source of inspiration for
us. we would also like to thank him for providing us the all the
resources that we needed for successful completion of our project.
His honest advice always helped us to improve ourself professionally
and personally. our special thanks for our respected parents who
parents,encrouged
always who provided exceptional
and motivated moralmaking
us while and technical support
project report.
during
and the course
finally of my
we would likeproject.
to showThey all inspired
my gratitude and encouraged
to Almighty. as It
me tonot
would carry
haveout
beenthis projecttoreport
possible in best
accomplish of without
this contents. Finally I
their
would like to acknowledge my profound gratitude to Almighty. It
blessings.
would not have been possible to accomplish this without their
blessings.
TABLE OF CONTENTS
Abstract
1.0 Introduction
2.1 User Characteristics (Type of users who is dealing with the system
functionalities) 12
3.1 Feasibility Study of the New System – Here you have to discuss 17
Conclusion 48
Future Enhancement 49
References 50
ABSTRACT
Earlier, we were using textual passwords. Textual passwords are MS
elections have been conducted in India for past decades. But for the first time,
string of characters (which may include numbers or special
n are not
characters). These textual passwords are widely and mostly
about
used. But they are not totally or fully secured. Therefore, we
have
face security
canceled issues bythe
or postponed using this scheme
elections of textual
but this passwords.
is not the solution to the
pthe issues like shoulder surfing.
ns can
beShoulder-surfing attacksphones
conducted from mobile are a well-known
with the helpthreat to textual
of a voting application For
the safety of people
passwords, and for A secure
Shoulder-surfing occurselection. Our Voting
when attackers Application will
skillfully
feature registration of political parties And their candidates, voter
capture important data/activities, such as login passwords, via
R didates. Voting
direct observation or video recording methods. observing all this
application will be highly secured and User friendly Ui. Each Voter Will Have
problem
his/her we make
unique id andapassword
graphicalfor
based
loginlogin system through
to participate which
in voting after the
guessing the entered password is somehow difficult. ve
p
upport tab that will help users if they face any
problems regarding elections. Users will also be able to see past elections
Our text based graphical login system will help user to login into their
results (if any) along with the upcoming scheduled elections.
account more securely, stalker will not be able to collect the password
1.0 INTRODUCTION
There are various graphical authentication system which are described below:-
1) Draw-A-Secret(DAS) Scheme:-
Online Voting System is a very important and revolutionary step in democracy. Our
goal is to develop a mobile-friendly application that will allow a user to participate
in voting from anywhere in the world with just their smartphones. Voting
Applications will be helpful in conduction elections in colleges, schools, and even
1
KJP (5TH CE)
206450307148,206450307140,206450307121,206450307114 Graphical password to prevent shoulder attack
The Application will have an easy user-friendly user interface that each voter can
understand the app and doesn't face any problem in Voting. Each Voter's data is
stored in the database which contains essential information such as Voter Name,
Date of birth, State and constituency of voting, and if he/she has voted or not.
The main aim of our graphical authentication system is to provide the user friendly
being present physically at polling booths. This Feature will help users to
interface, which will help the user to access the system more securely. Our system
cast their votes From their comfort zone , as the casting of vote becomes
will contain multiple boxes with different border color with four characters in each box.
the user has to make a strong password which contains the upper-case letter,
lower-case letter, special characters and should select a color at the time of
registration process.
voting finishes or the voting time expires. No no need to wait longer like in
2
KJP (5TH CE)
206450307148,206450307140,206450307121,206450307114 Graphical password to prevent shoulder attack
Once a user is registered, then at the time of login user has to enter registered email
and password will be entered by switching the border color (which was selected at the
results physically.
time of registration) between the boxes.
3. Security: For voting security, Each user will be allocated a unique user id
ADVANTAGES:-
and password upon the successful verification at the time of registration in
1) Helps users to login into their account more securely.
application.
- Modules:-
FUNCTION )
1. Administrator:
The administrator is the owner of the project. He can add business rules to the system.
He can add
E-voting onlythe Manager
takes a smalland
partgives
of thethe details
whole to managers.
election process. He cana change
From hispoint
technical password.
of view, it only focuses on:
2. User:
User can log in to the system through the application that too after the registration.
1)-Calling of elections.
they can change the password after logging into the system. He can see the available
2)-Registration of candidates
service3)-Preparation
on their account.
of the polling list
4)-Voting proper
3. Login:
5)-The
The login counting
page of votewill appear, if the user is registered then they have to
of the system
enter the registered email and the password through graphical password system,
3
KJP (5TH CE)
206450307148,206450307140,206450307121,206450307114 Graphical password to prevent shoulder attack
completed his/her registration then only a user can get log in into the system by
a)using
Voter
theirlists
user(including
id and textthe polling division and constituency assigned to the
password.
voter),
Spiral model is one of the most important Software Development Life Cycle
models, which provides support for Risk Handling. In its diagrammatic
a) Summarized
representation, it looks likevoting result
a spiral withofmany
e-voters,
loops. The exact number of
loops of the spiral is unknown and can vary from project to project. Each
loop of the
b)spiral
List is
of called
votersawho
Phase of the
used software
e-voting. development
With process.
all of the things The and
needed,
exact numberthe
of people
phases who
needed to develop
needs thethe
to manage product
systemcan be variedthen
is present, by managing
the
project manager depending
of the votes upon the project
can now risks. As
be started the project
E-Voting managerSections
Procedure
dynamically determines the number of phases, so the project manager has an
Electronic voting is the same with the envelope method of election.
important role to develop a product using the spiral model.
Voters are allowed to vote in a polling area where machines are
provided for them to use.
The Radius of the spiral at any point represents the expenses(cost) of the
➢ Modules
project so far, and the angular dimension represents the progress made so far
1. Voter
in the current Registration And Verification
phase.
In this module, the voter will register on voting application with their
username , password and the necessary documents like birth
certificate etc. after uploading the required documents then the
uploaded documents and details will be verified by the system
administrator and upon successful verification the voters will be
4
KJP (5TH CE)
206450307148,206450307140,206450307121,206450307114 Gr aphical passwor d to pr event should er attack
4 . Admin Login
In this module, the system admins will be able to log in the system
with the predefined ids and passwords . Admin login will be highly
secured and full proof login environment , so that nobody can steal
or hack the admin id and password and manipulate the election or
election results .
5
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
7. Withdrawal of candidate.
In this module, in any circumstances the candidate decides to
withdraw his/her name from an election, he/she will be provided a
withdraw option in their setting options and upon successful
withdrawal, he/she will not be able to register as a candidate , if
he/she withdraws his/her name as a candidate then also he/she will
be able to vote in the election, if eligible.
8. Vote Counting.
In this module, the votes will be counted . vote counting will be only
done by the administrator only,staff members are not allowed to
count the votes.Admins will have a option to automatically count the
6
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
9. Result Declaration.
In this module, the result will be displayed publically when the
admin approves the results . Admin has the right to discard the results
and the election if he/she notices / find any manipulation in the
system ,if the manipulation is found then he/she has the power to
discard the result, and if no errors are found out the result will be
published by the admin. The voters and the candidate will able to see
the result in the separate tab provided for the result.
Spiral model is one of the most important Software Development Life Cycle
models, which provides support for Risk Handling. In its diagrammatic
representation, it looks like a spiral with many loops. The exact number of
loops of the spiral is unknown and can vary from project to project. Each
loop of the spiral is called a Phase of the software development process. The
exact number of phases needed to develop the product can be varied by the
project manager depending upon the project risks. As the project manager
dynamically determines the number of phases, so the project manager has an
important role to develop a product using the spiral model.
The Radius of the spiral at any point represents the expenses(cost) of the
project so far, and the angular dimension represents the progress made so far
in the current phase.
7
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
The below diagram shows the different phases of the Spiral Model: –
1. Risk Handling : Our project with many unknown risks that occur as the
development proceeds, in that case, spiral model is the best development model
to follow due to the risk analysis and risk handling at every phase.
3. Voter Satisfaction: Voter can see the development of the application at the
early phase of the software development and thus, they habituated with the
system by using it before completion of the final application.
8
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
There are basic four user in this project which help us to make this project
easy to use and user friendly with all logical and conceptual functionalities.
1) Admin
Admin is the main role of this project who can handle each and every functionality
of this voting application.There may be separate admin panel for admin by Which
admin can handle all activity of voting system.
Basically, admin work is to stores the user information provided at the time of
registration and performing the adding, deleting, updating the user and election
candidate information . The admin is the person who grants the permission to voter
to vote and candidate to stand as a candidate and vote only after the successfull
completion of the verification process. Admin is the one who decides the date and
time on the whole election process and vote declaration timing . admin can also
disapprove/remove the candidate if he/she shares the disappointing feeds or images
that are manipulation and are against the terms and condition of the system.
9
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
1. Admin can add list of all parties with their name and logo with proper
validations.
2. Admin can add candidate from his panel with valid authorization
3. Admin can also verify the candidate who can direct register itself.
6. Admin need to verify the all documents for both candidate and voters.
2. Staff Member
Staff member is the person who handles the whole system on the behalf of the
admin , if admin is not available. Staff members have permissions to
These are the some privileges which are given to staff members for the system. Staff
members can’t be able to create orr publish the results of the election . In certain
circumtances , Admin is not available / not present in the system , then the admin
may provide the staff members to create and also publish the election results.
3. Candidate User
Candidate have their unique role with limited permission , and they are also a type
of end user who can add their details. Candidate users can edit their profile details
including name , address etc, Candidate users can also add their party information
10
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
along with the party code. Candidate user can also share the feeds and images
regarding their election campaign. Also candidate users can add their party
manifesto in pdf format .
1) Candidate will be add by two ways by the Admin or they can also register
itself directly from panel.
2) Candidate needs to upload his valid documents for the registration and
needs to wait for admin Approval.
3) They also need to verify his Email by which they can receive latest update
regarding his profile and our portal.
4) They also need to provide the necessary details of the their party and has
to upload the manifesto of their party.
4. Voter User
The core user of our voting system is voter . Our system is designed to provide the
convenient to the voters .Yet the voters are have some of their functionality which
are listed below :-
2) They have their unique login credentials by which they can use this portal
4) They can also check Election result which is uploaded by Admin after
counting.
11
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
1. Mobility:
The voter should not be restricted to cast his ballot at a single poll-site at his home
precinct.
• Realistic: He shall be able to vote from any poll-site within the nation.
2. Convenience:
The system will allow the voters to cast their votes quickly, in one session, and
should not require many special skills or intimidate the voter (to ensure Equality of
Access to Voters).System may not be difficult to understand and must be supporting
multi languages so that the none user will face problems in understanding the system.
3. User-Interface:
The system shall provide an easy-to-use user-interface. Voter will not able to face
any problems in using and navigating throughout the application . User – interface
will needs to be attractive with modern ui design ,So that the Voters and candidates
will not be bored of using our application . Also, at the time of Actual voting it shall
not disadvantage any candidate while displaying the choices (e.g., by requiring the
user to scroll down to see the last few choices).
12
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
4. Transparency:
5. Flexibility:
The system shall be flexible in that it allows a variety of ballot question formats
including open-ended questions (e.g. Write-in candidates and survey questions).
6. Accuracy:
The system shall record and count all the votes and shall do so correctly.
7. Eligibility:
8. Uniqueness:
9. Auditability:
It should be possible to verify that all votes have been correctly accounted for in the
final election tally, and there should be reliable and demonstrably authentic election
records, in terms of physical, permanent audit trail (which should not reveal the
user’s identity in any manner).
13
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
11. No over-voting:
The voter shall be prevented from choosing more than one candidate / answer.
12. Under-voting:
The voter may receive a warning of not voting, but the system must not prevent
under voting.
1. Security
Most online voting systems claim to be secure referring to cyber security and
resistance to cyber attacks. However, this is not enough. A voting system is secure
in the sense that we can trust that the results of an election are fair and correct while
protecting voters’ privacy. This is challenging because a voter must be able to trace
the effect of her vote on the result, while on the other hand privacy requires that a
vote cannot be traced back from the result to a voter.
a) End-to-end verifiability
Not only must the system operate correctly and election results must be fair,
but it must be possible for participants and external observers to certify this
unequivocally. It is auditable voting platform makes it possible for voters to
ensure that:
• Their choice was correctly encoded on the ballot by the system (cast-
as-intended)
14
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
b) Privacy
It keeps ballots truly secret so that a vote does not identify a voter and any
traceability between the voter and its vote is removed. Not even the
administrators of the voting system or anyone with privileged access to
hardware/software can violate this privacy.
c) Maintenance
The requirements were incorrect in the sense that they did not correctly
express the needs of the customer. In the first instance, we must change the
implementation and recertify the machines. Furthermore, we must also
investigate how the machines were incorrectly certified to be correct in the
first place, and introduce maintenance mechanisms to ensure that this type
of problem cannot happen again. In the second instance we must change the
requirements documents (and, as is normally done, carry these changes
through to the implementation of the e-voting system).
16
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
1) Technical Feasibility:-
➢ PRIVACY
As a user, these are some points from which users can keep their privacy.
1. Neither admins nor voting conducting officers should know which user
has given the vote to that particular party.
2. Any user may not be able to take a screenshot and share it in public
groups.
3. Any user may not be able to prove that to whom they have voted.
The system must be protected against buying and selling of votes. So, the
system Must not let the users prove to someone that he/she has voted for a
particular party/candidate. If the voters can't be able to prove that he/she
voted for a particular party/candidate then buying and selling of votes will
be stopped completely.
17
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Convenience
A system must be easy to use that with minimum equipment or with any
special skills anyone can vote using the Application.
If the system is convenient then the application is much easier to use and
voters will take part actively. A convenient Application must let the user vote
instantly and with minimum steps to vote. Application must have a clean
and beautiful user interface . Application must be convenience in such a that
no user face any difficulty in navigating in the application and doesn’t face
any problem at all.
➢ CORRECTNESS
2) Time Feasibility:-
For the Time Feasibility we will write very efficient and reusable code by
which we can make it ready under the deadlines. Basically we will follow
modular approach to make this project in specific time line and it will give
best result in the point of Time Feasibility . Each module will divided in
small section by which we can write functional code for each sections so by
which we can manage all the modules in very efficient way and all of the
modules will follow same structure for their working. Most Feasible module
18
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
in terms of Time Feasibility is Admin module which manage almost all other
modules and it will also increase the reusability for each section.
In terms of accuracy, result section for election is very critical and also we
need to make all counting of votes should be accurate and also managed
under time .With the code reusability we can make it quite easy and
understanding of every types of users like Admin,Candidate,Voter,Staff
Admin/Member.
At the end time feasibility will manage on each and every stage of this portal
to give effective and good experience to each user.
3) Cost Feasibility:-
Using Automated Digital systems, Websites and Mobile applications will surely
cut off the cost used for voting in the traditional method. Online systems will save
a lot of money and time for the government. Switching from offline election to
online election may save us lots of money. For example, if there is more than one
election in a year then in the traditional system the money will be used twice or
trice in making all the arrangements for voting. But in Online based voting system
we have to invest for the only time and we can use the system many times
throughout the year for conducting many elections with efficiency and accuracy.
The traditional system contains the cost of Machines, Logistics, manpower, ballot
papers. this cost will be reduced by the E-voting but E-voting systems will
include the costs like :
1. Software Development
2. Hardware Systems costs.
3. Maintenance Cost.
4. Man Power Cost.
19
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
In the Unified Modeling Language (UML), a use case diagram can summarize the
details of your system's users (also known as actors) and their interactions with the
system. To build one, you'll use a set of specialized symbols and connectors. An
effective use case diagram can help your team discuss and represent:
There Are Total 4 users in our system – Voter , Candidate , Staff and Admin
User.
20
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
1. VOTER
Complete their profile: After the registration, the user profile is generated in
that Voter can add or change the details on their voting profile like name ,
address, profile photo etc.
Can also view candidate profile: Voter can also view the candidate's profile.
Candidate profile consists of various information about the candidate and their
respective party .
See party announcements and manifesto: Voters can also see the
announcements and manifestos of different parties and candidates.
Cast vote: The voter can exercise their vote and choose their loved and preferred
candidate for the election.
View result: Now the voter can view results for all the elections that have been
closed.
21
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
22
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
2. Candidate
Complete their profile: After the registration, the Candidate profile is generated
in that Candidate can add or change the details on their Candidate profile.
Upload party manifesto: Candidate user can upload party / their manifesto and
can also add party information.
Cast vote: Candidate users Are also allowed to vote (if eligible).
View votes: Now the user can view results for all the elections that have been
closed.
23
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
24
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
3. Staff member
Approve / disapprove user: Staff members can approve and disapprove the
`users upon the validation of their details or documents provided be the users.
Manage voters : Staff members also be able to manage voters and candidate
users . if some changes are their in user name then if the user requests for change
then the staff member can approve or disapprove the changes done by the user.
Manage candidate list : Staff members has the list of the total registerd
candidates . staff member can also reverify the details and if finds any error staff
members will ask the candidate to solve that information error
25
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
4. Admin
Manage voters: Admin can be able to see all voters and their profiles and
also can manage them.
Manage candidate list: Admin can Manage the candidate list which means
admin can add or remove a candidate.
Manage election: Admin Can create or close the elections And be able to
manage the whole election process.
Manage result: Admin can Release the result, can be able to see the results,
and also has the privileges to discard the results.
26
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
Data standards are rules that govern the way data are collected, recorded, and
represented. Standards provide a commonly understood reference for the
interpretation and use of data sets.
By using standards, researchers in the same disciplines will know that the
way their data are being collected and described will be the same across
different projects. Using Data Standards as part of a well-crafted Data
Dictionary can help increase the usability of your research data, and will
ensure that data will be recognizable and usable beyond the immediate
research team.
27
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
1. voter
2. Candidate
3. Staff
4. Voting
5. Authentication
6. sharing
7. Result
8. election
28
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
29
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
30
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
31
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
32
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
FIGURE : ER DIAGRAM
33
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
34
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Voter
35
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Candidate
36
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Staff member
37
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Admin
38
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Voter
39
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Candidate
40
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Staff member
41
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Admin
42
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
43
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Admin
44
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Staff member
45
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Voter
46
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
➢ Candidate
47
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
Conclusion :
This Online Voting System will manage the voter’s and candidate by which they can login
and use his voting and election right respectively. The system will provide all features of
voting system . It provides the tools for maintaining voter’s vote to every party and it count
total number of votes of every party/candidate .There is a Database which stores all the
information regarding the Voter’s , Candidate, Admin and Staff Admin also .
From the technical point of view, it would be possible to implement an online voting system,
but there are deficiencies in how the verifiability and the prevention of pressuring voters
could be reconciled. In practice, voters would have to be able to ensure that their vote has
been counted as cast, but the system should still not produce a receipt that could be used to
pressure voters or sell votes. The most significant risk is related to voters' confidence and
the possibility of losing it. It is possible to shake voters' confidence in the voting system
even without any actual technical capabilities, since harm can be done just by spreading
false information and rumors. When votes can be concretely counted and recounted, it is
easy to remove any suspicions of manipulation of the election results, at least. The electoral
organization should have the means to identify harmful activities, prevent them and obtain
the evidence required to bring criminal charges or to verify that the election result is
indisputable and no manipulation has taken place. Currently, this is not yet possible.
In this user who is above 18 years register his/her information on the database and when
he/she want to vote he/she has login by his Email ID and password and can vote to any
party/candidate only single time. Voting Details stores in Database with the voter and Party
Details, and the result is displayed by the calculations. By online voting system percentage
of voting is increase. It is very easy to use and it is very less time Consuming.
48
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
Future Enhancement :
There are some points below which describe the future enhancement of online voting
system.
1) This project can be enhanced to work over the mobiles that is voting is made possible
through the mobile through SMS.
2) This system can be made vote through the internet and also multiple election with voting
can possible ,
4) It could be interfaced with printer to get the hard copy of the result and other necessary
documents at almost instantly from the machine itself.
5) Once the result is on the server it could be relayed on the network to various offices of
the election conducting authority.
49
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
References :
50
KJP (5TH CE)
196450307534 , 196450307565 VOTING APPLICATION
Right2vote :
https://right2vote.in/
Voting software :
https://www.capterra.com/voting-software/
Voting services :
https://www.surveyandballotsystems.com/services/voting-services/directvote/
51
KJP (5TH CE)