Online Voting Using Block Chain
Online Voting Using Block Chain
Online Voting Using Block Chain
For some years, online voting has emerged as a substitute for paper-based
elections to reduce redundancies and anomalies. The recent point of view adopted in
the past two decades shows that it has not been as successful for some period
because of the cloud encryption and privacy observed. This paper suggests a
framework with the use of practicable hashing methods to maintain information
protection. In this paper we present the idea of square creation and square fixing.
Presenting a square repair concept let’s make the block chain agile when addressing
the problem of the survey process. This is recommended to use cooperative
blockchain, which means that an administrating entity owns the block chain (e.g.,
election commission), so therefore no unapproved access may be created from
outside. The method presented in this paper discusses the feasibility of the survey
process, the usefulness of hashing calculations, the development and initialization of
blocks, the collection of knowledge and the declaration of findings by the use of the
modular block chain technique. This paper professes to catch the protection and
details the problems confronting the executive in block chain, and gives an better
explanation of the online voting process.
Existing System:
This is the current voting system used in India. In this system vote is cast using
electronics ballet. In this we cast our vote in an electronics machine. This is a group
of some counter and registers. This voting system is quite easy, simple. It has
advantage like mobility, secure, flexibility for election commission. But in today
world all people are so much busy that they don’t have time to vote. This paper
presents a perspective in the electronic voting process. That includes but not limited
to identifying the polling process, The polling process the actual voting process used
on the polling day
Proposed System:
The proposed system is the Biometric online voting system with biometric
fingerprint using aadhaar card. It determines the particular voter by his/her
fingerprint whether he/she is a valid voter or not. It allows particular voter to cast
the vote online. The polling process continues until the voting time ends and update
the database in the server. Biometric online voting system uses aadhaar card to
retrieve the complete details about the voter. And the votes are stored in a
blockchain server and viewed to the public this ensure a trustworthy environment.
SYSTEM SPECIFICATION
HARDWARE REQUIREMENT SPECIFICATION
RAM : 256 MB
HDD : 80 GB
FDD : 1.44 MB
Block Chain:
MODULE DESIGN
The proposed system consists of modules,
1. User Module
2. Administrator Module
3. Cloud Server Module
4. Attribute based Access Policy Module
5. Block Chain Module
1. USER MODULE
User interface consists of a login name and unique password using which
he/she can login into the online E-Voting system. This will be supplied by the
administrator to the user. Once the user has logged in, he has the privilege to view
the names of the candidates listed by the administrator, view the results after the
termination date of the election. The user module constitutes only one sub module:
CANDIDATE REGISTRATION
This facilitates of voter view the register form are enter the details and finally
submit the details within check the details in administrator so your particular details
are true accept the registration. Otherwise cross check the details, this details are
false immediately reject your registration.
LOGIN
Each voter is provided with unique username and password manually by the
administrator. The voter uses the username and password for login and exercise the
fundamental right of E-Voting.
If incorrect username and password entered, the access to is denied to the
user. And also voter is allowed to vote only once. This is the security feature
provided against external access of the system.
After login the voter enters the voter home page, which provides the links.
E-VOTING SYSTEM
This provides the voter with a list of candidate with in his/her constituency
along with selection option (radio button) to select the preferred candidate from the
list. If the E-Voting date is before termination date, the vote goes valid else goes
invalid.
VIEW RESULTS
This provides graphical and user friendly representation of the votes obtained
by each candidate. It includes the percentage of the votes obtained by each
candidate. But the result can be viewed only after the termination date of the
election.
LOGOUT
This provides an option for the voter to quit the session, while in the voter home
page.
2. ADMINISTRATOR MODULE
Administrator interface consists of a login name and unique password using
which admin can login into the online E-Voting system. Administrator has the main
control of the system. By logging into the page it can perform the following tasks.
ADD CONSTITUENCY
Here the election to be conducted is selected. To add an election the
constituency should be selected and termination date of election should be specified.
VOTERS LIST
Here we can view the voters list. Each constituency will be having separate
voters list.
CANDIDATE LIST
The list of candidates participating in the election can be seen. It includes the
candidates name, party name and party symbol.
The sub-modules of administrator are:
1. E-Voting Structure
2. Voters Registration
3. Candidate Registration
4. Counting & Categorization of Results
1. E-VOTING STRUCTURE
Here the eligible voters who are permitted to login to the system can utilize
the right to vote. Each voter can register a single vote to a candidate’s favour in
his/her constituency. The security measures taken within the system prevents them
from exercising their votes again i.e. the second vote by the same user goes invalid.
The starting and ending dates of the election are specified by the administrator. The
user must have an identity card and he must be in voters list.
2. VOTERS REGISTRATION
The registration procedure of all the eligible voters .This registration process
is done by the administrator. According to voters database each voter is provided
with a unique identification codes which includes username and password.
The details of the voters include username, password, name, address, gender,
constituency, image etc. With the voter registration, thus producing the voter list
with the given information of the voters. The voter list can be viewed by anyone
accessing the webpage. The admin can view the voter list with in his homepage.
3. CANDIDATE REGISTRATION
The registration of the candidates in each constituency is done by the
administrator. The details of the candidate includes name, address, gender, his/her
constituency, party and image. With the candidate registration, thus producing the
candidate list with the given information of the candidates. The candidate list can be
viewed by admin and the vote within their respective homepages.
According to candidates database (manual) each details of the candidates are
stored in database controlled by the admin including candidates details.
4. COUNTING & CATEGORIZATION OF RESULTS
When the voter votes, the number of votes obtained by the selected candidate
is incremented by 1.The result is published only after the E-Voting process is over.
It is accessible from the next day after the termination date. Here we depict the
result in the graphical representation according to the percentage of vote obtained by
the candidate. Result can be viewed by everyone who visits into the site without any
authentication problem. A link to view the result is kept in the index page and both
admin and voter can view the result in their respective homepages. When the user
clicks the result link, before the termination date of the election, “Result not
Published yet” Message will be displayed. The result comes with their party symbol
on the top of the graph representing the percentage of vote obtained by each
candidate.
In this paper, we consider the server to be semi-trusted, i.e., honest but curious as
those in [28] and [15]. That means the server will try to find out as much secret
information in the stored voting information as possible, but they will honestly
follow the protocol in general. On the other hand, some users will also try to access
the files beyond their privileges. For example, a pharmacy may want to obtain the
prescriptions of patients for marketing and boosting its profits. To do so, they may
collude with other users, or even with the server. In addition, we assume each party
in our system is preloaded with a public/private key pair, and entity authentication
can be done by traditional challenge-response protocols.
In our framework, there are multiple SDs, multiple owners, multiple AAs, and
multiple users. In addition, two ABE systems are involved. We term the users
having read and write access as data readers and contributors, respectively.
5. Block Chain Module
In this Block chain module, block chain is implemented for all login form, Vote
information , and for Candidate information. The time stamp and block chain is
implemented for all the histories
Write better code: The Java programming language encourages good coding
practices, and its garbage collection helps you avoid memory leaks. Its object
orientation, its JavaBeans component architecture, and its wide-ranging,
easily extendible API allow reuse other people’s tested code and introduce
fewer bugs.
Develop programs more quickly: Development time is as much as twice as
fast versus writing the same program in C++.
Avoid platform dependencies: Program portable avoiding the use of libraries
written in other languages.
Write one, run anywhere: Because java applications are compiled into
machine-independent byte codes, they run consistently on any Java platform.
Distribute software more easily: With Java Web Start technology, users will
be able to launch your applications with a single click of the mouse. An
automatic version check at startup ensures that users are always up to date
with the latest version of your software.
Database (server):
The client sends a request to the server. The server being a more
powerful machine does all the fetching and processing and returns only the desired
result set back to the client for the finishing touches.
Java Server Pages (JSP) technology enables mix regular, static HTML
with dynamically generated content from servlets. Many Web pages that are built
by CGI programs are primarily static, with the parts that change limited to a few
small locations.
For example, the initial page at most on-line stores is the same for all visitors,
except for a small welcome message giving the visitor’s name if it is known. But
most GCI variations, including servlets, make you generate the entire page via your
program, even though most of it is always the same.
JSP lets you create the two parts separately. Most of the page consists of
regular HTML, which is passed to the visitor unchanged. Parts that are generated
dynamically are marked with special HTML like tags and mixed right into the page.
The Write Once, Run Anywhere properties of JSP allows the user to
choose best-of-breed tools. Additionally, an explicit goal of the Java Server
Pages design is to enable the creation of high quality portable tools.
design the structure of the tables (called schema) and how they relate to one
another
add, edit and delete data
sort and manipulate data
query the database (that is, ask questions about the data)
produce listings based on queries
It is used in many places throughout the world. Lately, however, it has begun
to permeate the business world as a reliable and fast database system MySQL is
often confused with SQL, the structured query language developed by IBM. It is not
a form of this language but a database system that uses SQL to manipulate, create,
and show data. MySQL is a program that manages databases, much like Microsoft's
Excel manages spreadsheets. SQL is a programming language that is used by
MySQL to accomplish tasks within a database, just as Excel uses VBA (Visual
Basic for Applications) to handle tasks with spreadsheets and workbooks.
Careful planning.
Investigation of system and constraints.
Design of methods to achieve the change over.
Training of the staff in the change over phase.
38
The process that includes the diagnosis and correction of one or more
errors is called Corrective maintenance
TESTING
This testing method considers a module as a single unit and checks the unit
at interface and communication with other modules rather getting into details at
statement level. Here the module will be treated as a block box that will take some
input and generate output. Output for a given set of input combinations are
forwarded to other modules.
Unit testing focuses verification effort on the smallest unit of software i.e.
the module. Using the detailed design and the process specifications testing is done
to uncover errors within the boundary of the module. All modules must be
successful in the unit test.
SCREENSHOT:
SAMPLE CODE:
4.3 DATA FLOW DIAGRAMS
LEVEL 0:
Online Voting
LEVEL 1:
Voter
Election
Master
CONCLUSION
By doing this project we were able to bring a new system for online national
E-Voting for our country. With the advent of technology and Internet in our day to
day life, we were able to offer advanced E-Voting system to voters both in the
country and outside through our online E-Voting system.
Top 4 Reasons to Move to the Online E-Voting Platform
1. Efficient and Cost Effective: The system offers significant cost benefits over
paper elections in a vote to vote comparison. It saves an organization the cost of
creating, printing and postage, since everything can be handled electronically.
Online elections reduce the use of paper and the amount of work for both the
organization, as well as voters.
2. Intelligent: The Online E-Voting Platform offers intelligent ballots, smart
checklist features, vote tallying, tabulation and reporting. These functions are
automatic and do not need to be assigned to personnel in-house. Additionally, it
allows administrators to create rules on ballots so that voters cannot cast invalid
votes, nor do they need to be checked while counting.
3. Easy and convenient: The Online E-Voting Platform offers the easiest and most
convenient method for administrators and voters alike. For administrators, the
process of setting up a ballot and conducting an election is simple and manageable.
The other advantages that the system offers are:
• Efficient data storage and Intelligent Management.
• Accuracy, real-time response and user friendliness.
•
FUTURE ENHANCEMENTS
In future we can add an SMS query also.ie we will get the result updates at the
time of counting. To receive the SMS we need to register with our mobile number
in the site.
BOOKS AND WEBSITES
Books
Web References
www.jspin.com
www.javaworld.com
www.sun.java.com
www.wrox.com