Securing online voting with homomorphic encryption is now possible thanks to the new Electis Django project. At Electis, we believe that electronic voting must be open source and must be in the hands of an NGO rather than private companies.
Built on top of Microsoft ElectionGuard, the story is that when you create a new election you are the “Mediator”, then you setup the candidates and voters, as well as a bunch of “Guardians”. Each Guardian downloads a private key. Prior to opening the election, each guardian must share their key in order to create a joint public key, then the voting process can open. Your vote will be encrypted with the joint public key so that your ballot itself may never be decrypted - the encryption is not symetric it’s homomorphic. When the Mediator closes the election, the Guardians go through another key ceremony which allows to decrypt the tally.
This product has been used by a group of French National Assembly amongst others, and is currently in deployment for different state organizations.
You can try it here for free: https://electeez.com
Interestingly, this project uses experimental Ryzom Python components under the hood instead of templates, and its Python to Javascript compiler and bundler instead of webpack, including Web Components written in pure Python (this is not the most advanced Ryzom project we have to show though)