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

Realtime electronic voting system based on the Paillier homomorphic encryption scheme.

License

Notifications You must be signed in to change notification settings

thisisnotcsarg/MINOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Minosse
MINOSSE logo

MINOSSE

MINOSSE (MINOS in english, name inspired by the famous character in Dante's work) is a web-based, client-server application for electronic voting, real-time data collection, votes counting, and multi-candidate elections.

It uses the Paillier semi-homomorphic cryptographic scheme to anonymously collect and count the votes.

It is a purely demonstrative application and shouldn't be employed in a production environment by any means. It is NOT a secure system and I do not assume any responsabilities of the usage that you will do of this software.

Preface

This project was created for my BSc thesis at the University of Bologna (UNIBO) in 2021, and it is archived and no longer maintained. Contributions to this repository are not accepted, but if you want to re-use my code, you can do so under its license constraints (see the LICENSE file).

You can view the documentation in the doc/ directory, where you will also find the PDF of my thesis. Unfortunately, it is in Italian.

Brief Description

Minosse is a web app that enables electronic (remote) voting. Remote voting poses a current challenge due to its intrinsic requirement for anonymity. Ciphering votes with a robust modern cipher addresses the problem until it's time to decrypt them. Encrypting votes with standard cryptographic schemes only serves to 'move' the problem. Homomorphic cryptographic schemes leverage their intrinsic malleability property to establish a homomorphism (a link) under a certain operation between ciphertexts and plaintexts.

Therefore, specific operations on the ciphertexts can be performed to ensure they will be reflected on the plaintexts in a predictable and reproducible way. The result is a system that can homomorphically count votes without decrypting them.

Meta

csarg

MINOS by csarg is licensed under CC BY-NC-SA 4.0

https://github.com/thisisnotcsarg