Paper 2010/625

Attacking and fixing Helios: An analysis of ballot secrecy

Veronique Cortier and Ben Smyth


Helios 2.0 is an open-source web-based end-to-end verifiable electronic voting system, suitable for use in low-coercion environments. In this article, we analyse ballot secrecy in Helios and discover a vulnerability which allows an adversary to compromise the privacy of voters. The vulnerability exploits the absence of ballot independence in Helios and works by replaying a voter's ballot or a variant of it, the replayed ballot magnifies the voter's contribution to the election outcome and this magnification can be used to violated privacy. We demonstrate the practicality of the attack by violating a voter's privacy in a mock election using the software implementation of Helios. Moreover, the feasibility of an attack is considered in the context of French legislative elections and, based upon our findings, we believe it constitutes a real threat to ballot secrecy. We present a fix and show that our solution satisfies a formal definition of ballot secrecy using the applied pi calculus. Furthermore, we present similar vulnerabilities in other electronic voting protocols -- namely, the schemes by Lee et al., Sako & Kilian, and Schoenmakers -- which do not assure ballot independence. Finally, we argue that independence and privacy properties are unrelated, and non-malleability is stronger than independence.

Available format(s)
Cryptographic protocols
Publication info
Published elsewhere. Minor revision. Journal of Computer Security, 21(1), pp. 89-148, 2013 and 24th Computer Security Foundations Symposium (CSF'11), IEEE Computer Society, pp. 297-311, 2011.
attackballot independenceballot secrecyelectronic votingFiat-Shamir heuristicmalleabilityprivacyreplayvulnerability
Contact author(s)
inria @ bensmyth com
2013-09-25: last of 9 revisions
2010-12-08: received
See all versions
Short URL
Creative Commons Attribution


      author = {Veronique Cortier and Ben Smyth},
      title = {Attacking and fixing Helios: An analysis of ballot secrecy},
      howpublished = {Cryptology ePrint Archive, Paper 2010/625},
      year = {2010},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.