Implementation of double voting prevention algorithm on smart contracts for E-voting blockchain applications
Blockchain is a data structure that tracks information and transactions through a digital ledger. Its main difference from databases is that blockchain is decentralized, and the data stored in blockchains are immutable. This characteristic promotes data integrity, which makes it a potentially excell...
Saved in:
Main Authors: | , |
---|---|
Format: | text |
Language: | English |
Published: |
Animo Repository
2023
|
Subjects: | |
Online Access: | https://animorepository.dlsu.edu.ph/etdb_comtech/12 https://animorepository.dlsu.edu.ph/context/etdb_comtech/article/1011/viewcontent/Implementation_of_double_voting_prevention_algorithm_on_smart_con.pdf |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | De La Salle University |
Language: | English |
Summary: | Blockchain is a data structure that tracks information and transactions through a digital ledger. Its main difference from databases is that blockchain is decentralized, and the data stored in blockchains are immutable. This characteristic promotes data integrity, which makes it a potentially excellent platform for industries and applications heavily relying on non-repudiation, like e-voting. Smart contracts allow for automation in the blockchain when processing blocks. Smart contracts implementing election rules do not have double-voting control implementations to prevent malicious double-voting attempts. With security controls improperly implemented, e-voting data integrity may be severely affected. This study aims to improve smart contracts to prevent double voting on blockchain-based e-voting systems. An e-voting architecture with user-facing web servers and an Offchain module coordinates with the blockchain and smart contract to filter out multiple attempts of double voting. The developed prototype prevented instances of double voting for both frontend and backend access through the Offchain module, which checks voter data, address used to cast the vote, and generated signatures from the database and blockchain. The system successfully blocks situations such as re-casting a vote for the same user, and using a different address to cast a vote, namely the administrator’s address, another registered voter’s address, and an unrecognized address. A static code analysis has also been performed on the smart contract, with no security-related vulnerabilities included in the result, indicating no significant security issues. The test only highlights multiple gas cost issues. |
---|