Electronic Voting

Electronic Voting

Computer science major investigated the cryptographic techniques necessary to run a secure electronic election.

About the Project

Overview

As a semester-long independent project, Mark Dalton investigated the cryptographic techniques that are utilized to construct a secure electronic election. This culminated in the development of a website that allows a fair electronic election to be conducted.

The properties that are preserved by the system are:

  • correctness
  • verifiability and auditability
  • anonymity of voters
  • uniqueness (one vote per voter; requires authentication)
  • non-coercibility

The cryptographic tools that had to be learned included: zero-knowledge proofs, homomorphic encryption and mix-nets.

Student

Mark Dalton ’20, Computer Science 

Instructors

Zach Kissel ’05, Associate Professor, Computer Science

Assignment Type

Independent study project

Languages/Code/Programs/Technology Used
  • The protocol was implemented in Java using Spring
  • The web technologies used, beyond Spring, were JavaScript and HTML
  • Authentication was done using the OAuth.