Modeling and Simulation of A Robust E-Voting Syste PDF
Modeling and Simulation of A Robust E-Voting Syste PDF
Modeling and Simulation of A Robust E-Voting Syste PDF
net/publication/229025235
CITATIONS READS
22 1,189
8 authors, including:
Omar Al-Jarrah
Jordan University of Science and Technology
69 PUBLICATIONS 1,415 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Omar Al-Jarrah on 17 May 2014.
phenomenon. This high tech method of casting a voters and the total number of registered voters in a
ballot has spread far beyond the United States, certain district. The available bandwidth for the
expanding throughout the entire world. E-Voting, communication links is an important factor as well.
along with its benefits and detriments, can now be Note that the bandwidth may vary within the same
found from the developed countries of Europe to the country. For example (in some countries) DSL links
developing countries of Asia and South America. are available only to particular localities, while dial
The introduction of electronic voting has been the up links are used more often in other areas. The
biggest change, for instance, to the Irish electoral message size used for communication between a
system since the establishment of the state over 80 voting station and the central servers has a notable
years ago. E-Voting may soon become a global impact on overall performance. This, in turn, will
reality or a global nightmare [8 - 10]. In 2003, a dictate the type and size of authentication traffic that
new e-Voting system was introduced in Belgium in can be accommodated by the system. Another
two locations to convince citizens that the system important parameter is the architecture of the data
was trustworthy [11]. They introduced a "Ticketing" management system. Here, the performance of the
system where the voter prints and approves a hard system is directly impacted with the use of either a
copy of his/her vote. At the end of the elections, all centralized or distributed approach for data storage,
of the paper votes (tickets) are counted and manipulation and management. A distributed
compared to the electronic result. In this election, approach, however, introduces more challenges for
there was an electronic voting problem reported maintaining accuracy/currency of the voting
where one candidate got 4096 extra votes because of process. These parameters are implemented in a
a technical problem [11]. Besides reliable e-Voting generalized simulation model.
technologies, there is a dire need for international
standards to govern the technology, the software In the simulation model, several metrics are used to
reliability and accuracy, the processes and evaluate overall performance and system behavior.
algorithms deployed within the technology, and the The main metrics will be the voting (simulation)
verification of all hardware, software and protocols time, which represents the ability of the system to
involved. Such standards will eventually allow execute the voting process in the allotted timeline.
elections to proceed in any part of the world without Internally, the average queue length (average
the need for monitoring bodies. The design of a number of voters waiting to vote) is another metric.
“good” voting system, whether electronic or using The average waiting time per voter is yet another
traditional paper ballots or mechanical devices must important metric. One of the key tuning parameters
satisfy a number of sometimes competing criteria would be the number of voting stations required at
including a high degree of security and accuracy, each voting center. This parameter is important,
eligibility and authentication, integrity, verifiability because it, by and large, is the only parameter which
and auditability, reliability, flexibility, performance can be tuned during the voting process (given the
and scalability [12, 13]. availability of hardware resources). The voting
center manager can (in principle) add or remove
More importantly, there is a real need for a good stations as deemed appropriate.
simulation model which can guide the deployment
of e-Voting resources such that the election process The rest of this paper is organized as follows. In the
can proceed with minimal faults and performance next section (section II) we describe in more detail
issues. In this paper, we provide a simulation model the general e-Voting model, while the simulation
for a generic e-Voting process. The model is model is introduced in section III. Simulation results
designed to be flexible enough to be adapted to are presented in section IV. Finally, the paper is
different election environments. The objective of the concluded in section V.
simulation model is to study the effect of several
parameters on the course of an election process. 2. The Proposed e-Voting Model
Simulation results provided by the model, for a
particular election process, allow offices Automating an election process, while relying on
administering an election process to deploy state-of-the-art in computer and ICT technologies,
adequate hardware and networking resources to can significantly mitigate many of the factors that
make the process as successful as possible. would hamper a healthy progress of a given election
process. For automated e-Voting processes to be
There are several parameters which impact any fully acceptable worldwide, several issues must be
voting process. The rate at which voters arrive at addressed and resolved. Among these issues are
voting centers has a direct impact on overall system authentication/validation, security, robustness,
performance. Hence, a heavy arrival rate at a certain performance and correctness. Given the short
voting center may require more voting stations in history of e-Voting systems across the world and the
order to complete the voting process in a timely inherent limitations in the scope of implementation,
manner. The simulation model allows for a good it is very difficult to measure the success or failure
estimation of the number of voting stations at each of any or all of the issues mentioned above. In
center based on a predicted average arrival rate of addition, any voting process, as mentioned earlier, is
Communications of the IBIMA
Volume 8, 2009 ISSN: 1943-7765
200 Modeling and Simulation of a Robust e-Voting System
bound by regulations and cultural values that functional requirements. Of utmost importance are
characterize the different societies involved. Hence, the requirements for correctness, robustness,
the example of one country may not directly suite coherence, consistency, performance and security.
the example of another. As a result, it is highly
recommended to build a simulation model whereby The client side represents a voting station, where
an e-Voting system can be evaluated and various voters cast their votes. Note that the hardware on
attributes adequately assessed before one is the client side includes IO devices for verification
deployed. and authentication (e.g., image scanners, ID card
readers, finger print readers, etc.). In addition to
This paper introduces one simulation model, where that, two more requirements are necessary. In order
we address the main factors which directly to reduce the traffic rate on the network links, a
contribute to the success of a voting process. The local database at the client side is required to host
simulation parameters can be changed based on the the data which pertains to the local voting center.
peculiarities of any entity. The main components of This DB is a rather dynamic one, in the sense that
the architecture of the model are shown in Figure 1. the data stored in its tables may vary over the
This is a client/server web-enabled architecture. election time period. The size of the local DB at any
voting center is only a small fraction of the global
DB at the server side. The use of a local DB
Statistics Statistics
Correctness
Administration
Administration
Correctness Robustness
Local Database
Database
Authentication
Voting Candidates Voters Coherence
Candidates Voters
Process Coherence
OS: Windows/ Consistency Consistency
UNIX/ IODrivers OS: Windows/
UNIX
Hardware: Security
Security
Card Readers
Image Scanner Hardware
Finger Print
Server Side Software System
Client Side SoftwareSystem
Figure 1b
Figure 1a enhances the performance of the voting process.
However, this approach creates a synchronization
The server side hosts the central database for the problem, which will be addressed later in this paper.
voting as well as the candidate population. The The alternative is to use one centralized DB. The
server also collects basic statistics related to an second requirement is the transparency of the voting
ongoing election process (some statistics can be process. In essence, a voter on an electronic voting
turned on or off based on the needs and station casts his/her vote to a computer. The voter
requirements of each election unit). Besides the does not have an insight on how his/her vote is
main functional properties of a voting system, as translated and/or tallied. In a paper-based election,
described in the previous section, the e-Voting the ballot is filled out by the voter and dropped into
system must cater for several essential non- a sealed box by the voter himself/herself. Votes are
Communications of the IBIMA
Volume 8, 2009 ISSN: 1943-7765
Mohammad Malkawi, Mohammed Khasawneh and Omar Al-Jarrah 201
counted in the presence of candidates or their even if the result of the vote is not committed to the
representatives. central DB in due time, the flag in the voter’s
central record is set to TRUE, thus eliminating the
The voter is certain that his/her exact ballot with possibility of another attempted voting by the same
his/her vote selection is placed in the appropriate voter, or by someone who carries a counterfeit ID
box. Of course, ambiguity in the ballot formats (as card. This requires that whenever the record of a
was the case in the US presidential election in 2000) voter is accessed for identification, even when the
may render the transparency a rather deceiving one. record is found at the local DB, the flag on the
In an electronic version, the voter puts his trust into central record must be checked. If it has already
computer hardware, software and network been set to TRUE, the voter is denied access and
infrastructure that process his/her vote. Hence, the his/her attempt fails to go through. If two people
e-Voting system in its broadest form may render the carrying the same ID card (one is authentic while
process a non-transparent one [8, 14]. This issue can the other is counterfeit) attempt to vote
be resolved by printing a hardcopy of each vote for simultaneously, the first one to access the record
the voter to keep for his/her records. Another copy will set the flag to TRUE, load the record and
is printed, possibly in the form of a bar code, and prevent the other one from accessing the record. Of
saved for later verification. In order to verify the course, if the one with the counterfeit card obtains
accuracy and correctness of the process, a random the record first, the vote cast will fail at the next
sample of the saved copies can be scanned and authentication step. It is possible that a record gets
verified against the votes stored in the DB. loaded into two different voting centers due to block
transfer from the central DB into local DB’s. When
The identification of a voter is done via a card a voter attempts to access the record from any of the
reader which reads off his/her official ID card and stations, the client will verify the central record flag.
retrieves the voter record from the local DB (on the If it has been set to TRUE, access is denied;
client side) or loads the record from the central DB otherwise it sets the flag to TRUE and access is
if it is not already in the local one. Records are granted. Note that simultaneous requests to the same
loaded dynamically from the central DB to the local record will be synchronized by the DB query
DB’s either on demand or on a pre-fetch basis. The serialization process (only one query may access
voter record includes, amongst others, a biometric any table at any given time). This mandatory check
description of the voter in question. In this study, we of the flag in the central DB will add extra overhead
use a fingerprint authentication method (other on the network. This overhead is already included in
methods can be added to the model). The voter will evaluating the simulator performance and is
be rejected if his/her fingerprints do not match the reflected into the ensuing simulations.
stored record. In order to reduce false rejections, we
store for each voter several copies of his/her Another synchronization resolution is required when
fingerprints taken at different time periods. a vote is to be tallied into the record of a candidate.
Fingerprints are stored as an encoded text in order to If a candidate is being selected by several voters at
reduce storage consumed by images. This dual the same time, then a certain assignment plan needs
process should guarantee that no voter can falsely to be put in place so that all votes will be tallied (no
impersonate another. Note that the use of misses) and added to the candidate’s record. Again,
fingerprints or any other scanned image directly we use a “COUNT” flag/mutex for the candidate’s
impacts the message size and hence the performance record. The COUNT flag is initially set to FALSE.
of the network. Hence, a distributed database When the record is selected by a voter, the flag is set
approach is preferable over a centralized approach. to TRUE until the record count is updated, then the
flag is reset to FALSE. All votes for the same
The accuracy and correctness of the e-Voting candidate will be queued until the flag is reset to
process can be further jeopardized if the same voter FALSE. In order to improve the ‘hit’ performance, a
casts two or more votes, or a vote is not properly
added to the overall count of the right candidate.
Such mishaps may come about as a result of
synchronization conflicts at the central DB level. In
order to prevent two or more votes per voter, we use
a “voting status flag” in the voter record. This flag is
initialized to FALSE. The voting status flag is set to
TRUE in the central DB whenever a voter identity is
verified (before authentication takes place). If the
authentication fails, the flag is reset to FALSE. If
the voter leaves the station without completing a
vote, the flag is also reset to FALSE; thus allowing
the voter another chance to try again and cast his/her
vote. If the voter successfully completes the voting
process, the flag remains set to TRUE. Note that
Communications of the IBIMA
Volume 8, 2009 ISSN: 1943-7765
Figure 2: Voting process flow chart
202 Modeling and Simulation of a Robust e-Voting System
The service time (i.e., the time it takes to complete voting runs. This is particularly important because
one whole voting transaction) is a blend of real time the model entails several random factors.
execution and random delay due to several factors. The simulation environment entails a live Oracle
The random delay is made up of the average time database system for voters and candidates. Besides
required to read the voter’s ID and scan the personal identification information, the records
fingerprint when a voter is de-queued and selected include authentication information and locality of a
to vote. This average is empirically determined voter and/or a candidate. The simulator, also,
using typical card readers, scanners and touch includes modules which emulate the arrival of
screen monitors. The verification and voters at voting centers and the voting process itself.
authentication processing time consists of real-time The simulator allows a voter to cast a vote at any
access to an Oracle database. DB transactions voting center, irrespective of his actual voting
undertaken in the simulator include setting the voter district (locality). This is one of the main advantages
flag as well as the candidate Counter semaphores. of an online e-Voting system.
In the simulation model, as figure 4 shows, the We have conducted a fairly large number of
central DB server and the local voting station simulations of the proposed voting system, taking
servers are located within the same local network the number of voters over a sample range starting at
segment. Therefore, we introduce a random delay to 2000 voters per voting center and ending at 20,000
compensate for inter-net transfer time. The transfer voters per voting center. We realize that the number
time is a function of the available network of voters in a given locality may be much larger
bandwidth and message size. We use several than the numbers we used in the simulator.
bandwidth sizes in this study. A 1 Mbps is a rather However, the simulation results are fairly scalable
conservative bandwidth and is typical of many where the simulation model is capable of modeling
voting locations around the world. fairly large number of voters. We fixed the number
of voters at a given voting center in the simulator.
Although in reality, this number may vary by a
small percentage due to the fact that people will be
allowed to vote at any other center they choose for
the sake of voting convenience, especially those
voters residing at townships outside their voting
districts, or those voters casting their votes through
embassies away from their home country/ies.
4. Simulation Results:
synchronization flags as discussed earlier (the This allows the administering body in a certain
VOTING and STATUS flags shown in Figure 5). country to properly size a given voting center given
When the flags were turned off we noticed several the number of voting populace and the available
violations of the voting accuracy. In the worst case bandwidth. Figure (7) shows the time required to
scenario, we noticed 1.2% error rate; where the error complete all voting transactions given a certain
is manifested in a cast vote not being reported in the number of voting stations and a voting population.
final results for a given candidate. With the use of This figure illustrates the trade-off between the
the synchronization flags, errors of the like are voting time and the number of voting stations. In
totally eliminated. countries, where the cost of voting stations can be a
real burden, the voting time period can be extended.
4.2. Number of Voting Stations For example, 20000 voters can be served by 2
When the number of voters at a given center is stations over 35 hours or can be served in 12 hours
relatively large, or the arrival rate of voters is high, using 36 voting stations.
it is recommended to add more voting stations to the
center. In a centralized approach, the addition of 4.3. Network Bandwidth
voting stations may not improve the results The wide area network bandwidth has a direct
significantly. impact on the model performance. Figure (8) shows
the average service time for three different
40
bandwidth values (128 Kb/s, 1 Mb/s, and 10 Mb/s).
35
Impact of Network Bandwidth
30
12
25
Number of VotingStations
10
20
15 8
AverageServiceTime(s)
10 M
10 6 1M
128 K
5 4
0
2
0 5000 10000 15000 20000 25000
Number of Voters
0
1 2 3 4 5 6 7 8 9 10 11 12
Figure 6: Voting Center Configuration VotingstationIDNumber
35
1 2 3 4 5 6 7 8 9 10 11 12
25 12000
20 16000
Figure 9: Network Bandwidth
20000
15
10
voting stations (in this case 12 stations) being
incubated at a particular voting center. The service
5
2 6 10 14 18 22 26 30 34 38
time is defined as the time it takes to process a vote
No. of Voting Stations Communications of the IBIMA
Volume 8, 2009 ISSN: 1943-7765
F igu re 7
Mohammad Malkawi, Mohammed Khasawneh and Omar Al-Jarrah 205
once the voter has been admitted to the system. This Voters arrive at a station at an average rate of (1/ µ)
time includes identity verification, authentication, according to an exponential inter arrival rate.
flag checks, the update to the central DB and the Furthermore, voters arrive in clusters (groups at a
statistics update as shown in Figure 8. Beyond a time) with a mean (λ) according to a Poisson
bandwidth of 1 Mb, any pronounced improvement random process. The scheduling policy used in this
begins to diminish. The x-axis represents the voting study (clustered) allocates all (λ) voters to the
station ID used to process the voter population. The station with the shortest queue length. We observed
results in Figure 8 are averaged over a 12-hour that this scheduling policy, although intuitive, leads
simulation timeframe for 10,000 voters. to the fact that some stations may become free,
while others remain busy, especially with large
Furthermore, the simulator was tuned to run and number of voting stations in the voting center. For
accommodate all voters within a 12-hour timeframe. comparison purposes, we implemented another
Figure (9) shows the average queue length for policy (round robin) which aims at keeping a
different bandwidths. The shorter the queue is the balance between the various voting stations. This
less time a voter expects to wait before casting a policy allocates voters in a round robin manner
vote at a voting station. The average queue length across all voting stations. Figures (10a and 10b)
can be 3 times as big for low speed network show the average queue length at 5 voting stations
connections (128 Kb/s). Figure (9) also confirms using clustered and round robin scheduling policies,
that the performance improvement beyond 1 Mb/s is respectively. Note that the round robin policy
rather insignificant. maintains a fairly good balance of voters among all
queues. The clustered policy shows a wide variation
among the voting stations in terms of the queue
4.4. Scheduling Policy lengths and the completion time. Some of the
The scheduling of voters to the available voting stations were observed to finish up all the voters
stations at a given voting center has a direct impact within 10 hours, while others persisted for more
than 12 hours. The main advantage of the clustered
policy is the simplicity of implementation and low
cost, since it does not require any distribution of
Queue 1 voters among stations; whereas the round robin
120
Queue 2 requires more personnel to manage the voting
Queue Length
100
Queue 3 process.
80
60 Queue 4 5. Conclusions
40
20
Queue 5
0
In this paper, we have proposed an online e-Voting
system which can tackle all earlier issues
0.6
1.87
2.92
3.98
5.13
6.23
7.29
10.6
14
Queue 2 introduced forms of malice that would adversely
12
10 Queue 3 affect the voting process altogether. Moreover, the
8 proposed voting system caters for the needs of the
Queue 4
6 physically challenged voters by providing special
4
Queue 5 multimedia amenities that would facilitate voting to
2
0
a voter’s convenience.
0.6
1.87
2.92
3.96
5.1
6.19
7.24
10.2