1 of 9

BLOCKCHAIN-BASED VOTING SYSTEM

ANIRUDDH MULEY

2 of 9

Contents

    • Encryption and SHA-256
    • Merkle Trees
    • Blockchain
    • Voting System
    • Features of System
    • Limitations of System

3 of 9

Encryption and SHA-256

  • Encryption is the process of encoding information to prevent unauthorized access. It includes symmetric and asymmetric encryption.
  • SHA-256 is a cryptographic hash function that produces a 256-bit hash value and is part of the SHA-2 family. The function involves various processes including padding and pre-processing the message, and 64 rounds of bitwise operations in the compression function.
  • SHA-256 is highly secure and resistant to collision attacks. However, its computational intensity can be an issue in some environments, and it can be vulnerable to brute force attacks.
  • SHA-256 is widely used in blockchain technology, digital signatures, certificate authorities, and password hashing for secure data verification and integrity.

4 of 9

Merkle Trees

  • A Merkle Tree is a tree in which each leaf node represents the cryptographic hash of a data block, and each non-leaf node represents the hash of its child nodes.
  • To construct a Merkle Tree, data is initially partitioned into fixed-size chunks. These chunks are then hashed pairwise. The resulting hashes are iteratively combined until a single hash called the Merkle root is computed.
  • Merkle Trees ensure data integrity by detecting any alterations or tampering within the dataset. They provide efficient verification, allowing integrity checks to be performed rapidly by verifying only the Merkle root rather than the entire dataset.
  • Merkle Trees are widely used in blockchain technology, such as the cryptocurrencies Bitcoin and Ethereum, where they secure transactions and ensure the integrity of distributed ledger systems.

5 of 9

Blockchain

  • Blockchain is a decentralized ledger technology designed to securely record transactions across multiple computers, to ensure transparency and immutability.
  • It is constructed by linking blocks of data in a chronological sequence. Each block contains a list of transactions and a reference to the previous block through a cryptographic hash. Merkle Trees within each block efficiently verify the integrity of the transactions.
  • Blockchain technology enhances security with cryptographic hashing and decentralized consensus. It ensures transparency by allowing all participants to view the transaction history and maintains immutability, preventing data alterations.
  • Blockchains are used in cryptocurrencies (Bitcoin, Ethereum) , supply chain management, smart contracts, digital identity verification, data verification in databases, and secure voting systems in elections.

6 of 9

Voting System

  • This project contains a simplified blockchain-based voting system:
  • Block: A single block contains an index, timestamp, votes, previous block's hash, Merkle root hash, and an overall SHA-256 hash.
  • Blockchain: The blockchain starts with the genesis block (index 0) which acts as the "head“. It contains no data. Subsequent blocks containing data are added to the chain.
  • Voter: The voter is identified by a unique voter ID and the candidate they voted for.
  • Voting System: The voting system contains registered voters, a list of candidates, and a map of cast votes linking hashed voter IDs to candidates.

7 of 9

Features of System

The model demonstrates the following properties of a blockchain:

  • The blockchain is secure and tamper-resistant, due to cryptographic hashing and dependence on the previous block. Altering a single block also changes the subsequent blocks, as a result tampering with the blockchain is not possible. Thus, it is immutable.
  • It is possible to see the contents of the blockchain, i.e. the voters and their respective votes. In other words, a blockchain is transparent. The voting system also allows only unique registered voter IDs to cast their vote, thus improving legitimacy of the election.
  • Verification of data integrity and tracing the data to detect any changes only requires computing the hashes of a few branches. Thus data integrity can be verified with very little computational cost.

8 of 9

Limitations of System

For all its features, the model has the following shortcomings:

  • A true blockchain implementation involves multiple nodes, each maintaining a copy of the blockchain. In other words, it is decentralized and prevents central authority manipulation. For demonstration purposes, the model is a simple and small-scale implementation of what a large-scale model might be.
  • The centralized and simplified admin controls cannot be implemented in real-life scenarios, as it is against decentralization, and lacks advanced features such real-time vote-tracking and multi-level administrative roles. This also creates a single point of failure, which is avoided by a decentralized system.

9 of 9

Limitations of System

  • The system omits advanced consensus mechanisms such as Proof-of-Work (PoW) and Proof-of-Stake (PoS), which prevent fraudulent activities. There is also no mining process, which ensures transaction validation and the integrity of the blockchain in a decentralized network.
  • The omission of smart contracts limits the system's ability to automate complex electoral processes and conditions, which are vital for implementing rules and regulations automatically.
  • The system, while encrypting the voter IDs, does not adequately address voter privacy and anonymity of votes. Voter privacy and vote anonymity is critical to prevent voter coercion and possible result manipulation. Lastly, tie situations are simply addressed by choosing alphabetically. Real-life scenarios require much more complicated, sound and fair tie-breaking mechanisms.