Skip to content
This repository has been archived by the owner on May 29, 2024. It is now read-only.
/ AtticaVoting Public archive

Attica establishes trust for voters through distributed ledger technology in order to secure voting and promote transparency in the electoral process.

Notifications You must be signed in to change notification settings

Attica-Voting/AtticaVoting

Repository files navigation

AtticaVoting

Attica Voting Project

Attica Logo

Attica

The current practices in place to administer national democratic voting are heavily riddled with security vulnerabilities. It was demonstrated publicly how to obtain full administrative access to what are called Direct-Recording Electronic voting machines with no special tools in under two minutes. The DRE machines are still being used across the nation as well as other poor voting practices. Attica proposes a solution to addressing these current security vulnerabilities by implementing a consensus voting protocol on a distributed ledger. The commit and reveal structure allows any individual who voted to check and track that their vote was counted. The votes are committed through the Hedera Hashgraph Consensus Service to be sure there is no double sending, counting, or voting from unregistered individuals.

Motivation

The motivation for this project comes from the poor voting practices across the nation. While it is understood that part of this problem is due to the fact that each state is in charge of its own voting policy. This makes it very difficult for there to be implemented standards across the nation. This being said, we hope that the use of Attica by a state founded university will set an example of what we can do better. Digital voting is a topic of high interest among cyber security professionals and we hope to have a large positive contribution on the direction of this technology.

Tech/framework used

Built with

Features

Our project provides consensus validation for every vote casts and administration. Currently there is no technology that provides this service with provable security up to the Byzantine Fault Tolerance.

Prerequisites

  1. Node.JS, tested with v12.16.1

  2. Hedera Hashgraph account

  3. DragonGlass API Keys

  4. PGP keypair, can be generated multiple ways including here

Usage

Setup

  • Install node dependencies with npm install

Starting an Election

  • Start the script with npm run start

  • Once you get to the 404 page add /elections/dogs or elections/CSU to the URL

Finishing an Election

  • Start the tallying script with npm run tally

  • Follow the menu prompts for the topic ID and PGP key information

Authors

  • Derek Larkins
  • Waylon Jepsen
  • Maddie Mihevc
  • Christian Ferguson

About

Attica establishes trust for voters through distributed ledger technology in order to secure voting and promote transparency in the electoral process.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •