You are on page 1of 6

2020 the third International Conference on Vocational Education and Electrical Engineering (ICVEE)

E-Voting on Blockchain using Solidity Language


Yamuna Rosasooria Abd Kadir Mahamad Sharifah Saon
Independent Researcher Faculty of Electrical and Electronic Faculty of Electrical and Electronic
Bandar Putra Bertam, Kepala Batas, Engineering Engineering
Pulau Pinang, Malaysia Universiti Tun Hussien Onn Malaysia Universiti Tun Hussien Onn Malaysia
ce160062@siswa.uthm.edu.my Batu Pahat, Johor, Malaysia Batu Pahat, Johor, Malaysia
0000-0002-3985-6549 0000-0003-2706-3258

Mohd Anuar Mat Isa Shingo Yamaguchi Mohd Anuaruddin Ahmadon


iExplore Graduate School of Science and Graduate School of Science and
Taman Klang Utama, Technology for Innovation Technology for Innovation
Klang Selangor, Malaysia. Yamaguchi University Yamaguchi University
anuarls@hotmail.com Japan Japan
shingo@yamaguchi-u.ac.jp anuar@yamaguchi-u.ac.jp

Abstract—Electronically voting process without paper and voting process traceable and verifiable [2]. This happens
the ballot box, namely electronic voting (e-voting), required because blockchain helps in recording the transactions, which
some improvement, especially in terms of security elements. cannot be deleted or altered. The network participants have to
This is against the anonymize properties of the e-voting system. agree to the validation of the transaction through
Therefore, a blockchain e-voting system was proposed which consensus [3].
have a secure and transparency features to deploy during the
Student Representative Council (SRC) election in Universiti The blockchain e-voting system provides a real voting
Tun Hussein Onn Malaysia (UTHM). Blockchain technology process through the electronic device [2]. The vote is sent to
ensured all aspects such as transparency, security, and the nodes and transaction to the blockchain is based on the
auditability were achieved without sacrificing the privacy of smart contracts [4]. The smart contracts are the regulations to
voters. In this study, e-voting using a blockchain system was be followed to verify and added the vote into the system [4].
developed to detect the fraud that occurs during the voting The blockchain is specifically accessible by authorized
session using Solidity language. A total of 3 cases were analyzed members/participants and not visible to the public [5]. To
and a questionnaire was done to evaluate the proposed system. ensure smoothness of distributed network traffic, each node is
Analysis of respondents gave positive perception with a mean designed to have a specific node server.
value of 4.5, 4.6, and 4.9, for 1st, 2nd, and 3rd Case respectively.
To sum up, the proposed system can shorter the time for the Satoshi Nakamoto was presumed as the person that
voting process and diminishes the expense because of no need to introduced Bitcoin in 2008 [6], starting from that year,
print out the ballot. Blockchain technology became familiar and much other
application using this technology was proposed by many
Keywords—e-voting, blockchain, solidity language, researchers.
I. INTRODUCTION Blockchain is a block that contains a list of records
From the beginning of the voting system, the casting a connected in chain form. This chain is processed using a Peer-
ballot has been founded on the conventional pen and paper to-Peer (P2P) network [7]. This chain has to comply with the
method, as a basic framework to confine extortion and allows mechanisms, called Proof-of-Work (PoW) that are used in
the procedure to be detectable and evident. The election Bitcoin and Proof-of-Stake (PoS) that are applied in PeerCoin
procedure was improved by the electronic voting process [8].
without the existence of paper and ballot boxes. A successful The blockchain technology is a decentralized public ledger
election process shows a group of registered voters use the based on smart contract agreement [9]. The permission in the
computer network at the voting center to cast their ballots. blockchain is based on Proof-of-Authority (PoA) algorithm.
This method has been seen as imperfect, in terms of security In PoA based network, any transaction must be validated by
[1]. Moreover, the e-voting system can stop accepting the the validators [10]. This process is to ensure the security which
ballots when the administrator had deactivated the election any transaction has to validate and certify randomly, with their
session. This paper is proposed to design an e-voting system identity and reputation at stake [10].
using blockchain technology by developing online-based.
Besides, the proposed system is developed for a fraud The application of blockchain can be used for investors
detection system using a smart contract of Solidity language. crowdfunding on the blockchain to create a secure system for
This project has been developed on the Remix application, investors and entrepreneurs, eliminating the middle man on
which focuses on the development of an e-voting system for investments and ensuring entrepreneurs get their projects
public voting in Universiti Tun Hussein Onn Malaysia funded [11]. The general thought of the blind auction contract
(UTHM), especially for the Student Representative Council is that everyone can send offers during an offering period. The
(SRC) election. benefit of a blind auction is that there is no time pressure
towards the finish of the offering time frame [12]. With the
The existing UTHM e-voting system requires some fast development of technology and social service awareness,
improvement, especially the e-voting systems security pre-payment schemes are now widely accepted in the
elements. This is against the security properties of the voting provision of utility services such as electricity, water, and gas
system, namely anonymization. Hence, blockchain is needed [13]. Authentication is the people who already registered are
to provide anonymize security features to the e-voting system. allowed to cast a vote.
Moreover, a blockchain can detect fraud while making the

978-1-7281-7434-1/20/$31.00©2020 IEEE

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.
TABLE I. COMPARISON BETWEEN EXISTING SYSTEM AND
PROPOSED SYSTEM.
System Method Advantage Disadvantage
Paper-Based Paper 1. Easy to 1 People with
Voting cards or vote for weak or no
Systems [22] sheets senior vision
citizens. might need
large print,
2. High cost
3. Spoil vote
Remote SMS 1. Maximize 1. Can be
Voting the tamper
System [23] convenien 2. Current and
ce to vote near-term
technologie
s are
insufficient
to report
Fig. 1. System architecture on e-voting system using blockchain these risks
Direct- Touchscre 1. Lower 1. No printed
Recording en cost proof of the
Electronic interface 2. Simpler vote.
(Dre) Voting or simple to use 2. The results
Systems [24] buttons than are not
The system does not support the registration process [14]. computer- accumulate
Registration usually requires verification of certain counted d or
information and documents to comply with current laws, paper counted in
systems. the polling
which could not be done online in a secure manner. Therefore, places but
the system should be able to verify the voter’s identities at the
against a previously verified database, and then let the voters tabulation
vote only once [14]. Hence, anonymity is the e-voting system center.
that should not allow any links between voter’s identities and Blind Interface 1. The 1. The result
Signature signature can tamper.
ballots. The voter has to remain anonymous during and after
Technology is used to 2. High cost
the election [15]. Next, accuracy is where votes must be Voting authentica 3. Voters
accurate and every vote should be counted, and can’t be System [25] te the should
changed, duplicated, or removed. Finally, verifiability is to voter available at
make sure all the votes are counted correctly by the system while the voting
[16]. keeping center to
the complete
There are few types of the existing system are analyzed in secrecy of the voting
this section. Estonia is the first country in the world that the process
content of
implements nationwide internet voting [17]. The system has a ballot
been developed since 2001 with the final trial held at the end 2. The ballot
of 2004. The first system is used in 2005 by local government using an
elections [18]. After 3 years, the system is used for anonymo
parliamentary elections. The registered voters may cast their us
channel.
ballot via the internet. Estonia is the main nation in the country Proposed Interface 1. Cost and 1. Voters
that depends on the Internet hugely casting a ballot for System time should
national races [19]. The framework is right now utilized for savings available at
Estonia's national parliamentary decisions, city races and is increased the voting
wanted to be utilized for coming European Parliamentary 2. Mitigated center to
races. In late surveys, between 20 percent and 25 percent of risk of complete
fraud and the voting
voters cast their ballots on the web [19]. Be that as it may, the disputes. process
country's Internet voting system can't ensure reasonable 3. Preserved
elections because of important security weaknesses and poor the
operating procedures, security, and Internet voting researchers anonymit
have found [17]. Besides, The Infrastructure University Kuala y
Lumpur (IUKL) Students Representative Council (SRC)
proposed to adopt for its election using an Android-based
mobile voting application. The several features of this current manual voting system [21]. Table 1 shows the
application; which are the voting process conducted online, comparison of existing system and proposed system.
the results are trackable in the real-time, centralized platform
to campaign, and an interactive platform between the II. RESEARCH METHOD
candidates and the voters [20]. On the other hand, Universiti This section discussed in details about the method and
Teknikal Malaysia Melaka (UTEM) Students Representative activities done in blockchain e-voting system development.
Council proposed voting system was designed and created Software development requires a methodology which it
using cryptographic mechanisms to protect and enhance the fulfills the need of the system to produce a good result.

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.
Each step showed the outcome of the interface while building
the system. Furthermore, there was 3 category of the case
study that done to evaluate the proposed system and to analyze
the perception of respondents that used the blockchain e-
voting system. The case study was focus on (i) the e-voting
system using blockchain, (ii) the comparison of the e-voting
system using blockchain versus non-blockchain, and (iii)
fraud attempt. Finally, a questionnaire is used to collect the
perception of the respondent on the e-voting system using
blockchain technology.
A. Backend
The backend represents the entire business logic which is
represented by one or several smart contracts interacting with
the underlying blockchain. For this purpose, the project
directory was created for a decentralized application in the
command line.

Fig. 2. Web application B. Frontend


The frontend of a decentralized application represented the
Solidity language is used to design the system as a user- user interface on Chrome. Two networks were used in the
friendly interface because it is more appropriate and MetaMask to get the interface. Firstly, the localhost which has
preferable in this project. This section also describes the set of the candidate picture, candidate names, and the address
techniques that have been chosen as a guideline in developing account that casting the voting. Secondly, the Rinkeby
the system and about the methodology conducted for the network able to see the account address after casting the vote.
proposed project. It is important to decide a suitable Therefore, Web3 is a Javascript library that was allowed the
methodology during the election development process, as it localhost to connect with the blockchain, and initialize
helped the developer to deploy the smart contract systematic contracts that were used to fetch the deployed instance of the
and eligible. The design and implementation of the system are smart contract. The code was assigned a function that allows
decentralized which a part of the software that interconnects the authorized client to use the frontend. Render function will
with the blockchain and manages the state of all networks. lay out all the content on the page with data from the smart
Lastly, the dependencies that need to install to build this contract which is the list of the candidates that created inside
project are using Ganache which is given the 10 fake hash the smart contract. All the candidates have been looped
account while Node.js that used to run the Javascript outside through each other in the mapping and rendering it to the table.
of the browser. MetaMask is the main dependency used to Moreover, the current account that is connected to the
transfer the Ethereum. blockchain has been fetched inside the function and displays
it on the page.
A. System Architecture
System architecture shows the flow from the backend to • The frontend of Localhost 3000 network:
the frontend. Each block has its task to make the system The frontend of the system, which was run on the Command
function properly. Figure 1 shows the system architecture on Prompt, with authentication that was proceeded by using the
the e-voting system using blockchain. private key from the Ganache and imported to the MetaMask.
Once the account was set on the MetaMask the user can cast
B. Web Application the vote and the account address appeared at the “your
The user interacts with a web application by using a web account” text. Therefore, the MetaMask triggered the Remix
browser to connect to a central server over a network. All the Application and started to deploy. Once done voting the admin
code of this web application lives on the central server and all able to view the transaction of the voter from MetaMask
the data lives in a central database. While the transaction of history. Figure 3 shows the frontend of the localhost network.
the application must communicate with the central server on • The frontend of Rinkeby:
the web. Figure 2 shows the process of the web application.
This section shows the interface of the system that created
C. Questionnaire using Dapp Builder using the Rinkeby Network. The polling
The evaluation of the proposed system was conducted agent account can end the voting session while the voter’s
based on a questionnaire sent to collect the perception of the accounts are only able to cast the vote. The polling agent is
respondent on the e-voting system using blockchain checked for the voter attendance and give an account for the
technology. This chapter includes two sections which are voters to cast the vote. At the end of the voting section, the
demographic analysis and perception of the respondent that polling agent collects the candidate voting result. Figure 4
used e-voting on the blockchain. shows the frontend of the Rinkeby network
C. Case Study
III. RESULTS AND ANALYSIS
A case study was done to summarize the real outcome of
This section focuses on the result and analysis obtained the analysis. Firstly, the case of the e-voting system using
from the project development. Moreover, this section blockchain. Secondly, to compare the e-voting system using
explained the basic concepts as an initial overview of the blockchain against the e-voting system using non-blockchain.
system operation. In this section, the result of the backend and Finally, the case to detect fraud attempts. From these cases,
frontend was showed step by step in the following section. the advantage of blockchain is explained.

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.
Fig. 5. Result on Dapp application

Fig. 3. Frontend on the Localhost network

Fig. 4. Frontend of the Rinkeby network

• Analysis of the First Case on Normal Voting using


Blockchain: Fig. 6. Result on localhost
The normal voting cases in blockchain show that the voters
have cast the vote and unable to select another candidate
again, in which the registered voters would receive the voting the vote. This makes the voters attempt fraud for the second
key during registering. It gives the voters opportunity to make time. Figure 7 shows the interface of the other e-voting
exactly one chance to cast a vote after which the key becomes system while Figure 8 shows the candidate results that the
obsolete and cannot be used again. The normal voting cases in voters cast vote for two (2) candidates.
blockchain show that the voters can cast the vote and unable
to end the voting session. Each voter was given an account
number to cast the vote. The voter has only one chance to cast • Analysis of the Third Case on Fraud Detection:
the vote wisely. Even though, the hash file is transparency but The second case was done to detect the fraud attempt. Figure
the voter unable to recognize the previous voter’s identity. 9 shows the fraud detection on the localhost, in which the
Figure 5 and Figure 6 show the results of voting that received voter from account 7 tried to vote twice for the same person.
by each candidate This happens when the voter double clicks the vote button and
confirm the transaction twice. The first transaction has been
• Analysis of the Second Case on Comparison of E- confirmed and added into the block of the contract while the
voting using Blockchain versus E-voting using Non- second transaction was failed due to the same account number
Blockchain: that tried to send two transactions at once. Therefore, the
The comparison between blockchain in the voting system and blockchain able to detect that account 7 tried to send the vote
other voting systems proved that the blockchain voting system twice and do not let the second vote add to the block.
is can be applied in the real application. A normal voting
system able voters to view the poll interface even after casting

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.
Fig. 7. Interface for other e-voting system Fig. 9. Fraud detection on localhost

TABLE II. PERCEPTION ON BLOCKCHAIN E-VOTING SYSTEM


Scale
Case Question Mean Perception
1 2 3 4 5
Q1 and 7 8
1st - - - 4.5 Positive
Q2 (46.7%) (53.3%)
Q3 and 6 9
2nd - - - 4.6 Positive
Q4 (40%) (60%)

3rd Q5 - - - 2 13 4.9 Positive


(13.3%) (86.7%)

is possible to be implemented for the UTHM Student


Representative Council election.
Fig. 8. Result on other e-voting system • Q2: Satisfaction of the Blockchain E-Voting System
From the analysis of this question, there were 7
respondents (46.7%) satisfied with the e-voting system
while 8 respondents (53.3%) stated that they are very
satisfied. Therefore, it can be said that the proposed
D. Evaluation of Proposed System system fulfills the respondent’s perception.
To evaluate the proposed system a questionnaire was done
for 15 respondents. There were consists of two parts in the • Q3: Analysis of the E-voting:
questionnaire which are demographic information analysis This question stated to find out the respondent’s perception
and perception of the respondent that used the blockchain e- of the security part for the e-voting using blockchain. There
voting system. Firstly, a demo of the proposed system was were 9 (60%) respondents very agree to feels the system is
shown to the respondent before the respondent answer the secure and anonymity to be implemented. Hence, 6
questionnaire; 5 questions were involved, which Q1 and Q2 respondents with 40% stated that they are agreed. From this
for 1st Case, Q3 and Q4 for 2nd Case, and Q5 for 3rd Case. analysis, proved that all respondents are agreed with the
Then, all the data was collected and analyzed in terms of a pie statement that the e-voting on the blockchain is secure and
chart and bar chart to show the frequency and percentage of confidentiality for the voters to cast the vote
the evaluation. Summarise of respondent perception analysis • .Q4: Time Saving on E-Voting In Blockchain:
for question Q1 to Q5, are tabulated as in Table II. The following question mentioning on the time-saving
• Perception of Respondent analysis on e-voting using blockchain. There were 9
This part explained the perception of the respondent respondents (60%) very agreed on the time saving during
that used the blockchain e-voting system. The casting the vote. Hence, 6 respondents (40%) agreed that the
questionnaire consists of 5 questions. The questions are blockchain e-voting system is time-saving. From this
based on the respondent perceptions with 5 levels of analysis, the proposed system showed that it is time-saving
scale, 1- Very Disagreed, 2- Disagreed, 3-Neutral, 4- and convenient for the voters to cast the vote.
Agreed, and 5- Very Agreed. • Q5: Fraud attempt on e-voting system:
• Q1: Preferences on Using Blockchain E-voting The last question for the questionnaire is to find out the
System: review of respondents on e-voting using blockchain that can
From question 1 there are 7 respondents or 46.7% be avoided from fraud attempts. Therefore, there were 13
agreed with the preference on using blockchain e- respondents (86.7%) stated very agreed that e-voting using
voting system while 8 respondents with 53.3% stated blockchain avoid fraud happens while 2 respondents with
very agreed to use the e-voting on the blockchain. 13.3% agreed with that statement.
Thus, can be concluded, that e-voting using blockchain

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.
IV. CONCLUSION Processing - IEEE International Congress on Big Data, pp. 557–564,
2017.
Blockchain E-voting system help to avoid or minimize [9] U. Can Çabuk, E. Adgüzel, and E. Karaarslan, “A Survey on
fraud during the UTHM Student Representative Council Feasibility and Suitability of Blockchain Techniques for the E-Voting
election. The system has successfully developed and comply Systems,” International Journal Advanced Research Computer and
with the objectives, however, some improvements can be Communication Engineering, vol. 7, no. 3, pp. 124–134, 2018.
considered in the future for a better system; in terms of [10] S. Wu, “Evaluation and Improvement of Two Blockchain-Based E-
practicality and user friendly. With the blockchain voting System: Agora and Proof of Vote,” Master Thesis. University
Of Birmingham 2018.
technology, it appears that the future is bright and promising.
[11] H. Zhu and Z. Z. Zhou, “Analysis and outlook of applications of
The analysis result and system designed has been stated in the blockchain technology to equity crowdfunding in China,” Financial
result section, showing that most of the respondent very Innovation vol. 2, no. 1, pp. 29-40, 2016.
agreed with the proposed system; 53.3% and [12] S. Based and E. Smart, “Towards Analyzing the Complexity
above. Moreover, there are advantages of the UTHM e-voting Landscape of Solidity Based Ethereum Smart Contracts,” Research
system using blockchain technology, including user-friendly, Group on Artificial Intelligence, pp. 2-16, 2019.
easy to use by the administrator, election authority, and voters [13] Geoffrey Cann and Emily Catmur, “Blockchain: Overview of the
due to the understandable interface of the e-voting system. potential applications for the oil and gas market and the related taxation
implications,” 2017, Deloitte Touche Tohmatsu Limited.
Thus, this system able to detect the fraud happens with 86.7%
very agreed. As a conclusion, the questionnaire successfully [14] S. Ibrahim, M. Salleh, and M. Kamat “Electronic Voting System:
Preliminary Study,” University Teknologi Malaysia, pp. 1-10, 2000.
proved that e-voting on the blockchain are satisfied and secure
[15] S. Shah, Q. Kanchwala, and H. Mi, “BlockChain Voting System,”
for the voter to cast the vote. Dissertation, Northeastern University, 2017.
ACKNOWLEDGMENT [16] Y. Liu and Q. Wang, “An E-voting Protocol Based on Blockchain,”
Southern University of Science and Technology, 2018.
The financial support received from Universiti Tun [17] A. K. Koç, E. Yavuz, U. C. Çabuk, and G. Dalkiliç, “Towards secure
Hussein Onn Malaysia is gratefully acknowledged. e-voting using ethereum blockchain,” 6th International Symposium on
Digit Forensic Security ISDFS 2018 - Proceeding, pp. 1–6, 2018.
REFERENCES [18] A. Barnes, C. Brake, and T. Perry, “Digital Voting with the use of
Blockchain Technology,” Team Plymouth Pioneers, Plymouth
University, 2017
[1] A. Ben Ayed, “A Conceptual Secure Blockchain-Based Electronic
Voting System,” International Journal of Network Security and Its [19] D. Springall, Travis Finkenauer, and Zakir Durumeric, “Security
Application., vol. 9, no. 3, pp. 2-9, 2017. Analysis of the Estonian Internet Voting System,” Proceedings of the
2014 ACM SIGSAC Conference on Computer and Communications
[2] A. Navya, R. Roopini, S. N. A. S, and B. Prabhu, “Electronic voting Security, pp. 703–715, 2014.
machine based on Blockchain technology and Aadhar verification,”
International Journal of Advanced Research. Ideas Innovations [20] K. Yahaya, “Implementation of Mobile Voting Application in
Technology., vol. 4, no. 2, pp. 1177–1182, 2018. Infrastructure University Kuala Lumpur, Malaysia,” International
Journal Computer Applications, vol. 180, no. 47, pp. 25–31, 2018.
[3] F. P. Hjalmarsson, G. K. Hreioarsson, M. Hamdaqa, and G.
Hjalmtysson, “Blockchain-Based E-Voting System,” IEEE [21] W. L. Shen “Secure Student Representative Council Voting System
Using,” Dissertation, Universiti Teknikal Malaysia Melaka, 2014.
International Conference on Cloud Computing Cloud, pp. 983–986,
2018. [22] M. Hapsara, A. Imran, T. L. Turner, A. Defence, and F. Academy, “E-
[4] F.S Hardwick, Apostolos Gioulis, Raja Naeem Akram, “E-Voting with Voting in Developing Countries E-Voting in Developing Countries
Blockchain: An E-Voting Protocol with Decentralisation and Voter Current Landscape and Future Research Agenda,” Second
Privacy,” University of London, Egham, United Kingdom, 2018. International Joint Conference on Electronic Voting, Lecture Notes
Computer Science, vol. 10141, 2016.
[5] F. Fusco, M. I. Lunesu, F. E. Pani, and A. Pinna, “Crypto-voting, a
Blockchain-based e-Voting System,” Piazza dArmi, Cagliari, pp. 223– [23] A. Pathak and A. Wasay, “Design and implementation of a secure and
227, 2018. robust voting system based on blockchain,” International Journal of
Advance Research, Ideas and Innovations in Technology, vol. 4, no. 5,
[6] S.Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,” Journal pp. 869–875, 2018.
for General Philosophy of Science, pp. 1–9, 2018.
[24] N. Soledad and M. Meza, “A Model for Direct Recording Electronic
[7] K. Christidis and M. Devetsikiotis, “Blockchains and Smart Contracts Voting Systems,” Master Thesis, University of Pretoria, 2008.
for the Internet of Things,” IEEE Access, vol. 4, pp. 2292–2303, 2016.
[25] A. M. Oo, Htet Ne; Aung, “A Survey of Different Electronic Voting
[8] Z. Zheng, S. Xie, H. Dai, X. Chen, and H. Wang, “An Overview of Systems,” International Journal of Scientific and Engineering
Blockchain Technology: Architecture, Consensus, and Future Trends,” Research, vol. 03, no. 16, pp. 3460–3464, 2014.

Authorized licensed use limited to: University of Gothenburg. Downloaded on December 20,2020 at 01:17:54 UTC from IEEE Xplore. Restrictions apply.

You might also like