Need help with electionguard?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

628 Stars 76 Forks MIT License 56 Commits 5 Opened issues


ElectionGuard is a set of open source software components that can be used to create and publish end to end verifiable elections as well create a publishable artifact for ballot comparison audits.

Services available


Need anything else?

Contributors list

Microsoft Defending Democracy Program: ElectionGuard


ElectionGuard is an open source software development kit (SDK) that makes voting more secure, transparent and accessible. Announced on at the Build developer conference, ElectionGuard enables end-to-end verification of elections as well as support the publication of results from ballot comparison audits. The ElectionGuard SDK leverages homomorphic encryption to ensure that votes recorded by electronic systems of any type remain encrypted, secure, and secret. Results can be published online or made available to third-party organizations for secure validation, and allow individual voters to confirm their votes were correctly counted.

❤️ Open-Source

This library and all linked ElectionGuard projects, are licensed under the MIT license. There is no fee for using ElectionGuard.

🚀 Getting Started

ElectionGuard is always improving. To keep up with the latest, check our GitHub Pages documentation. For those looking to get started, we recommend the following repositories.


This repository is a living document to help everyone interact with ElectionGuard. The official ElectionGuard site is built using the

folder and mkdocs with mkdocs-material. Ensure you have the python 3.8 or newer installed and run
to install the dependencies and start the site.


A core component of electionguard implemented in python which includes ballot encryption, decryption, key generation, and tallying.

📁 Source | 📦 Package | 📝 Documentation

C ++

A core component of electionguard implemented in C++ which includes ballot encryption.

📁 Source - ✨ Coming Soon


A thin stateless API that wraps the python package to perform ballot encryption, casting, spoiling, and tallying.

📁 Source | 🐳 Docker | 📄 Documentation

🛡 Security Issues Reporting

We encourage the developer and security community to conduct research, report issues, and suggest improvements on this code base. However, unlike performance or feature bugs, please do not report security vulnerabilities in public Github comments. Each repository has a SECURITY file with instructions on responsibly reporting security vulnerabilities under Microsoft's CVD process.

## 🤝 Contributing Help defend democracy and contribute to the project.

❓ Questions

ElectionGuard would love for you to ask questions out in the open using Github Issues. If you really want to email the ElectionGuard team, reach out at [email protected]

🎉 Thanks!

A huge thank you to those who helped to contribute to this project so far, including: * Josh Benaloh (whose PhD thesis was the genesis of much of this work) * InfernoRed Technology * VotingWorks * Center for Civic Design * Oxide Design * Many teams within Microsoft

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.