Cryptology ePrint Archive: Report 2010/625

Attacking and fixing Helios: An analysis of ballot secrecy

Veronique Cortier and Ben Smyth

Abstract: 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.

Category / Keywords: cryptographic protocols / attack, ballot independence, ballot secrecy, electronic voting, Fiat-Shamir heuristic, malleability, privacy, replay, vulnerability

Publication Info: This document is a preprint of a Journal of Computer Security article and a preliminary version was presented at the 24th IEEE Computer Security Foundations Symposium (CSF'11).

Date: received 6 Dec 2010, last revised 27 Aug 2012

Contact author: inria at bensmyth com

Available format(s): PDF | BibTeX Citation

Version: 20120827:145942 (All versions of this report)

Short URL:

Discussion forum: Show discussion | Start new discussion

[ Cryptology ePrint archive ]