1 Department of Computer Science, Faculty of Science, Aarhus University, Aarhus University2 Department of Computer Science, Science and Technology, Aarhus University3 University College London4 Centre for Mathematical Physics and Stochastics, Department of Mathematical Sciences, University of Aarhus5 Athens University of Economics and Business6 Department of Computer Science, Science and Technology, Aarhus University
We describe the theory behind a practical voting scheme based on homomorphic encryption. We give an example of an ElGamal-style encryption scheme, which can be used as the underlying cryptosystem. Then, we present efficient honest verifier zero-knowledge proofs that make the messages in the voting scheme shorter and easier to compute and verify, for voters as well as authorities, than in currently known schemes. Finally, we discuss various issues connected with the security of a practical implementation of the scheme for on-line voting. Notably, this includes minimizing risks that are beyond what can be handled with cryptography, such as attacks that try to substitute the software running on client machines.