# Secure Voting Website Using Ethereum and Smart Contracts
## 3 Literature Review  
Several papers have been published presenting the functions and issues with blockchain-based Voting protocols. In this section, we have given some relevant blockchain voting protocols. The Open vote network proposed by [PERSON] [1] was the first release of a self-counting internet protocol that granted security and privacy through Ethereum. Open Vote Network supported a small voting size of 50-60, a choice by design but still failed to stop miners from illegal activities on the system. Voters could also break the Voting system by sending an invalid vote. This system did not guarantee resistance to violence and corruption, and since solidity did not support 'elliptic curve cryptography,' the additional library developed into a better blockchain voting protocol. After the library was added, the contracts and transaction data became too big to be stored on the blockchain. The cost to maintain transaction data on Ethereum was astronomically high; storing all voters' data on it wasn't feasible. Table 1 illustrates the comparison of several blockchain voting platforms, frameworks they used, their security protocols, and limitations. Hsueh C.W [2] presented a decentralized and ingenuous electronic voting protocol. The voting system (Date) required a minimum degree of confidence between candidates. The date provided the ability to do large-scale electronic elections, which OVN lacked. Regrettably, this proposed system was also functional enough to provide security from \begin{table}
\begin{tabular}{c l l l} \hline
**Ref.** & **Framework** & **Security Protocol** & **Limitations** \\ \hline [7] & Ethereum, Geth & ECC & Audit, Accuracy, Integrity Scalability \\ \hline [8] & Bitcoin, Multichain & SHA-256 & Security \\ \hline [9] & ABVS, Ethereum & N.A & Transaction Privacy \\ \hline [1] & Ethereum, Hyperledger Fabric & Double SHA-256 & Scalability and Processing \\ \hline [10] & Smart Contracts & zk-SNARK & User Identity \\ \hline [5] & Blockchain & ECC and SHA-256 & Integrity and Scalability \\ \hline [11] & Smart Contracts, Hyperledger Fabric, NFT & Membership Service Provider (MSP), HSM & Security \\ \hline [12] & Ethereum, Open Vote Network & Merkle tree & Transaction Privacy \\ \hline [9] & IOT based system & SHA-256 & Voting must be done via EVM \\ \hline [18] & Challenge-Handshake Authentication Protocol (CHAP) & Zcash tokens, Authentication with Challenge- Handshake Authentication Protocol & Performance and security \\ \hline [19] & Ethereum & Homomorphic encryption & Handling of incorrect data, some amount of ether is needed. \\ \hline [20] & PyCharm’s Community software & ECDSA, SHA-256, PKI & Limited applicability, Lack of empirical evidence, Security and Privacy \\ \hline [21] & N.A & SHA-256 & N.G \\ \hline [3] & POW, Bitcoin & SHA-256 & Scalability, Accuracy \\ \hline [2] & POW, Ethereum & SHA-3 & Audit, Accuracy and Integrity \\ \hline [4] & PBFT, bitcoin & Double SHA-256 & Verifiability and scalability \\ \hline \end{tabular}
\end{table} 
Table 1: Comparison of Literature. DoS attacks because the authority needed for auditing the vote after the election wasn't available. While using Ring Signature, which keeps users' privacy, it was hard to coordinate several signers. This protocol could only be used for small-scale voting despite providing the ability to do large scales. [PERSON] et al. [3] presented a reliable blockchain-based voting protocol. On a minor scale, it promised to solve anonymity, security, and privacy problems in blockchain systems. However, this protocol wasn't problem-free; this paper used a mathematically complex and resource-demanding algorithm. It needs a vast supply of energy to process. Another issue arises from the involvement of third parties because there is a risk of fraudulent activity and data leaks. [PERSON] [4] proposed an auditable blockchain-based voting technology. They also modified the algorithm method to make it resistant to DoS attacks. It not only accepts the anonymity of the voter, but it also helps the audit process.