We propose a definition of ballot secrecy as an indistinguishability game in the computational model of cryptography. Our definition improves upon earlier definitions to ensure ballot secrecy is preserved in the presence of an adversary that controls ballot collection. We also propose a definition of ballot independence as an adaptation of an indistinguishability game for asymmetric encryption. We prove relations between our definitions. In particular, we prove ballot independence is sufficient for ballot secrecy in voting systems with zero-knowledge tallying proofs. Moreover, we prove that building systems from non-malleable asymmetric encryption schemes suffices for ballot secrecy, thereby eliminating the expense of ballot-secrecy proofs for a class of encryption-based voting systems. We demonstrate applicability of our results by analysing the Helios voting system and its mixnet variant. Our analysis reveals that Helios does not satisfy ballot secrecy in the presence of an adversary that controls ballot collection. The vulnerability cannot be detected by earlier definitions of ballot secrecy, because they do not consider such adversaries. We adopt non-malleable ballots as a fix and prove that the fixed system satisfies ballot secrecy.
An election is a decision-making procedure to choose representatives [4,68,90,110]. Choices should be made by voters with equal influence, and this must be ensured by voting systems, as prescribed by the United Nations [138], the Organisation for Security & Cooperation in Europe [101], and the Organization of American States [102]. Historically, “Americans [voted] with their voices – viva voce – or with their hands or with their feet. Yea or nay. Raise your hand. All in favor of Jones, stand on this side of the town common; if you support Smith, line up over there” [89]. Thus, ensuring that only voters voted and did so with equal influence was straightforward. Indeed, the election outcome could be determined by anyone present, simply by considering at most one vote per voter and disregarding non-voters. Yet, voting systems must also ensure choices are made freely, as prescribed by the aforementioned organisations [101,102,138]. Mill eloquently argues that choices cannot be expressed freely in public: “The unfortunate voter is in the power of some opulent man; the opulent man informs him how he must vote. Conscience, virtue, moral obligation, religion, all cry to him, that he ought to consult his own judgement, and faithfully follow its dictates. The consequences of pleasing, or offending the opulent man, stare him in the face...the moral obligation is disregarded, a faithless, a prostitute, a pernicious vote is given” [95].
The need for free-choice started a movement towards voting as a private act, i.e., “when numerous social constraints in which citizens are routinely and universally enmeshed – community of religious allegiances, the patronage of big men, employers or notables, parties, ‘political machines’ – are kept at bay,” and “this idea has become the current doxa of democracy-builders worldwide” [23]. The most widely used embodiment of this idea is the Australian system, which demands that votes be marked on uniform ballots in polling booths and deposited into ballot boxes. Uniformity is intended to enable free-choice during distribution, collection and tallying of ballots, and the isolation of polling booths is intended to facilitate free-choice whilst marking.1
Earlier systems merely required ballots to be marked in polling booths and deposited into ballot boxes, which permitted non-uniform ballots, including ballots of different colours and sizes, that could be easily identified as party tickets [29].
Moreover, the Australian system can assure that only voters vote and do so with equal influence. Indeed, observers can check that ballots are only distributed to voters and at most one ballot is deposited by each voter. Furthermore, observers can check that spoiled ballots are discarded and that votes expressed in the remaining ballots correspond to the election outcome. Albeit, assurance is limited by an observer’s ability to monitor [24,79,100] and the ability to transfer that assurance is limited to the observer’s “good word or sworn testimony” [98].
Since the paper-based Australian system’s introduction, electronic voting systems have emerged. Unfortunately, these electronic systems are routinely broken in ways that violate free-choice, e.g., [28,65,85,133,143,144], or permit undue influence, e.g., [28,31,75,85,137]. Breaks can be avoided by proving that systems satisfy formal notions of voters voting freely and of detecting undue influence. Universal verifiability formalises the latter notion, and we propose a definition of ballot secrecy that formalises the former. Our definition is presented in the computational, game-based model of cryptography, whereby a benign challenger, a malicious adversary and a voting system engage in a series of interactions which task the adversary to break security.
Ballot secrecy formalises a notion of free-choice,2
Ballot secrecy and privacy occasionally appear as synonyms in the literature. We favour ballot secrecy to avoid confusion with other privacy notions, such as receipt-freeness and coercion resistance, which we will briefly discuss in Section 8.
assuming voters’ ballots are constructed and tallied in the prescribed manner.
Ballot secrecy. A voter’s vote is not revealed to anyone.
We capture ballot secrecy as a game that proceeds as follows. First, the adversary picks a pair of votes and . Secondly, the challenger constructs a ballot for vote (in the manner prescribed by the voting system), where β is a bit chosen uniformly at random. That ballot is given to the adversary. The adversary and challenger repeat the process to construct further ballots, using the same bit β. Thirdly, the adversary constructs a set of ballots, which may include ballots constructed by the adversary and ballots constructed by the challenger. Thus, the game captures a setting where the adversary casts ballots on behalf of some voters and controls the votes cast by the remaining voters. Fourthly, the challenger tallies the set of ballots (in the manner prescribed by the voting system) to determine the election outcome, which is given to the adversary. Finally, the adversary is tasked with determining if or . To avoid trivial distinctions, we require that the aforementioned votes (controlled by the adversary) remain constant regardless of whether or . If the adversary wins the game, then a voter’s vote can be revealed, otherwise, it cannot, i.e., the voting system provides ballot secrecy. Our game improves upon games by Bernhard et al. [16,18,20,125,126] to ensure ballot secrecy is preserved in the presence of an adversary that controls ballot collection (i.e., the bulletin board and the communication channel), whereas games by Bernhard et al. do not.
Beyond ballot secrecy, voting systems should satisfy properties including universal verifiability, which requires systems to produce evidence that can be checked to determine whether votes expressed in ballots correspond to the election outcome, thereby enabling the detection of undue influence. Smyth, Frink & Clarkson [128] capture universal verifiability as a game that tasks the adversary to falsify evidence that causes checks to succeed when the outcome does not correspond to the votes expressed in collected ballots, or that cause checks to fail when the outcome does correspond to the votes expressed. Thus, winning the game signifies the existence of a scenario in which a spurious outcome will be accepted or a legitimate outcome rejected. By comparison, when no winning adversary exists, anyone can determine whether the election outcome is correct. Universal verifiability and ballot secrecy are orthogonal properties of voting systems that can be studied, formulated and analysed independently. We shall largely avoid discussion of verifiability, except to introduce general concepts, to highlight features needed solely for verifiability, and to simplify proofs.
We introduce two voting systems to demonstrate how ballot secrecy and universal verifiability can be achieved. The first () instructs each voter to cast a ballot comprising of their vote paired with a nonce (which is collected and stored on a bulletin board) and instructs the tallier to publish the election outcome corresponding to votes (stored on that board). The second () instructs voters to cast asymmetric encryptions of their votes and instructs the tallier to decrypt the encrypted votes and publish the outcome corresponding to those votes. Universal verifiability is ensured by the former system, because anyone can recompute the election outcome to check that it corresponds to votes expressed in collected ballots. But, ballot secrecy is not, because voters’ votes are revealed. By comparison, secrecy is ensured by the latter system, because asymmetric encryption can ensure that votes cannot be recovered from ballots and the tallying procedure ensures that individual votes are not revealed. But, universal verifiability is not ensured. Indeed, spurious election outcomes need not correspond to the encrypted votes. Thus, ensures secrecy not verifiability, and achieves the reverse. More advanced voting systems must simultaneously satisfy both secrecy and verifiability, and we will consider the Helios voting system.
Helios is an open-source, web-based electronic voting system [2], which has been used in binding elections. In particular, the International Association of Cryptologic Research (IACR) has used Helios annually since 2010 to elect board members [12,69],3
https://www.iacr.org/elections/, accessed 29 Mar 2019.
the Association for Computing Machinery (ACM) used Helios for their 2014 general election [134], the Catholic University of Louvain used Helios to elect their university president in 2009 [2], and Princeton University has used Helios since 2009 to elect student governments.4
http://heliosvoting.wordpress.com/2009/10/13/helios-deployed-at-princeton/ and https://princeton.heliosvoting.org/, accessed 29 Mar 2019.
Helios is intended to satisfy universal verifiability whilst maintaining ballot secrecy. For ballot secrecy, each voter is instructed to encrypt their vote using an asymmetric homomorphic encryption scheme. Encrypted votes are homomorphically combined and the homomorphic combination is decrypted to reveal the outcome. Alternatively, a mixnet is applied to the encrypted votes and the mixed encrypted votes are decrypted to reveal the outcome [1,30]. We continue to refer to the former voting system as Helios and, henceforth, refer to the latter variant as Helios Mixnet. For universal verifiability, the encryption step is accompanied by a non-interactive zero-knowledge proof demonstrating correct computation. This ensures homomorphic combinations of encrypted votes and mixed encrypted votes can be decrypted, hence, the outcome can be recovered. Helios additionally requires proof that ciphertexts encrypt votes. This prevents an adversarial voter crafting a ciphertext that could be combined with others to derive an election outcome in the voter’s favour. (E.g., votes might be switched between candidates.) The decryption step is similarly accompanied by a non-interactive zero-knowledge proof to prevent spurious outcomes.
Contribution and structure. Contributions are summarised in the bullet points below and described in detail by the surrounding text:
A definition of ballot secrecy that overcomes limitations of previous works by considering an adversary that controls ballot collection.
Section 3 briefly explains the pitfalls of existing ballot secrecy definitions, introduces our game-based definition of ballot secrecy, adapts formalisations of non-malleability and indistinguishability for asymmetric encryption to derive two equivalent game-based definitions of ballot independence, and proves relations between definitions. In particular, ballot independence is shown to be sufficient for ballot secrecy in a class of voting systems with zero-knowledge tallying proofs, and it is shown to be necessary, but not sufficient, in general.
A Helios case study that identifies an attack, which cannot be detected by previous work, and a proof that secrecy is satisfied after applying a fix.
Section 4 shows that our definition of ballot secrecy can be used to identify a known vulnerability in Helios, explains why earlier definitions of ballot secrecy by Bernhard et al. cannot detect that vulnerability, discusses non-malleable ballots as a fix, and uses our sufficient condition to prove that secrecy is satisfied when the fix is applied.
A proof that voting systems built from non-malleable encryption satisfy ballot secrecy if tallying is additive, which trivialises secrecy proofs.
Section 5 proves that ballot independence cannot be harmed by tallying, if all ballots are tallied correctly; shows that universally-verifiable voting systems tally ballots correctly; proves satisfies ballot independence, assuming the underlying asymmetric encryption scheme is non-malleable; and combines those results to show that proofs of ballot secrecy are trivial for a class of universally-verifiable, encryption-based voting systems.
A Helios Mixnet case study that demonstrates the triviality of ballot secrecy proofs for systems built from non-malleable encryption.
Section 6 presents an analysis of Helios Mixnet and demonstrates that our results do indeed make proofs of ballot secrecy trivial, by showing that the combination of universal verifiability and non-malleable encryption suffice for ballot secrecy in Helios Mixnet. The remaining sections present syntax (§2), discussion, limitations, and directions for further research (§7), related work (§8), and a brief conclusion (§9); Sidebar 1 introduces game-based security definitions and recalls notation; and the appendices define cryptographic primitives and relevant security definitions (Appendix A) and present further supplementary material. (Readers familiar with games might like to skip Sidebar 1, and some readers might like to study the related work before our definition of ballot secrecy.)
Preliminaries: Games and notation
Election scheme syntax
We recall syntax (Definition 1) for voting systems that consist of the following three steps. First, a tallier generates a key pair. Secondly, each voter constructs and casts a ballot for their vote. These ballots are collected and recorded on a bulletin board. Finally, the tallier tallies the collected ballots and announces the outcome as a frequency distribution of votes. The chosen representative is derived from this distribution, e.g., as the candidate with the most votes.5
Smyth, Frink & Clarkson use the syntax to model first-past-the-post voting systems [128] and Smyth shows ranked-choice voting systems can be modelled too [118].
An election scheme is a tuple of probabilistic polynomial-time algorithmssuch that:
, denoted, is run by the tallier. The algorithm takes a security parameter κ as input and outputs a key pair, a maximum number of ballots, and a maximum number of candidates.
, denoted, is run by voters. The algorithm takes as input a public key, a voter’s vote v, some number of candidates, and a security parameter κ. Vote v should be selected from a sequenceof candidates. The algorithm outputs a ballot b or error symbol ⊥.
, denoted, is run by the tallier. The algorithm takes as input a private key, a bulletin board, some number of candidates, and a security parameter κ, whereis a set. The algorithm outputs an election outcomeand a non-interactive tallying proof, whereis a vector of lengthand each index v of that vector should indicate the number of votes for candidate v.
Election schemes must satisfy correctness, that is, there exists a negligible function, such that for all security parameters κ, integersand, and votes, it holds that, given a zero-filled vectorof length, we have:
The syntax provides a language to model voting systems and the correctness condition ensures that such systems function, i.e., election outcomes correspond to votes expressed in ballots, when ballots are constructed and tallied in the prescribed manner.
The syntax focuses on minimalism, rather than generality: Algorithm naturally inputs a security parameter and outputs a key pair. In addition, the algorithm outputs bounds on the number of ballots , respectively candidates . These bounds broaden the correctness definition’s scope. Indeed, requires to be less than or equal to the size of the underlying encryption scheme’s message space (otherwise decryption might not reveal voters’ votes). Helios additionally requires the same constraint on (otherwise decryption of the homomorphic combination might not reveal the outcome). Algorithm naturally inputs a public key, a vote, and a security parameter, and outputs a ballot. The vote is expressed as an integer, rather than alphanumeric strings, for brevity. Beyond those inputs, the algorithm inputs a number of candidates , which is necessary in voting systems such as Helios, because ballot construction depends on the number of candidates. Tallying is similarly dependent on the number of candidates in Helios, hence the inputs and outputs to algorithm are all natural. Finally, the syntax restricts bulletin boards to sets, rather than multisets or lists. This is a limitation: Sets preclude the construction of schemes vulnerable to attacks that arise due to duplicate ballots [21, §2.1 & §4.3]. Systems vulnerable to such attacks cannot be modelled using the syntax: Analysts must not abstract away the details of lists or multisets and model them as sets, since any ensuing analysis will miss attacks. Analysts may abstractly model lists or multisets as sets with some additional effort.
Election schemes may also include an algorithm , which is used to audit an election. We omit that algorithm from Definition 1, because we focus on ballot secrecy, rather than verifiability: Ballot secrecy must be upheld independently of auditing, since voters’ votes should not be revealed regardless of whether an election outcome is correct (i.e., regardless of whether auditing succeeds). Hence, algorithm must not be used to achieve privacy and can be omitted. Nonetheless, algorithm must output the tallying proof (that would be input to algorithm ), since tallying proofs can harm privacy. (For instance, as an extreme example, a tallying proof may include the private key, which can used to violate every voter’s privacy.)
Voting systems must ensure that outcomes only include votes cast by voters, as opposed to non-voters, and that only one vote of each voter has influence [93]. The former can be achieved by authentication. Traditionally, the latter was achieved by permitting each voter to cast at most one ballot, whereas more recent systems permit multiple ballots and count only the last. Our syntax is compatible with voting systems, such as Helios, that rely on trusted external authentication services to ensure that collected ballots satisfy these properties (i.e., collected ballots were cast by voters and contain at most one ballot per voter), hence, election schemes need not achieve these properties directly. (An extension of the syntax is compatible with voting systems that introduce voter credentials and use cryptography to achieve these properties directly [107,117,128].) Here be dragons: The security of external authentication services must be verified.
We will use our syntax to express a privacy property of election schemes, moreover, we will model and analyse voting systems, including Helios (§4) and Helios Mixnet (§6). Beyond those systems, it also captures Helios-C [43] and the system by Juels, Catalano & Jakobsson [77] (once extended to include voter credentials), so Belenios and Civitas should be included as well. These schemes are rather dominant in the literature, so the class is interesting and rather general. Notable voting systems that are excluded include: systems relying on features implemented with paper (e.g., [34,37,97]); systems which require partially private ballots (e.g., [96]); and schemes relying on partially honest bulletin boards (e.g., [41]). We also exclude distributed tallying. These limitations are further discussed in Section 7.
Privacy
Some scenarios inevitably reveal voters’ votes: Unanimous outcomes reveal how everyone voted and, more generally, outcomes can be coupled with partial knowledge of voters’ votes to deduce voters’ votes. For example, suppose Alice, Bob and Mallory participate in a referendum and the outcome has frequency two for ‘yes’ and one for ‘no.’ Mallory and Alice can deduce Bob’s vote by pooling knowledge of their own votes. Similarly, Mallory and Bob can deduce Alice’s vote. Furthermore, Mallory can deduce that Alice and Bob both voted yes, if she voted no. For simplicity, our informal definition of ballot secrecy (§1) deliberately omitted side-conditions which exclude these inevitable revelations and which are necessary for satisfiability.6
Voting systems that announce chosen representatives (e.g., [13,56,73,74]), rather than frequency distributions of votes, could offer stronger notions of privacy.
We now refine that definition as follows:
A voter’s vote is not revealed to anyone, except when the vote can be deduced from the election outcome and any partial knowledge of voters’ votes.
This refinement ensures the aforementioned examples are not violations of ballot secrecy. By comparison, if Mallory votes yes and she can deduce the vote of Alice, without knowledge of Bob’s vote, then ballot secrecy is violated.
We could formulate ballot secrecy as the following game: First, the adversary picks a pair of votes and . Secondly, the challenger constructs a ballot for vote and a second ballot for , where β is a bit chosen uniformly at random. Those ballots are given to the adversary. Thirdly, the adversary constructs ballots . Fourthly, the challenger tallies all the ballots (i.e., ) to the determine the election outcome, which the adversary is given. Finally, the adversary is tasked with determining bit β. This game challenges the adversary to determine if the first ballot is for and the second is for , or vice-versa. Intuitively, a losing adversary cannot distinguish ballots; seemingly suggesting that Alice voting ‘yes’ is indistinguishable from Bob voting ‘no.’
The first release of Helios is not secure with respect to the aforementioned game, due to a vulnerability identified by Cortier & Smyth [46,47]. Indeed, an adversary can observe a ballot constructed by the challenger, compute a meaningfully related ballot (from a malleable Helios ballot), and exploit the relation to win the game. This vulnerability can be attributed to tallying meaningfully related ballots; omitting such ballots from tallying, i.e., ballot weeding, is postulated as a defence [16,17,46,47,119,125,127]. Variants of Helios with ballot weeding seem secure with respect to this game. Unfortunately, ballot weeding mechanisms can be subverted by intercepting ballots or by re-ordering ballots. Given that current definitions cannot detect such vulnerabilities (§8), we should conclude that they are unsuitable. Indeed, the challenger tallying all ballots introduces an implicit trust assumption: ballots are recorded-as-cast, i.e., cast ballots are preserved with integrity through the ballot collection process.7
The recorded-as-cast notion was introduced by Adida & Neff [3, §2].
Thus, vulnerabilities that manipulate the ballot collection process cannot be detected, including vulnerabilities that can be exploited to distinguish Alice voting ‘yes’ from Bob voting ‘no.’ To overcome this shortcoming, we formulate a new definition of ballot secrecy in which the adversary controls the ballot collection process, i.e., the bulletin board and the communication channel.
Ballot secrecy
We formalise ballot secrecy (Definition 2) as a game that tasks the adversary to: select two lists of votes; construct a bulletin board from ballots for votes in one of those lists, which list is decided by a coin flip; and (non-trivially) determine the result of the coin flip from the resulting election outcome and tallying proof. That is, the game tasks the adversary to distinguish between an instance of the voting system for one list of votes, from another instance with the other list of votes, when the votes cast from each list are permutations of each other (hence, the distinction is non-trivial). The game proceeds as follows: The challenger generates a key pair (Line 1), the adversary chooses some number of candidates (Line 2), and the challenger flips a coin (Line 3) and initialises a set to record lists of votes (Line 4). The adversary computes a bulletin board from ballots for votes in one of two possible lists (Line 5), where the lists are chosen by the adversary, the choice between lists is determined by the coin flip, and the ballots (for votes in one of the lists) are constructed by an left-right oracle (further ballots may be constructed by the adversary).8
Bellare et al. introduced left-right oracles in the context of symmetric encryption [6] and Bellare & Rogaway provide a tutorial on their use [9].
The challenger tallies the bulletin board to derive the election outcome and tallying proof (Line 6), which are given to the adversary and the adversary is tasked with determining the result of the coin flip (Line 7 & 8).
().
Letbe an election scheme,be an adversary, κ be a security parameter, andbe the following game.
Predicateand oracleare defined as follows:
holds if for all voteswe have; and
computesand outputs b, where.
We say Γ satisfies, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
An election scheme satisfies when algorithm outputs ballots that do not reveal votes and algorithm outputs election outcomes and proofs that do not reveal the relation between votes expressed in collected ballots and the outcome.
Game tasks the adversary to compute a bulletin board, from ballots constructed by a left-right oracle for votes in one of two possible lists, and determine which list was used from the election outcome and proof generated from tallying that board. The choice between lists is determined by the result β of a coin flip, and the left-right oracle outputs a ballot for vote on input of a pair of votes . Hence, the left-right oracle constructs ballots for votes in one of two possible lists, where the lists are chosen by the adversary, and the bulletin board may contain those ballots in addition to ballots constructed by the adversary.
Election schemes reveal the number of votes for each candidate (i.e., the election outcome). Hence, to avoid trivial distinctions in game , we require that runs of the game are balanced: “left” and “right” inputs to the left-right oracle are equivalent, when the corresponding outputs appear on the bulletin board. For example, suppose the inputs to the left-right oracle are and the corresponding outputs are , further suppose the bulletin board is such that . That game is balanced if the “left” inputs are a permutation of the “right” inputs . The balanced condition prevents trivial distinctions.9
A weaker balanced condition might be sufficient for alternative formalisations of election schemes. For instance, voting systems which only announce the winning candidate could be analysed using a balanced condition asserting that the winning candidate was input on both the “left” and “right.”
For instance, an adversary that computes a bulletin board containing only the ballot output by a left-right oracle query with input cannot win the game, because it is unbalanced. Albeit, that adversary could trivially determine whether or , given the tally of that board.
Intuitively, if the adversary wins game , then there exists a strategy to distinguish ballots. Indeed, such an adversary can distinguish between an instance of the voting system in which voters cast some votes, from another instance in which voters cast a permutation of those votes, thus, voters’ votes are revealed. Otherwise, the adversary is unable to distinguish between a voter casting a ballot for vote and another voter casting a ballot for vote , hence, voters’ votes cannot be revealed.
Proving ballot secrecy is time consuming. Indeed, a proof for the simple scheme consumes around four and a half pages [108, Appendix C.6]. To reduce the expense of such proofs, we introduce ballot independence (§3.2) and prove that it suffices for (§3.3). Using this sufficient condition, the four and a half page proof can be reduced to around one page [120, §4.3].
Ballot independence
Ballot independence [39,47,62] is seemingly related to ballot secrecy.
Ballot independence. Observing another voter’s interaction with the voting system does not allow a voter to cast a meaningfully related vote.
Our informal definition essentially states that an adversary is unable to construct a ballot meaningfully related to a non-adversarial ballot, i.e., ballots are non-malleable. Hence, we can formalise ballot independence as a straightforward adaptation of the non-malleability definition for asymmetric encryption by Bellare & Sahai [10].10
Non-malleability was first formalised by Dolev, Dwork & Naor in the context of asymmetric encryption [57,58]; the definition by Bellare & Sahai builds upon their results and results by Bellare et al. [7].
Such a formalisation captures an intuitive notion of ballot independence, but it is complex and proofs of non-malleability are relatively difficult. Bellare & Sahai observe similar complexities and show that their definition is equivalent to a simpler, indistinguishability notion. In a similar direction, we derive a definition of ballot independence, called indistinguishability under chosen vote attack (), as a straightforward adaptation of their indistinguishability notion for asymmetric encryption.
().
Letbe an election scheme,be an adversary, κ be the security parameter, andbe the following game.
We say Γ satisfies indistinguishability under chosen vote attack (), if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
Game is satisfied if the adversary cannot determine whether the challenge ballot b is for one of two possible votes and . In addition to the challenge ballot, the adversary is given the election outcome derived by tallying a bulletin board computed by the adversary. To avoid trivial distinctions, the adversary’s bulletin board should not contain the challenge ballot. Intuitively, the adversary wins if there exists a strategy to construct related ballots, since this strategy enables the adversary to construct a ballot , related to the challenge ballot b, and determine if b is for or from the outcome derived by tallying a bulletin board containing .
Comparingand. The main distinction between indistinguishability for asymmetric encryption () and indistinguishability for election schemes () is as follows: performs a parallel decryption, whereas performs a single tally. Hence, indistinguishability for encryption reveals plaintexts corresponding to ciphertexts, whereas indistinguishability for elections reveals the number of votes for each candidate.
We present an alternative definition of ballot independence (Appendix B), based upon the definition of non-malleability for asymmetric encryption by Bellare & Sahai, and prove that the definition is equivalent to .
Secrecy and independence coincide (for zero-knowledge tallying proofs)
The main distinctions between our ballot secrecy () and ballot independence () games are as follows.
The challenger produces one challenge ballot for the adversary in game , whereas the left-right oracle produces arbitrarily many challenge ballots for the adversary in game .
The adversary in game has access to a tallying proof, but the adversary in game does not.
The winning condition in game requires the bulletin board to be balanced, whereas the bulletin board must not contain the challenge ballot in game .
The second point distinguishes our games and shows is at least as strong as . Hence, non-malleable ballots are necessary in election schemes satisfying . (Non-malleable ballots are not generally necessary: Privacy definitions are sound but incomplete, Section 7.)
().
Given an election scheme Γ satisfying, we have Γ satisfies.
A proof of Theorem 1 and all further proofs, except where otherwise stated, appear in Appendix C.
Tallying proofs may reveal voters’ votes. For example, a variant of might define tallying proofs that map ballots to votes. Since proofs are available to the adversary in game , but not in game , it follows that is strictly stronger than .
().
An election scheme may satisfy, but not.
Proposition 2 follows from our informal reasoning and we omit a formal proof.
Game is generally (strictly) stronger than game . Nonetheless, we show that our games coincide for election schemes without tallying proofs (Definition 4), assuming tallying is additive (Definition 5), that is, the sum of election outcomes derived by tallying distinct subsets of a bulletin board is equivalent to the election outcome derived by tallying the union of those subsets.
An election schemeis without tallying proofs, if there exists a constant symbol ϵ such that for all private keys, sets, integers, security parameters κ, and computations, we have.
().
Letbe an election scheme,be an adversary, κ be a security parameter, andbe the following game.
We say Γ satisfies, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
(, without proofs).
Let Γ be an election scheme without tallying proofs. Suppose Γ satisfies. We have Γ satisfiesiff Γ satisfies.
Our equivalence result generalises to election schemes with zero-knowledge tallying proofs (Definition 19), i.e., schemes that compute proofs using non-interactive zero-knowledge proof systems.
(, with ZK proofs).
Let Γ be an election scheme with zero-knowledge tallying proofs. Suppose Γ satisfies. We have Γ satisfiesiff Γ satisfies.
Game computes the election outcome from ballots constructed by the oracle and ballots constructed by the adversary. Intuitively, such an outcome can be equivalently computed as follows:
Yet, a poorly designed tallying algorithm might not ensure equivalence. In particular, ballots constructed by the adversary can cause the algorithm to behave unexpectedly. (Such algorithms are nonetheless compatible with our correctness requirement, because correctness does not consider an adversary.) Our property ensures equivalence. Moreover, our property ensures the above computation is equivalent to the following:
Furthermore, by correctness of the election scheme, the above for-loop can be equivalently computed as follows:
Indeed, for each , we have b is an output of , hence, outputs such that is a zero-filled vector, except for index which contains one, and this suffices to ensure equivalence. In addition, for any adversary that wins game , we are assured that holds, hence, the above for-loop can be computed as
or
without weakening the game. Thus, perhaps surprisingly, tallying ballots constructed by the oracle does not provide the adversary with an advantage (in determining whether or ) and we can omit such ballots from tallying in game . Thus, game is equivalent to game (Definition 20), which modifies the tallying procedure as described and simulates tallying proofs. Thereafter, we proceed with a hybrid argument (for which Shoup presents a brief tutorial [114]). □
Additivity is implied by universal verifiability (Lemmata 7 & 27). Thus, a special case of Theorem 4 requires the election scheme to satisfy universal verifiability, which is useful to simplify its application. Indeed, we exploit this result in the following section to prove .
Case study I: Helios
Helios can be informally modelled as the following election scheme (further details appear in Sidebar 2):
generates a key pair for an asymmetric additively-homomorphic encryption scheme, proves correct key generation in zero-knowledge, and outputs the key pair and proof.
enciphers the vote’s bitstring encoding to a tuple of ciphertexts, proves in zero-knowledge that each ciphertext is correctly constructed and that the vote is selected from the sequence of candidates, and outputs the ciphertexts coupled with the proofs.
selects ballots from the bulletin board for which proofs hold, homomorphically combines the ciphertexts in those ballots, decrypts the homomorphic combination to reveal the election outcome, and announces the outcome, along with a zero-knowledge proof of correct decryption.
Helios was first released in 2009 as Helios 2.0,11
https://github.com/benadida/helios/releases/tag/2.0, released 25 Jul 2009, accessed 29 Mar 2019.
https://github.com/benadida/helios-server/releases/tag/v3.1.4, released 10 Mar 2011, last patched 27 Oct 2017, accessed 29 Mar 2019.
Helios: Ballot construction and tallying
Helios 2.0 & Helios 3.1.4
Cortier & Smyth show that Helios 2.0 does not satisfy ballot secrecy (§3) and neither does Helios 3.1.4.13
Helios 3.1.4 mitigates against a universal-verifiability vulnerability in Helios 2.0, by checking that tallied ballots are constructed from suitable cryptographic parameters [33, §4.1]. The vulnerabilities described herein use well-formed parameters, hence, the additional checks do not preclude vulnerabilities and we refer the reader to the original description for details.
Thus, we would not expect our definition of ballot secrecy to hold. Indeed, we adopt formal descriptions of Helios 2.0 and Helios 3.1.4 by Smyth, Frink & Clarkson [128] (Appendix D) and use those descriptions to prove that is not satisfied.
Neither Helios 2.0 nor Helios 3.1.4 satisfy.
Cortier & Smyth attribute the vulnerability to tallying meaningfully related ballots. Indeed, Helios uses malleable ballots: Given a ballot , we have is a ballot for all permutations χ on . Thus, ballots are malleable, which is incompatible with (§3.3).
Suppose an adversary queries the left-right oracle with (distinct) inputs to derive a ballot for , where integer is chosen by the adversary and bit β is chosen by the challenger. Further suppose the adversary picks a permutation χ on , abuses malleability to derive a related ballot b for , and outputs bulletin board . The board is balanced, because it does not contain the ballot output by the oracle. Suppose the adversary performs the following computation on input of election outcome : if , then output 0, otherwise, output 1. Since b is a ballot for , it follows by correctness that iff , and iff , hence, the adversary wins the game. □
For simplicity, our proof sketch considers an adversary that omits ballots from the bulletin board. Voters might detect such an adversary, because Helios satisfies individual verifiability, hence, voters can discover if their ballot is omitted. Detection does not invalidate Theorem 5, since the ability to detect an attack after the fact does not eliminate the possibility of an attack. Our proof sketch can be extended to avoid such detection: Let be the ballot output by the left-right oracle in the proof sketch and suppose is the ballot output by a (second) left-right oracle query with inputs and . Further suppose the adversary outputs (the balanced) bulletin board and performs the following computation on input of election outcome : if corresponds to votes , then output 0, otherwise, output 1, where χ is the permutation chosen by the adversary. Hence, the adversary wins the game.
Notions of ballot secrecy used by Bernhard, Pereira & Warinschi [19], Bernhard [15, §6.11] and Bernhard et al. [17, §D.3] cannot detect the known Helios 2.0 vulnerability (in the presence of an adversary that controls ballot collection), because interception is not possible when ballots are recorded-as-cast.14
This observation suggests that recorded-as-cast is unsatisfiable: An adversary that can intercept ballots can always prevent the collection of ballots. Nevertheless, the definition of recorded-as-cast is informal, thus ambiguity should be expected and some interpretation of the definition should be satisfiable.
Beyond ballot secrecy, Bernhard, Pereira & Warinschi show that Helios 3.1.4 does not satisfy universal verifiability [19].15
Beyond secrecy and verifiability, eligibility is not satisfied [93,131,132].
They attribute vulnerabilities to application of the Fiat-Shamir transformation without inclusion of statements in hashes (i.e., weak Fiat-Shamir), and propose including statements in hashes (i.e., applying the Fiat-Shamir transformation) as a defence.
Helios’16
We have seen that non-malleable ballots are necessary for (§3.3); future Helios releases should adopt non-malleable ballots. The Fiat-Shamir transformation alone is insufficient to ensure non-malleability, because permutations can be applied to a ballot’s ciphertexts: An ordering over ciphertexts must be proved.16
I do not recall the exact origin of this idea: Email communication suggests both I (17 Dec 2010) and Olivier Pereira (27 Dec 2010) each independently conceived the need for a proven ordering over ciphertexts.
Smyth, Frink & Clarkson formalise this idea in Helios’16 [128], a variant of Helios 3.1.4 that uses the Fiat-Shamir transformation and includes a ciphertext’s position (relative to other ciphertexts) in hashes, which is intended, but not proven, to ensure non-malleable ballots. We recall their formal description in Appendix D, and using that formalisation we prove that Helios’16 delivers secrecy.
Helios’16 satisfies.
We prove that Helios’16 has zero-knowledge tallying proofs and, since universal verifiability is satisfied [128], we have too (Lemmata 7 & 27). Hence, by Theorem 4, it suffices to show that Helios’16 satisfies , which we prove by reduction to the security of the underlying encryption scheme, using an extractor that exists for the proof system used to construct ballots. □
A formal proof of Theorem 6 appears in Appendix D.1, assuming the random oracle model [8]. This proof, coupled with the proof of verifiability by Smyth, Frink & Clarkson [128], provides strong motivation for future Helios releases being based upon Helios’16, since it is the only variant of Helios which is proven to satisfy both ballot secrecy and verifiability.17
Earlier versions of Helios have been shown to satisfy definitions of ballot secrecy by Bernhard et al., but not notions of verifiability (the analysis by Küsters et al. [87] does not detect vulnerabilities identified by Bernhard et al. [19] and Chang-Fong & Essex [33], possibly because their analysis “does not formalize all the cryptographic primitives used by Helios” [128, §9]).
A new release of Helios, which we’ll call Helios 4.0, has been long-planned.18
https://web.archive.org/web/20171026064140/http://documentation.heliosvoting.org/verification-specs/helios-v4, published c. 2012, accessed 29 Mar 2019.
That version goes beyond the idea of merely proving an ordering over ciphertexts, to include far more information in hashes, which should be useful when sharing keys between elections (to prevent ballots from one election being cast in another, which could violate ballot secrecy). Security results are summarised in Table 1. Once Helios 4.0 is finalised, future work could consider whether our ballot secrecy proof and verifiability proofs by Smyth, Frink, & Clarkson can be adapted to that scheme.
Summary of Helios security results
Helios 2.0
Helios 3.1.4
Helios’16
Helios 4.0
Secrecy
✗
✗
✓
?
Verifiability
✗
✗
✓
?
Cortier & Smyth identify a secrecy vulnerability in Helios 2.0 and Helios 3.1.4 [47]. Bernhard, Pereira & Warinschi [19] and Bernhard et al. [17, §D.3] show that Helios 4.0 satisfies various notions of ballot secrecy in two candidate elections – a general result is unknown. We have proved that Helios’16 satisfies ballot secrecy (Theorem 6). Bernhard, Pereira & Warinschi identify universal-verifiability vulnerabilities in Helios 2.0 and Helios 3.1.4 [19] and Chang-Fong & Essex identify vulnerabilities in Helios 2.0 [33]. Smyth, Frink, & Clarkson prove that Helios’16 satisfies individual and universal verifiability.
Simplifying ballot-secrecy proofs
We have seen that our definitions of ballot secrecy and ballot independence coincide when tallying is additive and tallying proofs are zero-knowledge (Theorem 4). Building upon this result and Proposition 8, we show that tallying cannot harm secrecy when ballots are tallied correctly and tallying proofs are zero-knowledge. That is, satisfies if and only if does, assuming algorithms and both tally ballots correctly and tallying proofs are zero-knowledge.19
A more general result also holds: satisfies iff satisfies , assuming algorithms and are indistinguishable, in particular, they tally ballots in the same way. However, election schemes that tally ballots incorrectly are not useful, so we forgo generality for practicality.
Smyth, Frink & Clarkson capture the notion of tallying ballots correctly using function [128]. That function uses a counting quantifier: A predicate that holds exactly when there are ℓ distinct values for x such that is satisfied [113].20
Variable x is bound by the quantifier and integer ℓ is free.
Using the counting quantifier, function is defined such that iff , where is a vector of length and . Hence, component v of vector equals ℓ iff there exist ℓ ballots for vote v on the bulletin board. The function requires ballots be interpreted for only one candidate, which can be ensured by injectivity.
().
An election schemesatisfies honest-key injectivity (), if for all probabilistic polynomial-time adversaries, security parameters κ and computationssuch that, we have.
Equipped with notions of injectivity and of tallying ballots correctly, we formalise a soundness condition asserting that an election scheme tallies ballots correctly (Definition 7), which allows us to formally state that tallying cannot harm ballot independence (Proposition 8).
().
Letbe an election scheme,be an adversary, κ be a security parameter, andbe the following game.
We say Γ satisfies tally soundness (), if Γ satisfiesand for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
implies.
Letandbe election schemes. Suppose Γ andsatisfy. We have Γ satisfiesiffsatisfies.
Tally soundness assures us that algorithms and produce indistinguishable election outcomes, thus they are interchangeable in the context of game . □
It follows from Proposition 8 that tally soundness suffices for ballot independence of scheme , if there exists an algorithm such that is an election scheme satisfying tally soundness and ballot independence. We demonstrate the existence of such an algorithm with respect to election scheme ,21
Our presentation of extends the presentation by Quaglia & Smyth [108, Definition 7] to make the plaintext space explicit. We also embed the public key inside the private key. (Quaglia & Smyth’s formalisation of builds upon constructions by Bernhard et al. [18,20,125,126].)
thereby showcasing the applicability of Proposition 8 for a class of encryption-based election schemes.
().
Given an asymmetric encryption scheme, we definesuch that:
computes, derivesas the largest integer such thatand for allwe have, and outputs, where p is a polynomial function.
parsesas pair, outputting ⊥ if parsing fails or, computes, and outputs b.
initialisesas a zero-filled vector of length, parsesas pair, outputtingif parsing fails, computesfordoifthen, and outputs, where ϵ is a constant symbol.
To ensure is an election scheme, we require asymmetric encryption scheme Π to produce distinct ciphertexts with overwhelming probability [120, Lemma 3]. Hence, we must restrict the class of asymmetric encryption schemes used to instantiate . We consider a broad class of schemes that produce distinct ciphertexts with overwhelming probability.
Given an asymmetric encryption scheme Π satisfying, we haveis an election scheme. Moreover, if Π has perfect correctness, thensatisfies.
A proof of Lemma 9 follows from Smyth’s correctness proof [120, Lemma 4] and Quaglia & Smyth’s proof of a slightly stronger notion of [108, Lemma 2].
Intuitively, given a non-malleable asymmetric encryption scheme Π, election scheme derives ballot secrecy from Π until tallying and tallying maintains ballot secrecy by returning only the number of votes for each candidate. Smyth presents a formal proof of ballot secrecy [120, Proposition 5], hence, ballot independence is satisfied too (Theorem 1).
Given an asymmetric encryption scheme Π satisfying, we havesatisfies.
The reverse implication of Corollary 10 does not hold. Indeed, we have the following (stronger) result.
There exists an asymmetric encryption scheme Π such thatsatisfies, but Π does not satisfy.
To capitalise on Proposition 8, we demonstrate that produces election schemes satisfying tallying soundness (Lemma 12), assuming “ill-formed” ciphertexts are distinguishable from “well-formed” ciphertexts, and combine our results to derive Theorem 13.
Given an asymmetric encryption scheme, we say Π satisfies well-definedness, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
demands that every counted ballot be output by algorithm , i.e., only “well-formed” ballots are counted, “ill-formed” ballots are not. Election scheme defines ballots as ciphertexts, hence, when Π satisfies well-definedness, we are assured that only “well-formed” ballots are counted, as demands.
Given a perfectly-correct asymmetric encryption scheme Π satisfying well-definedness and, we havesatisfies.
Let Π be an asymmetric encryption scheme,, andfor some algorithmsuch that Γ is an election scheme with zero-knowledge tallying proofs. Suppose Π is perfectly correct and satisfiesand well-definedness. Further suppose Γ satisfies. We have Γ satisfies.
Election scheme satisfies (Lemma 12) and (Corollary 10). Thus, Γ satisfies (Proposition 8) and (Theorem 4 & Lemma 7). □
We show that tally soundness is implied by universal verifiability in Appendix E. Thus, a special case of Theorem 13 requires universal verifiability rather than tally soundness. It follows that is satisfied by verifiable election schemes that produce ballots by encrypting votes with asymmetric encryption schemes satisfying well-definedness and . Thereby making proofs of ballot secrecy trivial for a class of encryption-based election schemes. Indeed, we exploit this result in the following section to show that the combination of non-malleable encryption and universal verifiability achieve ballot secrecy.
Case study II: Helios Mixnet
Helios Mixnet can be informally modelled as the following election scheme:
generates a key pair for an asymmetric homomorphic encryption scheme, proves correct key generation in zero-knowledge, and outputs the key pair and proof.
enciphers the vote to a ciphertext, proves correct ciphertext construction in zero-knowledge, and outputs the ciphertext coupled with the proof.
selects ballots from the bulletin board for which proofs hold, mixes the ciphertexts in those ballots, decrypts the ciphertexts output by the mix to reveal the election outcome (i.e., the frequency distribution of votes), and announces that outcome, along with zero-knowledge proofs demonstrating correct decryption.
Neither Adida [1] nor Bulens, Giry & Pereira [30] have released an implementation of Helios Mixnet.22
The planned implementation of Helios Mixnet (https://web.archive.org/web/20160912182802/https://documentation.heliosvoting.org/verification-specs/mixnet-support, published c. 2010, accessed 29 Mar 2019, & https://web.archive.org/web/20110119223848/http://documentation.heliosvoting.org/verification-specs/helios-v3-1, published Dec 2010, accessed 29 Mar 2019) has not been released.
Tsoukalas et al. [136] released Zeus as a fork of Helios spliced with mixnet code to derive an implementation,23
https://github.com/grnet/zeus, accessed 29 Mar 2019.
and Yingtong Li released helios-server-mixnet as an extension of Zeus with threshold asymmetric encryption and some other minor changes.24
https://github.com/RunasSudo/helios-server-mixnet, accessed 29 Mar 2019.
The problem of malleable Helios ballots (§4) was discussed with the developers of Zeus and helios-server-mixnet, and they explained that their systems use non-malleable ballots (email communication, Oct & Dec 2017).
We can derive Helios Mixnet from by replacing its tallying algorithm, and by using an asymmetric encryption scheme , where algorithm proves correct key generation, and algorithm verifies such proofs, enciphers plaintexts to ciphertexts using a second encryption scheme, proves correct ciphertext construction, and outputs the ciphertext coupled with the proof. However, a blight arises when is instantiated with encryption schemes that prove correct key generation.26
Helios Mixnet defines public keys as triples comprising a public key and message space defined by the underlying asymmetric encryption scheme, along with a proof of correct key generation. By comparison, defines public keys as pairs comprising a public key and message space defined by the underlying asymmetric encryption scheme (wherein the public key defined by the encryption scheme incorporates some proof of correct key generation). Hence, cannot be instantiated to immediately derive Helios Mixnet – we have a slight mismatch of parameters, a minor blight.
To avoid this blight, we extend with such proofs and show that results in Section 5 still hold (Appendix F). This leads us to treat Helios Mixnet as an election scheme built from asymmetric encryption schemes and such that:
selects coins s uniformly at random, computes and a proof ρ of correct key generation using and s as the witness, derives as the largest integer such that , computes , and outputs , where p is a polynomial function.
parses as a vector , outputting ⊥ if parsing fails, ρ does not verify, , or , computes , and outputs b.
where
selects coins r uniformly at random, computes and a proof σ of correct ciphertext construction using v and r as the witness, and outputs .
parses b as a pair , outputting ⊥ if parsing fails or σ does not verify, computes , and outputs v.
It follows that our results (§5) can be applied to trivialise a ballot-secrecy proof: It is known that Π is a non-malleable encryption scheme [19, Theorem 2], assuming the proof system used by algorithm satisfies simulation sound extractability and satisfies . Moreover, we have Π satisfies well-definedness, by the former assumption. Furthermore, Smyth has shown that universal verifiability is satisfied [116], hence, is satisfied too. Thus, is satisfied. Thereby providing evidence that our results do indeed make ballot-secrecy proofs trivial.
To formally state our ballot secrecy result, we adopt a set HeliosM’17 of election schemes that includes Helios Mixnet and prove ballot secrecy for every scheme in that set.
Each election scheme in set HeliosM’17 satisfies.
A proof of Theorem 14 along with a definition of HeliosM’17 appear in Appendix G.
Discussion, limitations, and directions for further research
This article advances our understanding of ballot secrecy, establishing a foundation for discussion, debate, and development, especially in terms of the following limitations.
Authentication, re-voting, and unforgeability. Voting systems have traditionally permitted voters to cast at most one ballot. More recent systems permit multiple ballots [2,64,77,91,93,106,117], with only the voter’s last having influence, enabling voters to change their vote, providing flexibility and aiding education (since voters can “ask the help of anyone for submitting a random ballot, and then re-voting privately afterwards” [2, §3.3]). Election schemes are reliant on external authentication services to ensure that only the last ballot of each voter has influence. (E.g., Helios supports authentication via Facebook, Google and Yahoo using OAuth [93].) Such services are assumed to be trusted, they are not intended to exclude attacks that arise when services are subverted (to authenticate non-voter ballots or to assert a ballot other than a voter’s last should have influence, for instance). Evaluating whether trust is merited (including determining whether external authentication services ensure that only the last choice of each voter has influence) is beyond the scope of our privacy definitions. Definitions could be extended with an ideal authentication service and external authentication services could be proven equivalent. Ultimately, a reliance on external authentication services introduces a trust assumption. That assumption is eliminated by voting systems that use cryptography to implement their own authentication mechanisms, rendering authorised ballots unforgeable. (E.g., the voting system by Juels, Catalano & Jakobsson uses a combination of encrypted nonces and plaintext equality tests for authentication [77].) Extending definitions to include voting systems with their own cryptography-based authentication mechanisms and considering the interplay between privacy and re-voting, without trusting an authentication service, would be an interesting direction for further research. The aforementioned extensions necessitate changes to our balanced condition such that only the last choice of each voter is considered. This could be achieved by keeping track of the number of ballots cast by each voter, for example, could compute , where is a voter identifier, b is the constructed ballot, and , i.e., the number n of ballots previously cast with identifier . And by applying predicate to a set containing only voters’ last votes, for instance, using on the final line of game . Further investigation of the details would be prudent.
Ballot secrecy notions and interplay with individual verifiability. We know some scenarios inevitably reveal voters’ votes, which is why an exception is included in our informal definition of ballot secrecy (a voter’s vote is not revealed to anyone, except when the vote can be deduced from the election outcome and any partial knowledge of voters’ votes).27
Some revelations are an artefact of announcing the outcome as a frequency distribution of votes (a functional requirement of many nations, which comes at a privacy cost), rather than revealing less information, e.g., just the winning candidate [13,56,74].
That exception tolerates revelations in the following example, namely, Alice, Bob and Mallory participate in a referendum, Mallory (who controls ballot collection) discards Bob’s ballot, and the outcome has frequency one for each of ‘yes’ and ‘no,’ allowing Mallory to deduce Alice’s vote. Such revelations are undesirable, but are tolerated by many voting systems and our definition of ballot secrecy. It is open to debate as to whether such voting systems should be branded secret and whether my definition is sound. (I believe so: My definition should only tolerate revelations deducible from outcomes and partial knowledge of votes. As I’ve asserted, it is open to debate as to whether such tolerance is too broad.) Individual verifiability allows voters to check whether their ballots are collected, allowing detection of some troublesome scenarios. Checks cannot, in themselves, preclude revelations. (Indeed, Bob discovering their ballot is absent, does not preclude revelation of Alice’s vote.) Additional properties are necessary. The ability to attribute malice to a particular party (cf. accountability [86]) and to recover from such malice may suffice. (Demanding inclusion of Bob’s ballot can avoid revelation of Alice’s vote.) However, even with additional properties, there is a reliance on voters performing checks, which few voters do [22, §2.1.6]. Regardless, ballot secrecy should be delivered without regard for privilege, without dependence on actions few are willing and able to perform. Future research may consider such possibilities. Demanding delegatable individual-verifiability checks may provide a fruitful advancement: Envisage voters leaving polling stations and handing over material for checks to voting advocates, for instance.
Distributed tallying. Ballot secrecy does not provide assurances when deviations from the prescribed tallying procedure are possible. Indeed, ballots can be tallied individually to reveal votes. Hence, the tallier must be trusted. Consequently, an election scheme that leaks the ballot-vote relation during tallying can satisfy ballot secrecy, because a trusted tallier will not disclose mappings. E.g., construction produces election schemes satisfying ballot secrecy, despite revealing such a map during tallying. Additionally, the tallier cannot collude with the adversary, in particularly, they cannot post to the bulletin board. We can design election schemes that distribute the tallier’s role amongst several talliers and ensure free-choice assuming at least one tallier tallies ballots in the prescribed manner, other talliers can collude with the adversary. Extending our results in this direction is an opportunity for further research; as it stands, the definition is limited. This is a design decision: Distributed tallying adds complexity, increasing the possibility of error; getting the “right” ballot-secrecy definition for a single tallier seems the safer, preferable first step. Ultimately, we would prefer not to trust talliers. Unfortunately, this is only known to be possible for decentralised voting systems, e.g., [66,71,80–82,112], which are designed such that ballots cannot be tallied individually, but are unsuitable for large-scale elections.
Privacy definitions are incomplete: Controlled malleability is tolerable. We have seen that tallying meaningfully related ballots introduces a vulnerability that can be exploited to violate secrecy. Non-malleable ballots serve as a solution and are necessary in election schemes satisfying our definition. More generally, non-malleable ballots are not necessary. Indeed, given an election scheme Γ with non-malleable ballots, let be derived from Γ by prepending a bit to Γ-ballots and disregarding any ballot that is identical to another except for the first bit before tallying. Intuitively, election scheme satisfies ballot secrecy, if Γ does. Malleability cannot be exploited in a manner that causes meaningfully related ballots to be tallied; related ballots can be tolerated, as long as they are not counted. Albeit, scheme cannot satisfy universal verifiability, because voters’ votes may be discarded when related ballots are present. This makes a case for adopting non-malleable ballots. Nonetheless, further research could consider a weakening of our ballot secrecy definition that is compatible with such malleability. Without such a weakening, our definition is too strong: it will incorrectly brand some election schemes (with malleable ballots) as insecure, as demonstrates.
Related work
Discussion of ballot secrecy originates from Chaum [38] and the earliest definitions of ballot secrecy are due to Benaloh et al. [11,13,14].28
Quaglia & Smyth present a tutorial-style introduction to modelling ballot secrecy [109], and Bernhard et al. survey ballot secrecy definitions [16,17].
More recently, Bernhard et al. propose a series of ballot secrecy definitions: They consider election schemes without tallying proofs [18,20] and, subsequently, schemes with tallying proofs [16,19,125,126]. The definition by Bernhard, Pereira & Warinschi computes tallying proofs using algorithm or a simulator [19], but that definition is too weak and some strengthening is required [16, §3.4 & §4]. (Cortier et al. [42,44] propose a variant of the ballot secrecy definition by Bernhard, Pereira & Warinschi, which is also too weak [16].) By comparison, the definition by Smyth & Bernhard computes tallying proofs using only algorithm [125], but their definition is too strong [16, §3.5] and a weakening is required [126]. We prove that our ballot secrecy definition is strictly stronger than the weakened definition by Smyth & Bernhard (Appendix H). The relative merits of definitions by Smyth & Bernhard [126, Definition 5] and by Bernhard et al. [16, Definition 7] are unknown, in particular, it is unknown whether one definition is stronger than the other.
Discussion of ballot independence originates from Gennaro [62] and the apparent relationship between ballot secrecy and ballot independence has been considered. In particular, Benaloh shows that a simplified version of his voting system allows the administrator’s private key to be recovered by an adversary who casts a ballot as a function of other voters’ ballots [11, §2.9]. More generally, Sako & Kilian [111, §2.4], Michels & Horster [94, §3], Wikström [140–142] and Cortier & Smyth [46,47] discuss how malleable ballots can be abused to compromise ballot secrecy. The first definition of ballot independence seems to be due to Smyth & Bernhard [125,126]. Moreover, Smyth & Bernhard formally prove relations between their definitions of ballot secrecy and ballot independence. Independence has also been studied beyond elections, e.g., [39], and the possibility of compromising security in the absence of independence has been considered, e.g., [40,57,58,63,104,105].
All of the ballot secrecy definitions by Bernhard et al. [16,18–20,125,126] and the ballot independence definition by Smyth & Bernhard [125,126] focus on detecting vulnerabilities exploitable by adversaries that control some voters. Vulnerabilities that require control of the bulletin board or the communication channel are not detected, i.e., the bulletin board is implicitly assumed to operate in accordance with the election scheme’s rules and the communication channel is implicitly assumed to be secure. This introduces a trust assumption. Under this assumption, Smyth & Bernhard prove that non-malleable ballots are not necessary for ballot secrecy [125, §4.3]. By comparison, we prove that non-malleable ballots are necessary for ballot secrecy without this trust assumption. Thus, our definition of ballot secrecy improves upon definitions by Bernhard et al. by detecting more vulnerabilities.
Confidence in our ballot secrecy definition might be improved by proving equivalence with a simulation-based definition of ballot secrecy. However, it is unclear how to formulate a suitable simulation-based definition. Bernhard et al. propose an ideal functionality that “collects all votes from the voters, then computes and announces the [election outcome]” [16, §1],29
In the context of voting systems that announce the chosen representative (rather than the frequency distribution of votes), a stronger ideal functionality might announce the chosen representative.
but a voting system satisfying ballot secrecy need not be equivalent, because ballot secrecy does not guarantee correct computation of the election outcome. Equivalence can perhaps be shown between their ideal functionality and voting systems satisfying ballot secrecy and some soundness condition (e.g., ). Albeit, voting systems that bound the number of ballots or candidates, e.g., Helios, may not be equivalent, because soundness conditions (such as ) need only provide guarantees when operating within the aforementioned bounds. Thus, bounds need to be taken into consideration. Moreover, no voting system is equivalent to the ideal functionality by Bernhard et al. in the presence of an adversary that controls the bulletin board, because such an adversary can discard ballots, which creates a trivial distinction.30
The real functionality by Bernhard et al. does not capture adversaries that control ballot collection. Thus, the relation they prove between their game-based and simulation-based definitions of ballot secrecy does not preclude vulnerabilities exploitable by such adversaries. Indeed, proving such relations does not guarantee the absence of vulnerabilities.
Nonetheless, equivalence can perhaps be shown for verifiable voting systems in cases where the number of ballots and candidates are bounded, and all voters successfully verify the presence of their ballot, but such a result has no practical relevance, because it is well-known that many voters do not perform checks necessary for verifiability [22, §2.1.6]. Alternatively, the ideal functionality could be weakened such that a discarded ballot in the real functionality corresponds to a discarded vote in the ideal functionality. We leave further exploration of simulation-based definitions of ballot secrecy as a possible extension for future work.
Bulens, Giry & Pereira pose the investigation of voting systems which allow casting of meaningfully related ballots as a means for voters to delegate candidate selection, whilst preserving ballot secrecy, as an interesting research question [30, §3.2]. Desmedt & Chaidos claim to provide such a system [55]. Smyth & Bernhard critique their work and argue that the security results do not support their claims [125, §5.1]. We have shown that non-malleable ballots are necessary to satisfy (§3.3), providing a negative result for the question posed by Bulens, Giry & Pereira.
Some of the ideas presented in this article previously appeared in my technical report [121] and an extended version of that technical report by Bernhard & Smyth [21]. In particular, the limitations of ballot secrecy definitions by Bernhard et al. were identified and Definition 2 is based upon my earlier definition [121]. The main distinction between Definition 2 and the earlier definition [121, Definition 3] is syntax: This article adopts syntax for election schemes from Smyth, Frink & Clarkson [128], whereas the earlier definition adopts syntax by Smyth & Bernhard [125,126]. The change in syntax is motivated by the superiority of syntax by Smyth, Frink & Clarkson. Moreover, we can capitalise upon results by Smyth, Frink & Clarkson [128] and Quaglia & Smyth [108].
Following the initial release of these results [122,123], Cortier et al. [45] presented a machine-checked proof that variants of Helios satisfy the notion of ballot secrecy by Bernhard et al. [16]. As discussed above, that notion is too weak: It cannot detect vulnerabilities that require control of ballot collection. Thus, our proof is more appropriate. Nonetheless, their proof builds upon similar ideas. In particular, their proof is dependent upon non-malleable ballots and zero-knowledge tallying proofs.
Further to their earlier work [130], Smyth & Hanatani show that Helios’16-ballots are essentially non-malleable ciphertexts and build upon this article to further simplify ballot-secrecy proofs [129], presenting a proof in just two pages, compared to the five pages used here.
Quaglia & Smyth [107] extend game to syntax with voter credentials [128, Definition 6]. Moreover, they define a transformation to that syntax from our syntax (Definition 1) and prove that their transformation preserves secrecy and verifiability. Furthermore, they apply their transformation to Helios. The resulting scheme is similar Helios-C [43], albeit Quaglia & Smyth observe that Helios-C does not satisfy ballot secrecy when the adversary controls ballot collection, whereas the scheme derived by applying their transformation does.
Beyond the computational model of security, Delaune, Kremer & Ryan formulate a definition of ballot secrecy in the applied pi calculus [51,52] and Smyth et al. show that this definition is amenable to automated reasoning [25,26,54,84,115]. An alternative definition is proposed by Cremers & Hirschi, along with sufficient conditions which are also amenable to automated reasoning [50]. Albeit, the scope of automated reasoning is limited by analysis tools (e.g., ProVerif [27]), because the function symbols and equational theory used to model cryptographic primitives might not be suitable for automated analysis (cf. [5,53,103]).
Ballot secrecy formalises a notion of free-choice assuming ballots are constructed and tallied in the prescribed manner. Moreover, our definition of ballot secrecy assumes the adversary’s capabilities are limited to casting ballots on behalf of some voters and controlling the votes cast by any remaining voters. We have seen that Helios’16 satisfies our definition, but ballot secrecy does not ensure free-choice when an adversary is able to communicate with voters, nor when voters deviate from the prescribed voting procedure to follow instructions provided by an adversary. Indeed, the coins used for encryption serve as proof of how a voter voted in Helios and the voter may communicate those coins to the adversary. Stronger notions of free-choice, such as receipt-freeness [32,51,60,83,96] and coercion resistance [61,70,76,88,139], are needed in the presence of such adversaries. Appendix I introduces these notions, proves that our syntax cannot be used to construct (interesting) schemes satisfying them, and discusses variants of our syntax that can.
McCarthy, Smyth & Quaglia [92] have shown that auction schemes can be constructed from election schemes, and Quaglia & Smyth [108] provide a generic construction for auction schemes from election schemes. Moreover, Quaglia & Smyth adapt our definition of ballot secrecy to a definition of bid secrecy, and prove that auction schemes produced by their construction satisfy bid secrecy. (Similarly, they adapt the definition of verifiability by Smyth, Frink & Clarkson [128] to a definition of verifiability for auctions, and prove that their construction produces schemes satisfying verifiability.) Thus, this research has applications beyond voting.
Conclusion
This work was initiated by a desire to eliminate the trust assumptions placed upon the bulletin board and the communication channel in definitions of ballot secrecy by Bernhard et al. and the definition of ballot independence by Smyth & Bernhard. This necessitated the introduction of new security definitions. The definition of ballot secrecy was largely constructed from intuition, with inspiration from indistinguishability games for asymmetric encryption and existing definitions of ballot secrecy. Moreover, the definition was guided by the desire to strengthen existing definitions of ballot secrecy. The definition of ballot independence was inspired by the realisation that independence requires non-malleable ballots, which enabled definitions to be constructed as straightforward adaptations of non-malleability and indistinguishability definitions for asymmetric encryption. The former adaptation being a more natural formulation of ballot independence and the latter being simpler.
Relationships between security definitions aid our understanding and offer insights that facilitate the construction of secure schemes. This prompted the study of relations between our definitions of ballot secrecy and ballot independence, resulting in a proof that non-malleable ballots are necessary for our definitions. We also proved non-malleable ballots suffice for our definition of ballot secrecy in election schemes with zero-knowledge tallying proofs. Moreover, we established a separation result demonstrating that our ballot secrecy definition is strictly stronger than our ballot independence definition.
We proved that Helios’16 uses non-malleable ballots and a proof that Helios’16 satisfies ballot secrecy follows from our results. This proof is particularly significant due to the use of Helios in binding elections, and we encourage developers to base future releases on this variant, since it is the only variant of Helios which is proven to satisfy both ballot secrecy and verifiability.
Proving ballot secrecy is expensive: It requires a significant devotion of time by experts. Indeed, Cortier et al. devoted one person-year to their machine-checked proof. Thus, sufficient conditions for ballot secrecy are highly desirable. We have established that non-malleable ballots are sufficient for our definition of ballot secrecy in election schemes with zero-knowledge tallying proofs and this simplified our ballot-secrecy proof for Helios’16. We have also established that building election schemes from non-malleable asymmetric encryption schemes suffices for our definition of ballot secrecy if tallying is additive (a condition implied by verifiability), and this trivialised our ballot-secrecy proof for Helios Mixnet. Thereby demonstrating the possibility of simple, inexpensive proofs.
This article delivers a definition of ballot secrecy that has been useful in detecting subtle vulnerabilities in voting systems, and has led to the development of election schemes that are proven secure. Thereby demonstrating the necessity of appropriate security definitions and accompanying analysis to ensure security of voting systems, especially those used in binding elections. I hope this article will simplify future proofs of ballot secrecy and, ultimately, aid democracy-builders in deploying their systems securely. There is still work to be done, especially in seeking definitions that consider distributed tallying.
Acknowledgements
I am grateful to David Bernhard and to Elizabeth Quaglia for extensive discussions, feedback, and, more generally, their help in extending my knowledge of cryptography. In addition, I am grateful to Constantin Cătălin Drăgan for explaining subtleties of his work and to Maxime Meyer for his careful proofreading. I am also grateful to JCS reviewers and editors: it’s clear from reviews that this article has been thoroughly studied. I appreciate the detail that reviewers have gone to. I also appreciate the actionable points listed by my associate editor, which expedited time required for revision. All efforts have helped improve this article and any remaining issues are my own. This work received financial support from the European Research Council under the European Union’s Seventh Framework Programme (FP7/2007-2013) / ERC project CRYSP (259639) and from the Luxembourg National Research Fund (FNR) under the FNR-INTER-VoteVerif project (10415467). Work was partly performed at INRIA and the University of Luxembourg.
An asymmetric encryption scheme is a tuple of probabilistic polynomial-time algorithms, such that:31
Our definition differs from Katz and Lindell’s original definition [78, Definition 10.1] in that we formally state the plaintext space.
Gen, denoted, inputs a security parameter κ and outputs a key pairand message space.
Enc, denoted, inputs a public keyand message, and outputs a ciphertext c.
Dec, denoted, inputs a private keyand ciphertext c, and outputs a message m or an error symbol. We assumeis deterministic.
Moreover, the scheme must be correct: there exists a negligible function, such that for all security parameters κ and messages m, we have. A scheme has perfect correctness if the probability is 1.
(Homomorphic encryption [128]).
An asymmetric encryption schemeis homomorphic, with respect to ternary operators ⊙, ⊕, and ⊗,32
For brevity, we write Π is a homomorphic asymmetric encryption scheme as opposed to the more verbose Π is a homomorphic asymmetric encryption scheme, with respect to ternary operators ⊙, ⊕, and ⊗.
if there exists a negligible function, such that for all security parameters κ, we have the following.33
We write for the application of ternary operator ∘ to inputs X, Y, and . We occasionally abbreviate as , when is clear from the context.
First, for all messagesandwe have. Secondly, for all messagesand, and all coinsand, we have. We say Π is additively homomorphic, if for all security parameters κ, key pairs, and message spaces, such that there exists coins r and, we haveis the addition operator in group.
( [7]).
Letbe an asymmetric encryption scheme,be an adversary, κ be the security parameter, andbe the following game.34
Our definition of an asymmetric encryption scheme explicitly defines the plaintext space, whereas Bellare et al. [7] leave the plaintext space implicit; this change is reflected in our definition of . Moreover, we provide the adversary with the message space and security parameter. We adapt similarly.
In the above game, we requireand. We say Π satisfies, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
Letbe an asymmetric encryption scheme,be an adversary, κ be the security parameter, andbe the following game.
In the above game, we requireand. We say Π satisfies, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
A non-interactive proof system for a relation R is a tuple of algorithms, such that:
Prove, denoted, is executed by a prover to prove.
Verify, denoted, is executed by anyone to check the validity of a proof. We assumeis deterministic.
Moreover, the system must be complete: there exists a negligible function, such that for all statement and witnessesand security parameters κ, we have. A system has perfect completeness if the probability is 1.
Given a sigma protocolfor relation R and a hash function, the Fiat-Shamir transformation, denoted, is the non-interactive proof system, defined as follows:
A string m can be included in the hashes computed by algorithmsand. That is, the hashes are computed in both algorithms as. We writeandfor invocations ofandwhich include string m.
Letbe a non-interactive proof system for a relation R, derived by application of the Fiat-Shamir transformation [
59
]to a random oracleand a sigma protocol. Moreover, letbe an algorithm,be an adversary, κ be a security parameter, andbe the following game.
Random oracles can be programmed or patched. We will not need the details of how patching works, so we omit them here; see Bernhard et al. [19] for a formalisation.
We say Δ satisfies zero-knowledge, if there exists a probabilistic polynomial-time algorithm, such that for all probabilistic polynomial-time algorithm adversaries, there exists a negligible function, and for all security parameters κ, we have. An algorithmfor which zero-knowledge holds is called a simulator for.
(Simulation sound extractability [19,67,128]).
Suppose Σ is a sigma protocol for relation R,is a random oracle, andis a non-interactive proof system, such that. Further supposeis a simulator forandcan be patched by. Proof systemsatisfies simulation sound extractability if there exists a probabilistic polynomial-time algorithm, such that for all probabilistic polynomial-time adversariesand coins r, there exists a negligible function, such that for all security parameters κ, we have:36
We extend set membership notation to vectors: we write if x is an element of the set .
wheredenotes running adversarywith an empty input and coins r, whereHis a transcript of the random oracle’s input and output, and where oraclesandare defined below:
. Computes, forwarding any of’s oracle queries to, and outputs. By running,is rewinding the adversary.
Let Σ be a sigma protocol for relation R, and letbe a random oracle. Suppose Σ satisfies special soundness and special honest verifier zero-knowledge. Non-interactive proof systemsatisfies zero-knowledge and simulation sound extractability.
The Fiat-Shamir transformation may include a string in the hashes computed by functions and . Simulators can be generalised to include such a string too. We write for invocations of simulator which include string m. And remark that Theorem 15 can be extended to this generalisation.
Ballot independence: Non-malleability game
We formalise an alternative definition of ballot independence as a non-malleability game, called comparison based non-malleability under chosen vote attack (), as a straightforward adaptation of the non-malleability definition for asymmetric encryption by Bellare & Sahai [10].
().
Letbe an election scheme,be an adversary, κ be a security parameter, andandbe the following games.
In the above games, we require that relation R is computable in polynomial time. We say Γ satisfies comparison based non-malleability under chosen vote attack (), if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
is satisfied if no adversary can distinguish between games and . That is, for all adversaries, the adversary wins iff the adversary looses , with negligible probability. The first three steps of games and are identical, thus, these steps cannot be distinguished. Then, game performs an additional step: the challenger samples a second vote from vote space V. Thereafter, game , respectively game , proceeds as follows: the challenger constructs a challenge ballot b for v, respectively ; the adversary is given ballot b and computes a relation R and bulletin board ; and the challenger tallies to derive election outcome and evaluates whether holds. Hence, is satisfied if there is no advantage of the relation computed by an adversary given a challenge ballot for v, over the relation computed by the adversary given a challenge ballot for . That is, for all adversaries, we have with negligible probability that the relation evaluated by the challenger in holds iff the relation evaluated in does not hold. It follows that no adversary can meaningfully relate ballots. On the other hand, if is not satisfied, then there exists a strategy to construct related ballots.
avoids crediting the adversary for trivial and unavoidable relations which hold if the challenge ballot appears on the bulletin board. For example, suppose the adversary is given a challenge ballot for v in , respectively in . This adversary could output a bulletin board containing only the challenge ballot and a relation R such that holds if , hence, the relation evaluated in holds, whereas the relation evaluated in does not hold, but the adversary looses in both games because the challenge ballot appears on the bulletin board. By contrast, if the adversary can derive a ballot meaningfully related to the challenge ballot, then the adversary can win the game. For instance, Cortier & Smyth [46,47] identify a class of vulnerabilities against voting systems, which can be exploited as follows: an adversary observes a voter’s ballot, casts a meaningfully related ballot, and abuses the relation to recover the voter’s vote from the election outcome.
Comparingand. Unsurprisingly, the distinction between non-malleability for asymmetric encryption () and non-malleability for election schemes () is similar to the distinction between indistinguishability for asymmetric encryption and indistinguishability for election schemes (§3.2), namely, performs a parallel decryption, whereas performs a single tally.
Our ballot independence games are adaptations of standard security definitions for asymmetric encryption: is based on non-malleability for encryption and is based on indistinguishability for encryption. Bellare & Sahai [10] have shown that non-malleability is equivalent to indistinguishability for encryption and their proof can be adapted to show that and are equivalent.
().
Given an election scheme Γ, we have Γ satisfiesiff Γ satisfies.
For the if implication, suppose Γ does not satisfy , hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and . We construct an adversary against game from .
computes and outputs .
computes and outputs .
outputs 0 if holds and 1 otherwise.
If the challenger selects in game , then adversary simulates ’s challenger to in and ’s success (which requires to hold) is . Otherwise (), adversary simulates ’s challenger to in and, since will evaluate , ’s success (which requires not to hold) is . It follows that , therefore, . Thus, , concluding our proof of the if implication.
For the only if implication, suppose Γ does not satisfy , hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and . We construct an adversary against from .
computes and outputs .
computes , picks coins r uniformly at random, derives a relation R such that holds if there exists a bit g such that and fails otherwise, and outputs .
Adversary simulates ’s challenger to in game . Indeed, the challenge ballot is equivalently computed. As is the election outcome. The computation is not black-box, but this does not matter: it is still invoked exactly once in the game. Let us consider adversary ’s success against and .
Game samples a single vote v from V. By inspection of and , we have , hence, .
Game samples votes v and from V. Vote v is independent of ’s perspective, indeed, an equivalent formulation of could sample v after has terminated and immediately before evaluating the adversary’s relation. By inspection of and , we have .
Suppose Γ does not satisfy ballot independence, hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and . We construct an adversary against from .
computes and outputs .
computes and outputs .
computes and outputs g.
Adversary simulates ’s challenger to . Indeed, the challenge ballot and election outcome are equivalently computed. Moreover, the challenge ballot does not appear on the bulletin board, hence, the bulletin board is balanced. It follows that , hence, , concluding our proof. □
In essence, the proof follows from Theorem 4. Albeit, formally, a few extra steps are required. In particular, the definition of an election scheme with zero-knowledge proofs demands that tallying proofs must be computed by a zero-knowledge non-interactive proof system, but an election scheme without tallying proofs need not compute proofs with such a system. Thus, we must introduce an election scheme with zero-knowledge proofs and prove that it is equivalent to the election scheme without proofs. This is trivial, so we do not pursue the details. □
An election schemehas zero-knowledge tallying proofs, if there exists a non-interactive zero-knowledge proof system, such that for all security parameters κ, integers, bulletin boards, outputsof, and outputsof, we haveis an output of algorithmparameterised with statementand coins chosen uniformly at random.
(Beyond the statement and coins, algorithm additionally inputs some witness and security parameter.)
Letbe an election scheme with zero-knowledge tallying proofs,be an adversary, and κ be a security parameter. Moreover, letbe the simulator for the non-interactive zero-knowledge proof system used by algorithmto compute tallying proofs. We define gameas follows.
Predicateand oracleare defined as per game.
Letbe an election scheme with zero-knowledge tally proofs,be the simulator for that proof system,be an adversary, and κ be a security parameter. If Γ satisfies, then, for all negligible functionsand some security parameter κ.
The challengers in games and both compute public keys using the same algorithm and provide those keys, along with the security parameter, as input to the first adversary call, thus, these inputs and corresponding outputs are equivalent. Moreover, the left-right oracle is the same in both and , hence, the bulletin board output by the second adversary call is equivalent in both games. Furthermore, predicate is satisfied in iff it is satisfied in , hence, if predicate is not satisfied, then , concluding our proof. Otherwise, it suffices to show that the outcome and tallying proof are equivalently computed in and , since this ensures the inputs to the third adversary call are equivalent, thus the corresponding outputs are equivalent too, which suffices to conclude.
In , the outcome is computed by tallying the bulletin board. By comparison, in , the outcome is computed by tallying the ballots on the bulletin board that were constructed by the adversary (i.e., ballots in , where is the bulletin board and L is the set constructed by the oracle) and by simulating the tallying of any remaining ballots (i.e., ballots constructed by the oracle, namely, ballots in ). Suppose is an output of and is an integer. Since Γ satisfies , computing as
is equivalent to computing as
and as
Moreover, by correctness of Γ, we have outputs such that is a zero-filled vector. Hence, the above computation is equivalent to
Thus, to prove the outcome is computed equivalently in and , it suffices to prove that the simulations are valid, i.e., computing the above for-loop is equivalent to computing fordo.
In , we have for all that b is an output of such that , where β is the bit chosen by the challenger. Moreover, by correctness of Γ, we have outputs such that is a zero-filled vector, except for index , which contains one, hence, computing inside the for-loop is equivalent to computing inside the loop. Furthermore, since predicate holds in , we have for all that . Hence, in , computing
is equivalent to computing
Thus, the simulation is valid in .
In , the tallying proof is computed by tallying the bulletin board. By comparison, in , the tallying proof is computed by simulator . Since Γ has zero-knowledge tallying proofs, there exists a non-interactive proof system such that for all output by , we have is an output of algorithm parameterised with statement and coins chosen uniformly at random. Moreover, since is a simulator for , proofs output by algorithm are indistinguishable from outputs of simulator . Thus, tallying proofs are equivalently computed in and , thereby concluding our proof. □
Let , respectively , be the game derived from by replacing with , respectively . These games are trivially related to , namely, . Moreover, let be the game derived from by replacing with and let be the game derived from by removing and redefining oracle such that computes, on inputs , the following:
Games are distinguished from games and by their left-right oracles. In particular, the first j left-right oracle queries in construct ballots for the oracle’s “right” input and any remaining queries construct ballots for the oracle’s “left” input, whereas the left-right oracle in , respectively , always constructs ballots for the oracle’s “left,” respectively “right,” input. We relate game to , games and to the hybrid games , and we prove Theorem 4 using these relations.
Let Γ be an election scheme with zero-knowledge tally proofs,be the simulator for that proof system,be an adversary, and κ be a security parameter. If adversarywins gameagainst election scheme Γ, then.
Let Γ be an election scheme with zero-knowledge tally proofs,be the simulator for that proof system,be an adversary, and κ be a security parameter. If Γ satisfies, thenand, where q is an upper-bound on’s left-right oracle queries.
Games and , respectively and , are identical up to the oracle, except computes and checks , which is equivalent to checking , respectively computes and checks , which is equivalent to checking . Thus, it suffices to show that oracle outputs in are equivalent to oracle outputs in , and similarly for and . Left-right oracles queries in games and output ballots for vote , hence, outputs are equivalent in both games. Oracle outputs in and are similarly equivalent, in particular, left-right oracles queries in both games output ballots for vote , because q is an upper-bound on the left-right oracle queries, therefore, in , concluding our proof. □
By Theorem 1, it suffices to prove that ballot independence implies ballot secrecy. Suppose Γ does not satisfy ballot secrecy, hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and
Let . Since Γ has zero-knowledge tallying proofs, tallying proofs output by are computed by a non-interactive zero-knowledge proof system. Let algorithm be the simulator for that proof system. By Lemma 17, we have
By definition of and , we have
And, by Lemma 18, we have
Let q be an upper-bound on ’s left-right oracle queries. Hence, by Lemma 19, we have
which can be rewritten as the telescoping series
Let be such that is the largest term in that series. Hence,
Thus,
From , we construct the following adversary against :
computes and runs , handling ’s oracle queries as follows: if , then compute and return b to , otherwise, assign , and output .
assigns ; returns b to and handles any further oracle queries as follows, namely, compute and return b to ; assigns ’s output to ; and outputs .
computes
and outputs g.
We prove that wins with success of at least .
Suppose is an output of . Further suppose we run . It is straightforward to see that simulates the challenger and oracle in both and to . In particular, simulates query by computing for the first queries. Since and are equivalent to adversaries that make fewer than j left-right oracle queries, adversary must make at least j queries to ensure is non-negligible. Hence, terminates with non-negligible probability. Suppose adversary terminates by outputting , where correspond to the inputs of the jth oracle query by . Further suppose b is an output of , where β is a bit. If , then simulates the oracle in to , otherwise, simulates the oracle in to . In particular, responds to the jth oracle query with ballot b for , thus, simulating the challenger in when , respectively when . And responds to any further oracle queries with ballots for . Suppose is an output of , thus outputs . Further suppose is an output of and g is an output of . It is trivial to see that simulates ’s challenger. Thus, either
and simulates to , thus, with at least the probability that wins ; or
and simulates to , thus, with at least the probability that looses and, since wins game , we have g is a bit, hence, .
It follows that the success of adversary is at least , thus we conclude our proof. □
Suppose is an output of and is an output of such that and . Further suppose is an output , is an output of , and is an output of . Let . Moreover, let , , and . By definition of function , we have . Moreover, by , we have , , and , with overwhelming probability. It follows by transitivity that , with overwhelming probability.
We present a construction (Definition 21) for encryption schemes (Lemma 20) which are clearly not secure (Lemma 21). Nevertheless, the construction produces encryption schemes that are sufficient for ballot secrecy (Lemma 22). The proof of Proposition 11 follows from Lemmata 20–22.
Given an asymmetric encryption schemeand a constant symbol ω, letsuch thatproceeds as follows: if, then output, otherwise, computeand output m.
Given an asymmetric encryption scheme Π and a constant symbol ω such that Π’s ciphertext space does not contain ω, we haveis an asymmetric encryption scheme.
The proof follows immediately from correctness of the underlying encryption scheme, because constant symbol ω does not appear in the scheme’s ciphertext space. □
Given an asymmetric encryption scheme Π and a constant symbol ω such that Π’s ciphertext space does not contain ω and Π’s message space is larger than one for some security parameter, we havedoes not satisfy.
The proof is trivial: an adversary can output two distinct messages and a vector containing constant symbol ω during the first two adversary calls, learn the private key from the parallel decryption, and use the key to recover the plaintext from the challenge ciphertext, which allows the adversary to win the game. □
Letbe an asymmetric encryption scheme and ω be a constant symbol. Suppose Π’s ciphertext space does not contain ω and Π’s message space is smaller than the private key. Further supposesatisfies. We havesatisfies.
Let and let . By definition of and , we have and . Suppose is Π’s message space. By definition of , we have is ’s message space too. Moreover, since is smaller than the private key, we have for all security parameters κ, bulletin boards , and number of candidates , that implies
because ensures that is not influenced by decrypting ω (witness that decrypting ω outputs such that ) and is a constant symbol. It follows for all adversaries and security parameters κ that games and are equivalent, hence, we have . Moreover, since satisfies , it follows that satisfies too. □
Let Π be an asymmetric encryption scheme and ω be a constant symbol. Suppose Π’s ciphertext space does not contain ω. Further suppose Π’s message space is larger than one for some security parameter, but smaller than the private key. We have is an asymmetric encryption scheme (Lemma 20) such that satisfies (Lemma 22), but does not satisfy (Lemma 21), concluding our proof. □
Let and . Election scheme satisfies (Lemma 9). Suppose does not satisfy , hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and . Further suppose is an output of , is an output of , and is an output of . By definition of algorithm , we have is a pair such that is an output of , and is the largest integer such that . Moreover, since is a winning adversary, we have . By definition of algorithm , we have is initialised as a zero-filled vector of length and updated by computing fordoifthen. Since Π satisfies well-definedness and error symbol ⊥ is not an integer, that computation is equivalent to
with overwhelming probability. Although each ciphertext may not have been computed using coins r chosen uniformly at random, we nonetheless have , because Π is perfectly correct. Hence, the above computation is equivalent to
Thus, for all , we have if and only if , with overwhelming probability. It follows by definition of that for all we have
with overwhelming probability. Thereby contradicting our assumption that is a winning adversary, since , with overwhelming probability, which concludes our proof. □
Helios
Smyth, Frink & Clarkson [128] formalise a generic construction for Helios-like election schemes (Definition 23), which is parameterised on the choice of homomorphic encryption scheme and sigma protocols for the relations introduced in the following definition.
Supposeis an additively homomorphic asymmetric encryption scheme,is a sigma protocol that proves correct key generation,is a sigma protocol that proves plaintext knowledge in a subspace,is a sigma protocol that proves correct decryption, andis a hash function. Let,, and. We define election scheme generalised Helios, denoted, as follows.38
We omit algorithm for brevity.
. Select coins s uniformly at random, compute, let m be the largest integer such that, and output.
. Parseas a vector. Output ⊥ if parsing fails or. Select coinsuniformly at random and compute:
Output ballot.
. Initialise vectorsof lengthandof length. Computefordo. Parseas a pair. Outputif parsing fails. Letbe the largest subset ofsuch thatand for allwe haveis a vector of lengthand. If, then output, otherwise, compute:
Output.
The above algorithms assume. Smyth, Frink & Clarkson define special cases of and when. We omit those cases for brevity and, henceforth, assumeis always greater than one.
The generic construction can be instantiated to derive Helios 2.0 and Helios’16.
(Weak Fiat-Shamir transformation [19]).
The weak Fiat-Shamir transformation is a functionthat is identical to, except that it excludes statement s in the hashes computed byand, as follows:.
Letbeafter replacing all instances of the Fiat-Shamir transformation with the weak Fiat-Shamir transformation and excluding the (optional) messages input to, i.e.,should be used as a ternary function. Helios 2.0 is, where Π is additively homomorphic El Gamal [
49
, §2],is the sigma protocol for proving knowledge of discrete logarithms by Chaum et al. [
35
, Protocol 2],is the sigma protocol for proving knowledge of disjunctive equality between discrete logarithms by Cramer et al. [
48
, Figure 1],is the sigma protocol for proving knowledge of equality between discrete logarithms by Chaum and Pedersen [
36
, §3.2], andis SHA-256 [
99
].
Election scheme Helios’16 is, where Π is additively homomorphic El Gamal [
49
, §2],is the sigma protocol for proving knowledge of discrete logarithms by Chaum et al. [
35
, Protocol 2],is the sigma protocol for proving knowledge of disjunctive equality between discrete logarithms by Cramer et al. [
48
, Figure 1],is the sigma protocol for proving knowledge of equality between discrete logarithms by Chaum & Pedersen [
36
, §3.2],is a random oracle, and the sigma protocols are modified to perform the checks proposed by Chang-Fong & Essex [
33
, §4].
Although Helios actually uses SHA-256 [99], we assume that is a random oracle to prove Theorem 6. Moreover, we assume the sigma protocols used by Helios’16 satisfy the preconditions of generalised Helios, that is, [35, Protocol 2] is a sigma protocol for proving correct key generation, [48, Figure 1] is a sigma protocol for proving plaintext knowledge in a subspace, and [36, §3.2] is a sigma protocol for proving decryption. We leave formally proving this assumption as future work.
The construction for Helios-like schemes produces election schemes with zero-knowledge tallying proofs (Lemma 23) that satisfy universal verifiability [128] and, thus, (Lemma 27). They also satisfy ballot independence (Proposition 24). Hence, they satisfy ballot secrecy too (Theorem 4). We show that Helios’16 satisfies ballot secrecy.
Henceforth, we assume Π, , and satisfy the preconditions of Definition 23, and is a random oracle. Let and . Moreover, let , , and .
Suppose is an adversary and κ is a security parameter. Further suppose is an output of , is an output of , and is an output of , such that . By inspection of algorithm , tallying proof is a vector of proofs produced by . Thus, there trivially exists a non-interactive proof system that could compute , moreover, that proof system is zero-knowledge because is zero-knowledge, which concludes our proof. □
Suppose Π is perfectly correct and satisfies. Further supposeandsatisfy special soundness and special honest verifier zero-knowledge. We havesatisfies.
By Theorem 15, the proof systems have extractors and simulators. Let , respectively , be the simulator for , respectively . And let be the extractor for .
Let be a variant of in which: 1) the adversary outputs two vectors of messages and such that and for all we have and and are from the encryption scheme’s message space, and 2) the challenger computes and inputs to the adversary. We have Π satisfies [78, §10.2.2].
Suppose does not satisfy . Hence, there exists a probabilistic polynomial-time adversary , such that for all negligible functions , there exists a security parameter κ and . Since is a winning adversary, we have outputs such that with non-negligible probability, hence, either or . For brevity, we suppose . (Our proof can be adapted to consider cases such that , but these details provide little value, so we do not pursue them.) We construct the following adversary against from :
outputs .
proceeds as follows. First, compute:
Secondly, select coins uniformly at random and compute:
Thirdly, compute as the largest subset of satisfying the conditions of algorithm . Fourthly, initialise H as a transcript of the random oracle’s input and output, P as a transcript of simulated proofs, Q as a vector of length , and as a zero-filled vector of length . Fifthly, compute:
Finally, output g.
We prove that wins .
Suppose is an output of and is an output of . Let . Further suppose is an output of and is an output of . Let . Moreover, suppose ρ is an output of . Let . Suppose is an output of . Since is a simulator for , we have simulates the challenger in to . In particular, is a triple containing a public key and corresponding message space generated , and a (simulated) proof of correct key generation. Suppose computes b and is an output of . Further suppose computes , and g is an output of . The following claims prove that simulates the challenger in to and , hence, , with at least the probability that wins , concluding our proof.
Adversary’s computation of b is equivalent to computing b as.
We have parses as a vector . Moreover, since is an output of , there exist coins r such that . Hence, is a witness for statement . Furthermore, since is a simulator for and proofs output by are indistinguishable from outputs of , we have , with non-negligible probability. In addition, since is a winning adversary, we have , with non-negligible probability. It follows that does not output ⊥, with non-negligible probability. Indeed, computation is equivalent to the following. Select coins uniformly at random and compute:
Since , ciphertexts computed by the above for-loop all contain plaintext 0, except (possibly) ciphertext and, if defined, ciphertext . (Ciphertext only exists if .) Given that , ciphertext contains , i.e., if , then contains 1, otherwise (), contains 0. If , then ciphertext contains β. Moreover, since ⊙ is the addition operator in group and 0 is the identity element in that group, if , then plaintext m computed by the above algorithm is , otherwise, . Hence, the above algorithm is equivalent to selecting coins uniformly at random and computing:
Computation is equivalent to , because if , then contains plaintext 1, otherwise (), contains plaintext 0. Similarly, if , then computation is equivalent to . Moreover, proof , respectively , can be simulated by , respectively . Furthermore,
can be simulated by
Hence, we conclude the proof of this claim. □
Adversary’s computation ofis equivalent to computingas, where.
Let be the largest subset of satisfying the conditions of algorithm . It is trivial to see that the claim holds when , because is computed as a zero-filled vector of length in both cases. We prove the claim also holds when .
By simulation sound extractability, for all and , there exists a message and coins and such that and , with overwhelming probability. Suppose Q and W are computed by . We have for all and that and is a witness for , i.e., , and . Hence, adversary ’s computation of is equivalent to computing as:
Moreover, computing as is equivalent to initialising as a zero-filled vector of length and computing
Since Π is a homomorphic encryption scheme, we have for all that is a ciphertext with overwhelming probability. And although ciphertext may not have been computed using coins chosen uniformly at random, we nevertheless have with overwhelming probability, because Π is perfectly correct. It follows that , with overwhelming probability. Let be the largest integer such that . Since is a winning adversary, we have . Moreover, since for all and ⊙ is the addition operator in group , we have , which suffices to conclude the proof of this claim. □
For Helios’16, encryption scheme Π is additively homomorphic El Gamal [49, §2]. Moreover, , respectively and , is the non-interactive proof system derived by application of the Fiat-Shamir transformation [59] to a random oracle and the sigma protocol for proving knowledge of discrete logarithms by Chaum et al. [35, Protocol 2], respectively the sigma protocol for proving knowledge of disjunctive equality between discrete logarithms by Cramer et al. [48, Figure 1] and the sigma protocol for proving knowledge of equality between discrete logarithms by Chaum & Pedersen [36, §3.2].
Bernhard, Pereira & Warinschi [19, §4] remark that the sigma protocols underlying non-interactive proof systems and both satisfy special soundness and special honest verifier zero-knowledge, hence, Theorem 15 is applicable. Bernhard, Pereira & Warinschi also remark that the sigma protocol underlying satisfies special soundness and “almost special honest verifier zero-knowledge” and argue that “we could fix this[, but] it is easy to see that ... all relevant theorems [including Theorem 15] still hold.” We adopt the same position and assume that Theorem 15 is applicable.
Helios’16 has zero-knowledge tallying proofs (Lemma 23), subject to the applicability of Theorem 15 to the sigma protocol underlying . Moreover, since Helios’16 satisfies [128], we have Helios’16 satisfies (Lemma 27). Furthermore, since El Gamal satisfies [78,135] and is perfectly correct, and since non-interactive proof systems and satisfy special soundness and special honest verifier zero-knowledge, we have Helios’16 satisfies (Proposition 24). Hence, Helios’16 satisfies too (Theorem 4). □
Universal verifiability implies tally soundness
We recall the definition of universal verifiability by Smyth, Frink & Clarkson [128] and show that verifiable election schemes satisfy (Lemma 27). This is useful to simplify applications of Theorems 4, 13, & 29. Indeed, our ballot-secrecy proofs for Helios and Helios Mixnet make use of this result.
We extend our syntax for election schemes (Definition 1) to include a probabilistic polynomial-time algorithm :
, denoted , is run to audit an election. It takes as input a public key , a bulletin board , some number of candidates , an election outcome , a tallying proof , and a security parameter κ. It outputs a bit s, where 1 signifies success and 0 failure.
We previously omitted algorithm , because we did not focus on verifiability in the main body.
For universal verifiability, anyone must be able to check whether the election outcome represents the votes used to construct ballots on the bulletin board. The formal definition of universal verifiability by Smyth, Frink & Clarkson requires algorithm to accept if and only if the election outcome is correct. The if requirement is captured by completeness (Definition 28), which stipulates that election outcomes produced by algorithm will actually be accepted by algorithm . And the only if requirement is captured by soundness (Definition 30), which challenges an adversary to concoct a scenario in which algorithm accepts, but the election outcome is not correct.
An election schemesatisfies completeness, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
An election schemesatisfies injectivity, if for all probabilistic polynomial-time adversaries, security parameters κ and computationssuch that, we have.
An election schemesatisfies soundness, if Γ satisfies injectivity and for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
An election scheme Γ satisfies universal verifiability , if completeness, injectivity and soundness are satisfied.
If election scheme Γ satisfies completeness and soundness, then Γ satisfies.
Let . Suppose there exists a probabilistic polynomial-time adversary that wins against Γ. We construct an adversary against from . We define such that . Suppose is an output of , is an output of , and is an output of . Since is a winning adversary, we have , with non-negligible probability. And, by completeness, we have , with overwhelming probability. Thereby concluding our proof. □
The reverse implication of Lemma 27 does not hold: Observe that only ensures algorithm tallies ballots correctly, whereas additionally ensures that anyone can check whether ballots are tallied correctly.
Encryption-based voting systems
We have seen that election scheme satisfies , if Π is perfectly correct (Lemma 9). But, assumes public keys are computed using the key generation algorithm. Thus, perfect correctness is insufficient to ensure injectivity when public keys are controlled by an adversary. Nonetheless, this can be ensured using proofs of correct key generation. A sub-class of schemes generated by prove correct key generation. Indeed, we can consider schemes such that proves correct key generation and verifies such proofs, where . Alternatively, we can couple with proofs of correct key generation:
Supposeis an asymmetric encryption scheme, Σ is a sigma protocol that proves correct key generation, andis a hash function. Let. We definesuch that:
selects coins s uniformly at random, computes, derivesas the largest integer such thatand for allwe have, and outputs, where p is a polynomial function.
parsesas vector, outputting ⊥ if parsing fails or, computes, and outputs b.
initialisesas a zero-filled vector of length, parsesas pair, outputtingif parsing fails, computesfordoifthen, and outputs, where ϵ is a constant symbol.
Given an asymmetric encryption scheme Π satisfying, a sigma protocol Σ that proves correct key generation, and a hash function, we haveis an election scheme.
Smyth considers instantiating with a broad class of asymmetric encryption schemes that produce distinct ciphertexts with overwhelming probability [116], whereas we consider a strictly narrower class of schemes satisfying . This avoids having to recall Smyth’s notion of distinct ciphertexts.
Although the set of election schemes produced by is not a subset of the schemes produced by , there is nonetheless a straightforward mapping from the former to the latter. Thus, the results in Section 5 also hold for :
Let, where Π is an asymmetric encryption scheme, Σ is a sigma protocol that proves correct key generation, andis a random oracle. Moreover, letfor some algorithmsuch that Γ is an election scheme with zero-knowledge tallying proofs. Suppose Π is perfectly correct and satisfiesand well-definedness. Moreover, suppose Σ is perfectly complete andsatisfies zero-knowledge. Further suppose Γ satisfies. We have Γ satisfies.
Let and . Moreover, let asymmetric encryption scheme such that
selects coins s uniformly at random, computes , and outputs .
parses as a vector , outputting ⊥ if parsing fails or , computes ciphertext , and outputs c.
Since Π is perfectly correct and Σ is perfectly complete, we have is perfectly correct. Moreover, since Π satisfies well-definedness, we have does too. Furthermore, since satisfies zero-knowledge and Π satisfies , we have satisfies . It follows that satisfies and (Corollary 10 & Lemma 12).
We have such that is except outputs public key as a vector , whereas outputs public key . Moreover, is except inputs public key whereas inputs public key . (This blight motivated the inclusion of this appendix.) Hence, it is straightforward to see that satisfies and , because does. Thus, Γ satisfies (Proposition 8) and (Theorem 4 & Lemma 7). □
Helios Mixnet
We recall a generic construction for election schemes similar to Helios Mixnet (Definition 34). The construction is parameterised on the choice of homomorphic encryption scheme and sigma protocols for the relations introduced in Definition 22 and the following definition.
Letbe a homomorphic asymmetric encryption scheme and Σ be a sigma protocol for a binary relation R. Suppose that, for some security parameter κ and coins s, andis the encryption scheme’s plaintext space.
Σ proves plaintext knowledge if
Σ proves mixing if, wherecandare both vectors of ciphertexts encrypted under,ris a vector of coins, χ is a permutation on, andis an identity element of the encryption scheme’s message space with respect to ⊙.
Supposeis a homomorphic asymmetric encryption algorithm,is a sigma protocol that proves correct key construction,is a sigma protocol that proves plaintext knowledge, andis a hash function. Letand. Moreover, letbe an asymmetric encryption scheme such that:
selects coins r uniformly at random, computes, and outputs.
parsesas, outputting ⊥ if parsing fails or, computes, and outputs v.
Let. Supposeis a sigma protocol that proves correct decryption andis a sigma protocol that proves mixing. Letand. We define, where algorithmis defined below.40
We omit algorithm for brevity.
initialisesas a zero-filled vector of length; parsesas a pair, outputtingif parsing fails; and proceeds as follows:
Remove invalid ballots. Letbe the largest subset ofsuch that for allwe haveis a pair and. If, then output.
Mix. Select a permutation χ onuniformly at random, initialiseandras a vector of length ℓ, fillrwith coins chosen uniformly at random, and compute
whereis an identity element of Π’s message space with respect to ⊙.
Decrypt. InitialiseWandas vectors of length ℓ and compute:
Output.
(HeliosM’17).
HeliosM’17 is the set of election schemes that includes everysuch that,,,,andsatisfy the preconditions of Definition
34
, moreover,is perfectly correct andandare perfectly complete, furthermore,satisfies,,,andsatisfy special soundness and special honest verifier zero-knowledge,is a random oracle, andsatisfies.
Smyth has shown that there exists an election scheme in HeliosM’17 that satisfies [124]. Hence, set HeliosM’17 is not empty.
Let election scheme and asymmetric encryption scheme . It follows that election scheme . Moreover, since satisfies special soundness and special honest verifier zero-knowledge, we have satisfies zero-knowledge (Theorem 15). We use Theorem 29 to prove that satisfies .
Since is perfectly correct and is perfectly complete, we have Π is a perfectly correct. Moreover, since satisfies special soundness and special honest verifier zero-knowledge, we have satisfies simulation sound extractability (Theorem 15), hence, Π satisfies [19, Theorem 2] and, equivalently, [10].
To prove satisfies well-definedness, suppose is a probabilistic polynomial-time adversary, κ is a security parameter, is an output of , and c is an output of such that . By definition of , we have c is a pair (hence, ) such that can verify with respect to and . Since satisfies simulation sound extractability, we have is a proof computed using and there exists plaintext and coins r such that , with overwhelming probability. Thus, Π satisfies well-definedness.
Since and satisfy special soundness and special honest verifier zero-knowledge, we have and satisfy zero-knowledge (Theorem 15), therefore, Γ has zero-knowledge tallying proofs by reasoning similar to that given in the proof sketch of Lemma 23. Moreover, since Γ satisfies universal verifiability, we have Γ satisfies (Lemma 27).
Smyth & Bernhard propose definitions of ballot secrecy that consider an adversary that cannot control the bulletin board nor the communication channel [125,126]. As discussed in Section 8, their original definition [125] is too strong [16, §3.5] and they propose a revision [126]. We recall their syntax (Definition 36) and revised definition (Definition 37), define a transformation from their syntax to ours (Definition 38), and prove is strictly stronger than their definition (Theorem 31).
(Election scheme with a trusted bulletin board).
An election scheme with a trusted bulletin board is a tuple of efficient algorithmssuch that:
, denoted, takes a security parameter κ as input and outputs a key pair, a vote space, and a bulletin board, whereandare both sets.
, denoted, takes a public keyand vote v as input and outputs a ballot b. Vote v should be selected from the vote space.
, denoted, takes a bulletin boardand ballot b as input and outputs an updated bulletin board.
, denoted, takes a private keyand bulletin boardas input and outputs an election outcomeand a tallying proof, whereis a multiset of votes.
Election schemes with a trusted bulletin board must satisfy correctness, that is, for all security parameters κ, votes v and multisets, we have:.
Letbe an election scheme with a trusted bulletin board,be an adversary, κ be a security parameter, andbe the following game.
In the above game,andare multisets and oracleis defined as follows:
computes, where.
computesifthen.
outputs.
We say Γ satisfies, if for all probabilistic polynomial-time adversaries, there exists a negligible function, such that for all security parameters κ, we have.
Observe that game uses bulletin boards and , hence, is unused when . It follows that game is equivalent to a variant that redefines the following oracle calls:
computes ifthen, where .
computes ifthen.
Let that variant be .
An election scheme with a trusted bulletin board Γ satisfiesiff Γ satisfies.
Lemma 30 follows from our informal reasoning and we omit a formal proof.
Given an election scheme with a trusted bulletin boardsuch that for all security parameters κ and computationswe havefor some integer, we definesuch that
computesand outputs, where p is a polynomial function.
parsesas, aborting if parsing fails; computes; and outputs b.
computes, outputting an empty vector ifis empty; assigns the largest integer into; initialisesas a zero-filled vector of length; computeswhiledo; and outputs.
Let Γ be an election scheme with a trusted bulletin board. Ifis an election scheme satisfying, then Γ satisfies.
Let and . Suppose is an election scheme satisfying . Moreover, suppose Γ does not satisfy . Hence, there exists a probabilistic polynomial-time adversary , such that for negligible functions , there exists a security parameter κ and . We construct the following adversary against from , where denotes ’s oracle and denotes ’s oracle:
parses as , aborting if parsing fails, and outputs .
initialises and as empty sets and and as empty multisets; computes , handling ’s oracle calls as follows, namely,
computes ,
computes ifthen, and
outputs ,
and outputs if and otherwise.
computes ifthen; and outputs g.
We prove that wins .
Suppose is an output of . By definition of algorithm , we have is a pair , where is an output of and . Hence, outputs . Let β be a bit and suppose is an output of . It is trivial to see that simulates ’s challenger to . Moreover, by Lemma 30 it is straightforward to see that simulates ’s oracle too. Indeed, adversary maintains bulletin board such that constructs a ballot b for using ’s oracle, hence, the ballot is constructed by algorithm by way of algorithm , and adds that ballot to the bulletin board using algorithm . Suppose is an output of and g is an output of . It is straightforward to see that simulates ’s challenger to , thus, , with at least the probability that wins , concluding our proof. □
Stronger privacy notions
Ballot secrecy does not ensure free-choice when an adversary is able to communicate with voters nor when voters deviate from the prescribed voting procedure to follow instructions provided by an adversary. Stronger notions of free-choice, such as receipt-freeness [32,51,60,83,96] and coercion resistance [61,70,76,88,139], are needed in the presence of such adversaries. This appendix introduces these notions, proves that our syntax cannot be used to construct (interesting) schemes satisfying them, and discusses variants of our syntax that can.
Receipt-freeness formalises a notion of free-choice in the presence of an adversary that can communicate with voters.
Receipt-freeness. A voter cannot collaborate with a conspirator to produce information which can be used to prove how they voted.
Free-choice may be compromised in receipt-free voting systems if voters deviate from the prescribed voting procedure.41
For receipt-freeness to be an effective notion of free-choice it might be necessary for the voting system to prevent voters deviating from the prescribed voting procedure. This might be achieved by physically securing devices that can be used to cast ballots.
Coercion-resistance formalises a stronger notion of free-choice assuming that not only can voters deviate, but the adversary can instruct voters how to deviate.
Coercion resistance. A voter can deviate from a coercer’s instructions, to cast their vote, without detection.
The distinction between receipt-freeness and coercion resistance is subtle: “receipt-freeness deals with a coercer who is only concerned with deducing information about how someone voted from receipts and public information, but who does not give detailed instructions on how to cast the vote. Coercion resistance, on the other hand, includes dealing with a coercer who gives details not just on which candidate to vote for but also on how to cast the vote” [72, §1.1]. Both receipt-freeness and coercion resistance retain the assumption that voters’ ballots are tallied in the prescribed manner, and receipt-freeness additionally assumes voters’ ballots are constructed in the prescribed manner. Moreover, both require side conditions to exclude inevitable revelations (§3).
Receipt-freeness
We cast the definition of receipt-freeness by Delaune, Kremer & Ryan [51,52] from the symbolic model to the computational model of cryptography, in the context of our election scheme syntax. Moreover, we extend their work to consider arbitrarily many voters, rather than just the two considered by the original definition. The resulting formalisation (Definition 39) is a pair of games.
The first game () is an extension of that tasks the adversary to: select a list of their preferred votes and a list of voter preferred votes (although it is somewhat unnatural for the adversary to specify voter preferred votes, this is useful to quantify over all possible voter preferences); construct a bulletin board from either (i) ballots for their preferred votes and coins used to construct those ballots, or (ii) ballots for voter preferred votes and simulated coins; and non-trivially determine whether their preferred or voter preferred votes were used, from the resulting election outcome and tallying proof. The game proceeds as per game , except a new oracle is used (Line 5). That oracle constructs ballots for either the adversary’s preferred votes (using algorithm ) or for voter preferred votes (using algorithm ). Those ballots are output along with either the coins used by algorithm or coins simulated by algorithm . Intuitively, algorithm provides a strategy for voters to cast voter preferred votes whilst convincing the adversary that its preferred votes were cast, hence, information cannot be produced to prove how voters voted.
The second game () tasks the adversary to compute inputs (including a public key) to algorithms and that cause the algorithms to output ballots that can be distinguished, thereby over-approximating the requirement that algorithm must produce a ballot for voter preferred votes. (Indeed, the adversary can use algorithm to determine whether a ballot is for the expected vote.) The game proceeds as follows: The adversary computes inputs to algorithms and (Line 1); the challenger flips a coin (Line 2) and computes a ballot using one of the algorithms (Lines 3–6), where the choice between algorithms is determined by the coin flip; and the adversary is tasked with determining the result of the coin flip from the ballot (Lines 7 & 8).
().
Letbe an election scheme,be an algorithm,be an adversary, κ be a security parameter, andbe the following game.
Oracleis defined as follows:
chooses coins r uniformly at random from the coin space of algorithm, computesifthenelseand, and outputs, where.
Moreover, letbe an adversary andbe the following game.
We say Γ satisfies, if there exists a probabilistic polynomial-time algorithmsuch that for all probabilistic polynomial-time adversariesand, there exists a negligible functionand for all security parameters κ, we haveand.
An election scheme satisfies receipt-freeness when ballot secrecy is preserved even when coins used to construct ballots are revealed.
Similarly to ballot secrecy (§3), receipt-freeness tolerates inevitable revelations, e.g., unanimous election outcomes. It follows that an election scheme for one candidate satisfies our definition of receipt-freeness, because that scheme will always produce unanimous election outcomes.
Given an election scheme Γ for one candidate (i.e., for all security parameters the maximum number of candidates is one), we have Γ satisfiesand.
Let . Suppose is an output of and is an output of such that , for some security parameter κ and some adversary against game or game . Since by hypothesis, we have too. For game , let algorithm be such that chooses coins r uniformly at random from the coin space of algorithm , computes , and outputs . Suppose β is a bit chosen uniformly at random and is an output of . By inspection of the oracle definition in each game, we have for every oracle call that , moreover, the ballot output by the oracle is independent of bit β. It follows that the adversary looses each game, hence Γ satisfies . To show that is satisfied too, we must consider game .
Suppose is an output of such that , for some adversary against game . Let β be a bit chosen uniformly at random. If , then suppose b is an output of , otherwise (), suppose is an output of , hence, b is an output of by definition of . Thus, the ballot computed by the challenger is independent of bit β. It follows that the adversary looses game , hence, Γ satisfies , thereby concluding our proof. □
Beyond the uninteresting case (Proposition 32), we prove that cannot be satisfied by election schemes for more than one candidate (Proposition 33), assuming the election scheme is perfectly correct or satisfies tally soundness.
Let Γ be an election scheme for more than one candidate (i.e., there exists a security parameter such that the maximum number of candidates is greater than one). Suppose Γ is perfectly correct or Γ satisfies. We have Γ does not satisfy.
Let . Suppose to the contrary that Γ satisfies , hence, there exists a probabilistic polynomial-time algorithm such that for all probabilistic polynomial-time adversaries and , there exists a negligible function and for all security parameters κ, we have . Further suppose κ is such that the maximum number of candidates output by algorithm is greater than one. Moreover, suppose is the following adversary.
computes and outputs .
computes and outputs ∅.
outputs 0 if and 1 otherwise.
Since Γ satisfies , it follows that outputs such that , with overwhelming probability. Suppose is the following adversary.
computes and outputs .
computes and outputs 0 if and 1 otherwise.
We prove that wins .
Suppose is an output of and β is a bit chosen uniformly at random. If , then further suppose b is an output of , and g is an output of . Outputs of are such that by correctness, which ensures by definition of . Otherwise (), suppose is an output of , hence, , and g is an output of . Outputs of are such that by perfect correctness and by , which ensures by definition of . (Correctness, rather than perfect correctness, is insufficient, because algorithm may not have chosen coins r uniformly at random.) Thus, , concluding our proof. □
A special case of our proposition holds for universal verifiability, rather than tally soundness, because universal verifiability is strictly stronger (Appendix E).
It follows from Proposition 33 that our syntax cannot be used to construct (interesting) election schemes satisfying stronger notions of privacy such as . Nonetheless, algorithm could be distributed between the voter and some other (possibly untrusted) parties to enable stronger privacy notions. Indeed, a variant of Helios that delegates ballot construction to a trusted party would satisfy receipt-freeness, since voters cannot access coins used by the trusted party to construct ballots, hence, cannot communicate such coins to the adversary. More generally, an election scheme satisfying ballot secrecy can delegate ballot construction to achieve receipt-freeness.
We have seen that election schemes for more than one candidate cannot satisfy (Proposition 33), assuming the election scheme is perfectly correct or satisfies tally soundness. Intuitively, it follows that coercion resistance cannot be satisfied by such election schemes either, because coercion resistance strengthens receipt-freeness. Nevertheless, receipt-freeness can be satisfied by election schemes with interactive voting algorithms and we now consider whether coercion resistance can hold too.
Coercion resistance
Coercion resistance requires a mechanism to deviate from a coercer’s instructions. Intuitively, no such mechanism exists for election schemes with interactive voting algorithms, because there exists instructions for which deviations are impossible. Indeed, the coercer can instruct the voter to run the algorithms themselves (i.e., without the aid of another party) and furnish the coercer with the coins used, thereby enabling the coercer to check whether voters followed their instructions. It follows that election schemes with interactive voting algorithms cannot satisfy coercion resistance.
Interactive voting algorithms can be extended with private inputs which cannot be simulated by voters, thereby enabling voters to deviate from the coercer’s instructions. Alternatively, the variant of our syntax with voter credentials [128, Definition 6] can be used; that variant extends algorithm to input a private credential (essentially resulting in interactive ballot construction). The latter has been used by Smyth, Frink & Clarkson [128, §6] to model the coercion-resistant voting system by Juels, Catalano & Jakobsson [76,77] and by Smyth as a foundation for his coercion-resistant voting system [117], thus, the syntax with voter credentials is compatible with stronger privacy notions.
B.Adida, O.Marneffe, O.Pereira and J.Quisquater, Electing a university president using open-audit voting: Analysis of real-world use of Helios, in: EVT/WOTE’09: Electronic Voting Technology Workshop/Workshop on Trustworthy Elections, USENIX Association, 2009.
R.M.Alvarez and T.E.Hall, Electronic Elections: The Perils and Promises of Digital Democracy, Princeton University Press, 2010. doi:10.1515/9781400834082.
5.
M.Arapinis, S.Bursuc and M.Ryan, Reduction of equational theories for verification of trace equivalence: Re-encryption, associativity and commutativity, in: POST’12: First Conference on Principles of Security and Trust, LNCS, Vol. 7215, Springer, 2012, pp. 169–188. doi:10.1007/978-3-642-28641-4_10.
6.
M.Bellare, A.Desai, E.Jokipii and P.Rogaway, A concrete security treatment of symmetric encryption, in: FOCS’97: 38th Annual Symposium on Foundations of Computer Science, IEEE Computer Society, 1997, pp. 394–403.
7.
M.Bellare, A.Desai, D.Pointcheval and P.Rogaway, Relations among notions of security for public-key encryption schemes, in: CRYPTO’98: 18th International Cryptology Conference, LNCS, Vol. 1462, Springer, 1998, pp. 26–45. doi:10.1007/BFb0055718.
8.
M.Bellare and P.Rogaway, Random oracles are practical: A paradigm for designing efficient protocols, in: CCS’93: 1st ACM Conference on Computer and Communications Security, ACM, 1993, pp. 62–73. ISBN 0-89791-629-8. doi:10.1145/168588.168596.
9.
M.Bellare and P.Rogaway, Symmetric encryption, in: Introduction to Modern Cryptography, 2005, Chapter 4. http://cseweb.ucsd.edu/~mihir/cse207/w-se.pdf.
10.
M.Bellare and A.Sahai, Non-malleable encryption: Equivalence between two notions, and an indistinguishability-based characterization, in: CRYPTO’99: 19th International Cryptology Conference, LNCS, Vol. 1666, Springer, 1999, pp. 519–536. doi:10.1007/3-540-48405-1_33.
11.
J.Benaloh, Verifiable Secret-Ballot Elections, PhD thesis, Department of Computer Science, Yale University, 1996.
12.
J.Benaloh, S.Vaudenay and J.Quisquater, Final Report of IACR Electronic Voting Committee, 2010, International Association for Cryptologic Research. http://www.iacr.org/elections/eVoting/finalReportHelios_2010-09-27.html.
13.
J.Benaloh and M.Yung, Distributing the power of a government to enhance the privacy of voters, in: PODC’86: 5th Principles of Distributed Computing Symposium, ACM Press, 1986, pp. 52–62. doi:10.1145/10590.10595.
14.
J.C.Benaloh and D.Tuinstra, Receipt-free secret-ballot elections, in: STOC’94: 26th Theory of Computing Symposium, ACM Press, 1994, pp. 544–553. doi:10.1145/195058.195407.
15.
D.Bernhard, Zero-Knowledge Proofs in Theory and Practice, PhD thesis, Department of Computer Science, University of Bristol, 2014.
16.
D.Bernhard, V.Cortier, D.Galindo, O.Pereira and B.Warinschi, SoK: A comprehensive analysis of game-based ballot privacy definitions, in: S&P’15: 36th Security and Privacy Symposium, IEEE Computer Society, 2015, pp. 499–516.
17.
D.Bernhard, V.Cortier, D.Galindo, O.Pereira and B.Warinschi, A comprehensive analysis of game-based ballot privacy definitions, 2015, Cryptology ePrint Archive, Report 2015/255 (version 20150319:100626).
18.
D.Bernhard, V.Cortier, O.Pereira, B.Smyth and B.Warinschi, Adapting Helios for provable ballot privacy, in: ESORICS’11: 16th European Symposium on Research in Computer Security, LNCS, Vol. 6879, Springer, 2011, pp. 335–354.
19.
D.Bernhard, O.Pereira and B.Warinschi, How not to prove yourself: Pitfalls of the Fiat-Shamir heuristic and applications to Helios, in: ASIACRYPT’12: 18th International Conference on the Theory and Application of Cryptology and Information Security, LNCS, Vol. 7658, Springer, 2012, pp. 626–643.
20.
D.Bernhard, O.Pereira and B.Warinschi, On Necessary and Sufficient Conditions for Private Ballot Submission, 2012, Cryptology ePrint Archive, Report 2012/236 (version 20120430:154117b).
21.
D.Bernhard and B.Smyth, Ballot secrecy with malicious bulletin boards, 2015, Cryptology ePrint Archive, Report 2014/822 (version 20150413:170300).
22.
M.Bernhard, J.Benaloh, J.A.Halderman, R.L.Rivest, P.Y.A.Ryan, P.B.Stark, V.Teague, P.L.Vora and D.S.Wallach, Public evidence from secret ballots, in: E-Vote-ID’17: 10th International Conference for Electronic Voting, LNCS, Springer, 2017, pp. 84–109.
23.
R.Bertrand, J.-L.Briquet and P.Pels, Introduction: Towards a historical ethnography of voting, in: The Hidden History of the Secret Ballot, Indiana University Press, 2007.
24.
E.C.Bjornlund, Beyond Free and Fair: Monitoring Elections and Building Democracy, Woodrow Wilson Center Press / Johns Hopkins University Press, 2004.
25.
B.Blanchet and B.Smyth, Automated reasoning for equivalences in the applied pi calculus with barriers, in: CSF’16: 29th Computer Security Foundations Symposium, IEEE Computer Society, 2016, pp. 310–324.
26.
B.Blanchet and B.Smyth, Automated reasoning for equivalences in the applied pi calculus with barriers, Journal of Computer Security26(3) (2018), 367–422. doi:10.3233/JCS-171013.
27.
B.Blanchet, B.Smyth, V.Cheval and M.Sylvestre, ProVerif 1.96: Automatic Cryptographic Protocol Verifier, User Manual and Tutorial, 2016.
28.
D.Bowen, Secretary of State Debra Bowen Moves to Strengthen Voter Confidence in Election Security Following Top-to-Bottom Review of Voting Systems, 2007, California Secretary of State, press release DB07:042.
29.
P.Brent, The Australian ballot: Not the secret ballot, Australian Journal of Political Science41(1) (2006), 39–50. doi:10.1080/10361140500507278.
30.
P.Bulens, D.Giry and O.Pereira, Running Mixnet-based elections with Helios, in: EVT/WOTE’11: Electronic Voting Technology Workshop/Workshop on Trustworthy Elections, USENIX Association, 2011.
31.
Bundesverfassungsgericht (Germany’s Federal Constitutional Court), Use of Voting Computers in 2005 Bundestag Election Unconstitutional, 2009, Press release 19/2009.
32.
P.Chaidos, V.Cortier, G.Fuschbauer and D.Galindo, BeleniosRF: A non-interactive receipt-free electronic voting scheme, in: CCS’16: 23rd ACM Conference on Computer and Communications Security, ACM Press, 2016, pp. 1614–1625. doi:10.1145/2976749.2978337.
33.
N.Chang-Fong and A.Essex, The cloudier side of cryptographic end-to-end verifiable voting: A security analysis of Helios, in: ACSAC’16: 32nd Annual Conference on Computer Security Applications, ACM Press, 2016, pp. 324–335. doi:10.1145/2991079.2991106.
34.
D.Chaum, R.Carback, J.Clark, A.Essex, S.Popoveniuc, R.L.Rivest, P.Y.A.Ryan, E.Shen and A.T.Sherman, Scantegrity II: End-to-end verifiability for optical scan election systems using invisible ink confirmation codes, in: EVT’08: Electronic Voting Technology Workshop, USENIX Association, 2008.
35.
D.Chaum, J.Evertse, J.van de Graaf and R.Peralta, Demonstrating possession of a discrete logarithm without revealing it, in: CRYPTO’86: 6th International Cryptology Conference, LNCS, Vol. 263, Springer, 1987, pp. 200–212. doi:10.1007/3-540-47721-7_14.
36.
D.Chaum and T.P.Pedersen, Wallet databases with observers, in: CRYPTO’92: 12th International Cryptology Conference, LNCS, Vol. 740, Springer, 1993, pp. 89–105. doi:10.1007/3-540-48071-4_7.
37.
D.Chaum, P.Y.Ryan and S.Schneider, A practical voter-verifiable election scheme, in: ESORICS’05: 10th European Symposium on Research in Computer Security, LNCS, Vol. 3679, Springer, 2005, pp. 118–139.
38.
D.L.Chaum, Untraceable electronic mail, return addresses, and digital pseudonyms, Communications of the ACM24 (1981), 84–90. doi:10.1145/358549.358563.
39.
B.Chor, S.Goldwasser, S.Micali and B.Awerbuch, Verifiable secret sharing and achieving simultaneity in the presence of faults, in: FOCS’85: 26th Foundations of Computer Science Symposium, IEEE Computer Society, 1985, pp. 383–395.
40.
B.Chor and M.O.Rabin, Achieving independence in logarithmic number of rounds, in: PODC’87: 6th Principles of Distributed Computing Symposium, ACM Press, 1987, pp. 260–268. doi:10.1145/41840.41862.
41.
M.Clarkson, B.Hay, M.Inge, abhi shelat, D.Wagner and A.Yasinsac, Software Review and Security Analysis of Scytl Remote Voting Software, http://election.dos.state.fl.us/voting-systems/pdf/FinalReportSept19.pdf.
42.
V.Cortier, D.Galindo, S.Glondu and M.Izabachene, Distributed ElGamal à la Pedersen: Application to Helios, in: WPES’13: Workshop on Privacy in the Electronic Society, ACM Press, 2013, pp. 131–142. doi:10.1145/2517840.2517852.
43.
V.Cortier, D.Galindo, S.Glondu and M.Izabachène, Election verifiability for Helios under weaker trust assumptions, in: ESORICS’14: 19th European Symposium on Research in Computer Security, LNCS, Vol. 8713, Springer, 2014, pp. 327–344.
44.
V.Cortier, D.Galindo, S.Glondu and M.Izabachene, A generic construction for voting correctness at minimum cost - Application to Helios, 2013, Cryptology ePrint Archive, Report 2013/177 (version 20130521:145727).
45.
V.Cortier, B.Schmidt, C.C.Drăgan, P.-Y.Strub, F.Dupressoir and B.Warinschi, Machine-checked proofs of privacy for electronic voting protocols, in: S&P’17: 37th IEEE Symposium on Security and Privacy, IEEE Computer Society, 2017.
46.
V.Cortier and B.Smyth, Attacking and fixing Helios: An analysis of ballot secrecy, in: CSF’11: 24th Computer Security Foundations Symposium, IEEE Computer Society, 2011, pp. 297–311.
47.
V.Cortier and B.Smyth, Attacking and fixing Helios: An analysis of ballot secrecy, Journal of Computer Security21(1) (2013), 89–148. doi:10.3233/JCS-2012-0458.
48.
R.Cramer, M.K.Franklin, B.Schoenmakers and M.Yung, Multi-authority secret-ballot elections with linear work, in: EUROCRYPT’96: 15th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 1070, Springer, 1996, pp. 72–83.
49.
R.Cramer, R.Gennaro and B.Schoenmakers, A secure and optimally efficient multi-authority election scheme, in: EUROCRYPT’97: 16th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 1233, Springer, 1997, pp. 103–118.
50.
C.Cremers and L.Hirschi, Improving Automated Symbolic Analysis for E-voting Protocols: A Method Based on Sufficient Conditions for Ballot Secrecy, 2017, arXiv, Report 1709.00194.
51.
S.Delaune, S.Kremer and M.Ryan, Coercion-resistance and receipt-freeness in electronic voting, in: CSFW’06: 19th Computer Security Foundations Workshop, IEEE Computer Society, 2006, pp. 28–42.
52.
S.Delaune, S.Kremer and M.D.Ryan, Verifying privacy-type properties of electronic voting protocols, Journal of Computer Security17(4) (2009), 435–487. doi:10.3233/JCS-2009-0340.
53.
S.Delaune, S.Kremer, M.D.Ryan and G.Steel, Formal analysis of protocols based on TPM state registers, in: CSF’11: 24th Computer Security Foundations Symposium, IEEE Computer Society, 2011, pp. 66–80.
54.
S.Delaune, M.D.Ryan and B.Smyth, Automatic verification of privacy properties in the applied pi-calculus, in: IFIPTM’08: 2nd Joint iTrust and PST Conferences on Privacy, Trust Management and Security, International Federation for Information Processing (IFIP), Vol. 263, Springer, 2008, pp. 263–278.
55.
Y.Desmedt and P.Chaidos, Applying divertibility to blind ballot copying in the Helios Internet voting system, in: ESORICS’12: 17th European Symposium on Research in Computer Security, LNCS, Vol. 7459, Springer, 2012, pp. 433–450.
56.
Y.Desmedt and K.Kurosawa, Electronic voting: Starting over?, in: ISC’05: International Conference on Information Security, LNCS, Vol. 3650, Springer, 2005, pp. 329–343. doi:10.1007/11556992_24.
57.
D.Dolev, C.Dwork and M.Naor, Non-malleable cryptography, in: STOC’91: 23rd Theory of Computing Symposium, ACM Press, 1991, pp. 542–552. doi:10.1145/103418.103474.
58.
D.Dolev, C.Dwork and M.Naor, Nonmalleable cryptography, Journal on Computing30(2) (2000), 391–437.
59.
A.Fiat and A.Shamir, How to prove yourself: Practical solutions to identification and signature problems, in: CRYPTO’86: 6th International Cryptology Conference, LNCS, Vol. 263, Springer, 1987, pp. 186–194. doi:10.1007/3-540-47721-7_12.
60.
A.Fraser, E.A.Quaglia and B.Smyth, A critique of game-based definitions of receipt-freeness for voting, in: ProveSec’19: 13th International Conference on Provable and Practical Security, LNCS, Springer, 2019.
61.
R.W.Gardner, S.Garera and A.D.Rubin, Coercion resistant end-to-end voting, in: FC’09: 13th International Conference on Financial Cryptography and Data Security, LNCS, Vol. 5628, Springer, 2009, pp. 344–361. doi:10.1007/978-3-642-03549-4_21.
62.
R.Gennaro, Achieving independence efficiently and securely, in: PODC’95: 14th Principles of Distributed Computing Symposium, ACM Press, 1995, pp. 130–136. doi:10.1145/224964.224979.
63.
R.Gennaro, A protocol to achieve independence in constant rounds, IEEE Transactions on Parallel and Distributed Systems11(7) (2000), 636–647. doi:10.1109/71.877748.
64.
K.Gjøsteen, The Norwegian Internet voting protocol, in: VoteID’11: 3rd International Conference on e-Voting and Identity, Springer, 2012, pp. 1–18.
65.
R.Gonggrijp and W.-J.Hengeveld, Studying the Nedap/Groenendaal ES3B Voting Computer: A computer security perspective, in: EVT’07: Electronic Voting Technology Workshop, USENIX Association, 2007.
66.
J.Groth, Efficient maximal privacy in boardroom voting and anonymous broadcast, in: FC’04: 8th International Conference on Financial Cryptography, LNCS, Vol. 3110, Springer, 2004, pp. 90–104. doi:10.1007/978-3-540-27809-2_10.
67.
J.Groth, Simulation-sound NIZK proofs for a practical language and constant size group signatures, in: ASIACRYPT’02: 12th International Conference on the Theory and Application of Cryptology and Information Security, LNCS, Vol. 4284, Springer, 2006, pp. 444–459.
68.
A.Gumbel, Steal This Vote: Dirty Elections and the Rotten History of Democracy in America, Nation Books, 2005.
69.
S.Haber, J.Benaloh and S.Halevi, The Helios e-Voting Demo for the IACR, 2010, International Association for Cryptologic Research. http://www.iacr.org/elections/eVoting/heliosDemo.pdf.
70.
T.Haines and B.Smyth, Surveying definitions of coercion resistance, 2020.
71.
F.Hao, P.Y.A.Ryan and P.Zieliński, Anonymous voting by two-round public discussion, Journal of Information Security4(2) (2010), 62–67.
72.
J.Heather and S.Schneider, A formal framework for modelling coercion resistanc and receipt freeness, in: FM’12: 18th International Symposium on Formal Methods, LNCS, Springer, 2012, pp. 217–231.
73.
A.Hevia and M.A.Kiwi, Electronic jury voting protocols, in: LATIN’02: Theoretical Informatics, LNCS, Vol. 2286, Springer, 2002, pp. 415–429.
D.W.Jones and B.Simons, Broken Ballots: Will Your Vote Count?, CSLI Lecture Notes, Vol. 204, Center for the Study of Language and Information, Stanford University, 2012.
76.
A.Juels, D.Catalano and M.Jakobsson, Coercion-resistant electronic elections, in: WPES’05: 4th Workshop on Privacy in the Electronic Society, ACM Press, 2005, pp. 61–70. doi:10.1145/1102199.1102213.
77.
A.Juels, D.Catalano and M.Jakobsson, Coercion-resistant electronic elections, in: Towards Trustworthy Elections: New Directions in Electronic Voting, D.Chaum, M.Jakobsson, R.L.Rivest and P.Y.Ryan, eds, LNCS, Vol. 6000, Springer, 2010, pp. 37–63. doi:10.1007/978-3-642-12980-3_2.
78.
J.Katz and Y.Lindell, Introduction to Modern Cryptography, Chapman & Hall/CRC, 2007. doi:10.1201/9781420010756.
79.
J.G.Kelley, Monitoring Democracy: When International Election Observation Works, and Why It Often Fails, Princeton University Press, 2012.
80.
D.Khader, B.Smyth, P.Y.A.Ryan and F.Hao, A fair and robust voting system by broadcast, in: EVOTE’12: 5th International Conference on Electronic Voting, Lecture Notes in Informatics, Vol. 205, Gesellschaft für Informatik, 2012, pp. 285–299.
81.
S.Khazaei and M.Rezaei-Aliabadi, A rigorous security analysis of a decentralized electronic voting protocol in the universal composability framework, Journal of Information Security and Applications43 (2018), 99–109. doi:10.1016/j.jisa.2018.10.010.
82.
A.Kiayias and M.Yung, Self-tallying elections and perfect ballot secrecy, in: PKC’01: 3rd International Workshop on Practice and Theory in Public Key Cryptography, LNCS, Vol. 2274, Springer, 2002, pp. 141–158.
83.
A.Kiayias, T.Zacharias and B.Zhang, End-to-end verifiable elections in the standard model, in: EUROCRYPT’15: 34th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 9057, Springer, 2015, pp. 468–498.
84.
P.Klus, B.Smyth and M.D.Ryan, ProSwapper: Improved equivalence verifier for ProVerif, 2010, http://www.bensmyth.com/proswapper.php.
85.
T.Kohno, A.Stubblefield, A.D.Rubin and D.S.Wallach, Analysis of an electronic voting system, in: S&P’04: 25th Security and Privacy Symposium, IEEE Computer Society, 2004, pp. 27–40.
86.
R.Küsters, T.Truderung and A.Vogt, Accountability: Definition and relationship to verifiability, in: CCS’10: 17th ACM Conference on Computer and Communications Security, ACM Press, 2010, pp. 526–535. doi:10.1145/1866307.1866366.
87.
R.Küsters, T.Truderung and A.Vogt, Clash attacks on the verifiability of E-voting systems, in: S&P’12: 33rd IEEE Symposium on Security and Privacy, IEEE Computer Society, 2012, pp. 395–409.
88.
R.Küsters, T.Truderung and A.Vogt, A game-based definition of coercion-resistance and its applications, Journal of Computer Security20(6) (2012), 709–764. doi:10.3233/JCS-2012-0444.
89.
J.Lepore, Rock, Paper, Scissors: How we used to vote, Annals of Democracy, The New Yorker (2008).
90.
A.Lijphart and B.Grofman, Choosing an Electoral System: Issues and Alternatives, Praeger, 1984.
91.
E.Maaten, Towards remote e-voting: Estonian case, Electronic Voting in Europe-Technology, Law, Politics and Society47 (2004), 83–100.
92.
A.McCarthy, B.Smyth and E.A.Quaglia, Hawk and aucitas: E-auction schemes from the Helios and Civitas e-voting schemes, in: FC’14: 18th International Conference on Financial Cryptography and Data Security, LNCS, Vol. 8437, Springer, 2014, pp. 51–63.
93.
M.Meyer and B.Smyth, Exploiting re-voting in the Helios election system, Information Processing Letters (2019), 14–19.
94.
M.Michels and P.Horster, Some remarks on a receipt-free and universally verifiable mix-type voting scheme, in: ASIACRYPT’96: International Conference on the Theory and Application of Cryptology and Information Security, LNCS, Vol. 1163, Springer, 1996, pp. 125–132. doi:10.1007/BFb0034841.
95.
J.Mill, The Ballot, in: The Westminster Review, Vol. 13, Robert Heward, 1830.
96.
T.Moran and M.Naor, Receipt-free universally-verifiable voting with everlasting privacy, in: CRYPTO’06: 26th International Cryptology Conference, LNCS, Vol. 4117, Springer, 2006, pp. 373–392.
97.
C.A.Neff, Practical High Certainty Intent Verification for Encrypted Votes, Technical Report, VoteHere, 2004.
98.
C.A.Neff and J.Adler, Verifiable e-Voting: Indisputable electronic elections at polling places, Technical Report, VoteHere, 2003.
99.
NIST, Secure Hash Standard (SHS), FIPS PUB, 180-4, Information Technology Laboratory, National Institute of Standards and Technology, 2012.
100.
P.Norris, Why Elections Fail, Cambridge University Press, 2015. doi:10.1017/CBO9781107280908.
101.
Organization for Security and Co-operation in Europe, Document of the Copenhagen Meeting of the Conference on the Human Dimension of the CSCE, 1990.
102.
Organization of American States, American Convention on Human Rights, “Pact of San Jose, Costa Rica”, 1969.
103.
M.Paiola and B.Blanchet, Verification of security protocols with lists: From length one to unbounded length, in: POST’12: First Conference on Principles of Security and Trust, LNCS, Vol. 7215, Springer, 2012, pp. 69–88. doi:10.1007/978-3-642-28641-4_5.
104.
B.Pfitzmann, Breaking efficient anonymous channel, in: EUROCRYPT’94: 11th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 950, Springer, 1994, pp. 332–340. doi:10.1007/BFb0053448.
105.
B.Pfitzmann and A.Pfitzmann, How to break the direct RSA-implementation of mixes, in: EUROCRYPT’89: 6th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 434, Springer, 1989, pp. 373–381.
106.
G.V.Post, Using re-voting to reduce the threat of coercion in elections, Electronic Government, an International Journal7(2) (2010), 168–182. doi:10.1504/EG.2010.030926.
107.
E.A.Quaglia and B.Smyth, Authentication with weaker trust assumptions for voting systems, in: AFRICACRYPT’18: 10th International Conference on Cryptology in Africa, LNCS, Springer, 2018.
108.
E.A.Quaglia and B.Smyth, Secret, verifiable auctions from elections, Theoretical Computer Science730 (2018), 44–92. doi:10.1016/j.tcs.2018.03.022.
109.
E.A.Quaglia and B.Smyth, A short introduction to secrecy and verifiability for elections, 2018, arXiv, Report 1702.03168.
110.
T.Saalfeld, On dogs and whips: Recorded votes, in: Parliaments and Majority Rule in Western Europe, H.Döring, ed., St. Martin’s Press, 1995, Chapter 16.
111.
K.Sako and J.Kilian, Receipt-free mix-type voting scheme: A practical solution to the implementation of a voting booth, in: EUROCRYPT’95: 12th International Conference on the Theory and Applications of Cryptographic Techniques, LNCS, Vol. 921, Springer, 1995, pp. 393–403.
112.
B.Schoenmakers, A simple publicly verifiable secret sharing scheme and its application to electronic voting, in: CRYPTO’99: 19th International Cryptology Conference, LNCS, Vol. 1666, Springer, 1999, pp. 148–164. doi:10.1007/3-540-48405-1_10.
113.
N.Schweikardt, Arithmetic, first-order logic, and counting quantifiers, ACM Transactions on Computational Logic6(3) (2005), 634–671. doi:10.1145/1071596.1071602.
114.
V.Shoup, Sequences of games: A tool for taming complexity in security proofs, 2004.
115.
B.Smyth, Formal verification of cryptographic protocols with automated reasoning, PhD thesis, School of Computer Science, University of Birmingham, 2011.
116.
B.Smyth, Verifiability of Helios Mixnet, in: Voting’18: 3rd Workshop on Advances in Secure Electronic Voting, LNCS, Springer, 2018.
117.
B.Smyth, Athena: A verifiable, coercion-resistant voting system with linear complexity, 2019.
118.
B.Smyth, First-past-the-post suffices for ranked voting, 2017, https://bensmyth.com/publications/2017-FPTP-suffices-for-ranked-voting/.
119.
B.Smyth, Replay attacks that violate ballot secrecy in Helios, 2012, Cryptology ePrint Archive, Report 2012/185.
120.
B.Smyth, A foundation for secret, verifiable elections, 2018, Cryptology ePrint Archive, Report 2018/225 (version 20180301:164045).
B.Smyth and D.Bernhard, Ballot secrecy and ballot independence coincide, in: ESORICS’13: 18th European Symposium on Research in Computer Security, LNCS, Vol. 8134, Springer, 2013, pp. 463–480.
126.
B.Smyth and D.Bernhard, Ballot secrecy and ballot independence: Definitions and relations, 2014, Cryptology ePrint Archive, Report 2013/235 (version 20141010:082554).
127.
B.Smyth and V.Cortier, A note on replay attacks that violate privacy in electronic voting schemes, Technical Report, RR-7643, INRIA, 2011.
128.
B.Smyth, S.Frink and M.R.Clarkson, Election Verifiability: Cryptographic Definitions and an Analysis of Helios and JCJ, 2017, Cryptology ePrint Archive, Report 2015/233 (version 20170213:132559).
129.
B.Smyth and Y.Hanatani, Non-malleable encryption with proofs of plaintext knowledge and applications to voting, International Journal of Security and Networks14(4) (2019), 191–204. doi:10.1504/IJSN.2019.103150.
130.
B.Smyth, Y.Hanatani and H.Muratani, NM-CPA secure encryption with proofs of plaintext knowledge, in: IWSEC’15: 10th International Workshop on Security, LNCS, Vol. 9241, Springer, 2015, pp. 115–134.
131.
B.Smyth and A.Pironti, Truncating TLS connections to violate beliefs in web applications, in: WOOT’13: 7th USENIX Workshop on Offensive Technologies, USENIX Association, 2013(First appeared at Black Hat USA 2013).
132.
B.Smyth and A.Pironti, Truncating TLS Connections to Violate Beliefs in Web Applications, Technical Report, hal-01102013, INRIA, 2015.
133.
D.Springall, T.Finkenauer, Z.Durumeric, J.Kitcat, H.Hursti, M.MacAlpine and J.A.Halderman, Security analysis of the Estonian Internet Voting System, in: CCS’14: 21st ACM Conference on Computer and Communications Security, ACM Press, 2014, pp. 703–715. doi:10.1145/2660267.2660315.
134.
C.Staff, ACM’s 2014 General Election: Please take this opportunity to vote, Communications of the ACM57(5) (2014), 9–17. doi:10.1145/2597769.
135.
Y.Tsiounis and M.Yung, On the security of ElGamal based encryption, in: PKC’98: First International Workshop on Practice and Theory in Public Key Cryptography, LNCS, Vol. 1431, Springer, 1998, pp. 117–134.
136.
G.Tsoukalas, K.Papadimitriou, P.Louridas and P.Tsanakas, From Helios to Zeus, Journal of Election Technology and Systems1(1) (2013).
137.
UK Electoral Commission, Key Issues and Conclusions: May 2007 Electoral Pilot Schemes, 2007.
138.
United Nations, Universal Declaration of Human Rights, 1948.
139.
D.Unruh and J.Müller-Quade, Universally composable incoercibility, in: CRYPTO’10: 30th International Cryptology Conference, LNCS, Vol. 6223, Springer, 2010, pp. 411–428.
140.
D.Wikström, Simplified submission of inputs to protocols, in: SCN’08: 6th International Conference on Security and Cryptography for Networks, LNCS, Vol. 5229, Springer, 2008, pp. 293–308. doi:10.1007/978-3-540-85855-3_20.
141.
D.Wikström, Verificatum: How to Implement a Stand-Alone Verifier for the Verificatum Mix-Net (VMN Version 3.0.2), 2016, http://www.verificatum.com/files/vmnum-3.0.2.pdf.
142.
D.Wikström, Simplified Submission of Inputs to Protocols, 2006, Cryptology ePrint Archive, Report 2006/259.
143.
S.Wolchok, E.Wustrow, J.A.Halderman, H.K.Prasad, A.Kankipati, S.K.Sakhamuri, V.Yagati and R.Gonggrijp, Security analysis of India’s electronic voting machines, in: CCS’10: 17th ACM Conference on Computer and Communications Security, ACM Press, 2010, pp. 1–14.
144.
S.Wolchok, E.Wustrow, D.Isabel and J.A.Halderman, Attacking the Washington, D.C. Internet voting system, in: FC’12: 16th International Conference on Financial Cryptography and Data Security, LNCS, Vol. 7397, Springer, 2012, pp. 114–128. doi:10.1007/978-3-642-32946-3_10.