WO2003069448A2 - A coercion-free voting scheme - Google Patents

A coercion-free voting scheme Download PDF

Info

Publication number
WO2003069448A2
WO2003069448A2 PCT/US2003/004798 US0304798W WO03069448A2 WO 2003069448 A2 WO2003069448 A2 WO 2003069448A2 US 0304798 W US0304798 W US 0304798W WO 03069448 A2 WO03069448 A2 WO 03069448A2
Authority
WO
WIPO (PCT)
Prior art keywords
ballot
voter
confirmation value
received
coercion
Prior art date
Application number
PCT/US2003/004798
Other languages
French (fr)
Other versions
WO2003069448A3 (en
Inventor
C. Andrew Neff
Original Assignee
Votehere, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Votehere, Inc. filed Critical Votehere, Inc.
Priority to EP03711100A priority Critical patent/EP1532556A4/en
Priority to KR10-2004-7012617A priority patent/KR20040078165A/en
Priority to AU2003215282A priority patent/AU2003215282A1/en
Priority to JP2003568506A priority patent/JP2005526307A/en
Priority to CA002475136A priority patent/CA2475136C/en
Publication of WO2003069448A2 publication Critical patent/WO2003069448A2/en
Publication of WO2003069448A3 publication Critical patent/WO2003069448A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Definitions

  • This application is directed to the technical field of security measures for electronically-conducted elections .
  • Figure 1 is a block diagram showing a suitable environment for implementing the scheme.
  • FIG. 2 is a flow diagram showing steps typically performed in accordance with the scheme.
  • the scheme described herein allows the voter to remain in exclusive possession of secret information that is used by a voter to cast a ballot. It allows a voter that has been pushed to reveal secret information to provide a false answer without being discovered. After providing the false answer, the voter can then proceed and cast a "real" vote on his or her own. This is achieved while still maintaining a collection of election audit properties that are characteristic of good electronic election protocols.
  • An election scheme is coercion safe if, even in the coercion threat model, its transcript can not be feasibly forged by any collusion of authorities that, together, are unable to compute a tally. Further, in the case of a collusion that is able to compute a tally, the extent of the forgery is limited by the number of voters coerced.
  • Voters participate in a secret "voter registration" process in prior to the start of the election. This process must make the voter safe from coercion by standard physical means. In practice, this means the voter must report to a county registration center, where physical privacy is guaranteed. However, the voter need only participate in this registration process once. Thereafter, the method of this invention will protect the voter against coercion through the course of multiple elections.
  • each voter selects a secret "confirmation code,” or "confirmation pass phrase.”
  • the "confirmation pass phrase" is encrypted by the voter and the encrypted form is publicly registered to that voter. 4.
  • each voter In order to cast a ballot, each voter must supply an accompanying (encrypted) pass phrase.
  • the accompanying pass phrase does not have any effect on whether the ballot is "accepted” or not - so if the voter is being "supervised” by a coercer, the voter is still free to supply any pass phrase whether it matches the voter's registered pass phrase or not.
  • the coercer will not be able to tell the difference.
  • the accompanying pass phrase will have an effect on whether the ballot it accompanies is counted or not. The mechanism for this (described next) nevertheless assures that
  • the tabulation (counting) of encrypted votes is accomplished roughly by randomly mixing voted ballot - encrypted pass phrase pairs as well as the original registration data. After randomization, the appropriate data is decrypted by election authorities holding shares of the encryption key. Only when a match between a pass phrase in the randomized ballot data matches a pass phrase in the randomized registration data is the ballot counted. The matching is done without ever decrypting either of the pass phrases. Since all the randomization is done by way of a cryptographic verifiable shuffle, the results can still be inspected and verified by anyone for accuracy.
  • FIG. 1 and the following discussion provide a brief, general description of a suitable computing environment in which aspects of the invention can be implemented.
  • aspects and embodiments of the invention will be described in the general context of computer-executable instructions, such as routines executed by a general-purpose computer, e.g., a server or personal computer.
  • a general-purpose computer e.g., a server or personal computer.
  • Those skilled in the relevant art will appreciate that the invention can be practiced with other computer system configurations, including Internet appliances, hand-held devices, wearable computers, cellular or mobile phones, multi-processor systems, microprocessor- based or programmable consumer electronics, set-top boxes, network PCs, mini-computers, mainframe computers and the like.
  • the invention can be embodied in a special purpose computer or data processor that is specifically programmed, configured or constructed to perform one or more of the computer-executable instructions explained in detail below.
  • computer refers to any of the above devices, as well as any data processor.
  • the invention can also be practiced in distributed computing environments, where tasks or modules are performed by remote processing devices, which are linked through a communications network, such as a Local Area Network ("LAN” ), Wide Area Network (“WAN” ) or the Internet.
  • LAN Local Area Network
  • WAN Wide Area Network
  • program modules or sub-routines may be located in both local and remote memory storage devices.
  • aspects of the invention described below may be stored or distributed on computer-readable media, including magnetic and optically readable and removable computer discs, stored as firmware in chips (e.g., EEPROM chips), as well as distributed electronically over the Internet or over other networks (including wireless networks).
  • EEPROM chips electrically erasable programmable read-only memory
  • portions of the invention may reside on a server computer, while corresponding portions reside on a client computer. Data structures and transmission of data particular to aspects of the invention are also encompassed within the scope of the invention.
  • one embodiment of the invention employs a computer 100, such as a personal computer or workstation, having one or more processors 101 coupled to one or more user input devices 102 and data storage devices 104.
  • the computer is also coupled to at least one output device such as a display device 106 and one or more optional additional output devices 108 (e.g., printer, plotter, speakers, tactile or olfactory output devices, etc.).
  • the computer may be coupled to external computers, such as via an optional network connection 110, a wireless transceiver 112, or both.
  • the input devices 102 may include a keyboard and/or a pointing device such as a mouse. Other input devices are possible such as a microphone, joystick, pen, game pad, scanner, digital camera, video camera, and the like.
  • the data storage devices 104 may include any type of computer-readable media that can store data accessible by the computer 100, such as magnetic hard and floppy disk drives, optical disk drives, magnetic cassettes, tape drives, flash memory cards, digital video disks (DVDs), Bernoulli cartridges, RAMs, ROMs, smart cards, etc. Indeed, any medium for storing or transmitting computer-readable instructions and data may be employed, including a connection port to a network such as a local area network (LAN), wide area network (WAN) or the Internet (not shown in Figure 1). Aspects of the invention may also be practiced in a variety of other computing environments.
  • LAN local area network
  • WAN wide area network
  • the Internet not shown in Figure 1
  • FIG. 2 is a flow diagram showing steps typically performed in accordance with the scheme. These steps are described in more detail below.
  • step 201 voters are registered to add them to the list of registered voters eligible to cast votes, and to provide them with voting credentials.
  • the election is initialized to assign ballot choice values to candidates.
  • step 203 voters cast their votes by submitting encrypted ballots.
  • step 204 the votes cast in step 203 are tabulated, and added to the vote total only if the validity of the received ballot can be verified. After step 204, these steps conclude.
  • Definition 1 Henceforth, we call any participant in the election process, or any individual who exerts, or attempts to exert, an influence on the election process a player.
  • voters, election officials, and tabulators are all players, but so are all individuals who seek to influence the election outcome even though they may have no official role in it.
  • Player i coerces player Pi ⁇ P obtains from Pi any information that the election protocol does not require P 2 to reveal to Pi .
  • Identical terminology is used when the coercer is actually a group of players. That is, no aspects of the invention limit its utility to the case were the coercer is a single individual. Therefore, henceforth, we will not endevor to make an explicit distinction between coercion by an individual and coercion by a group of individuals acting together.
  • Coercible information is all information whose authenticity can be "verified” by the coercer. If the authenticity can not be verified, then the voter (or individual being coerced) is free to lie about it to the coercer.
  • the invention requires something roughly like digital ballot box. At very least, this is a storage device connected to a network, or otherwise openly accessible to voters.
  • a standard web server and database application provides an embodiment of such a device. In practice, more security measures would be built into, or around this device in order to protect against damage or destruction caused by either malicious or natural forces.
  • the invention also requires that voters be able to translate their choices into a digital representation, and further encrypt that representation by the methods presented in the remainder of this invention.
  • a generic PC provides an embodiment of such a device.
  • bulletin board Since the transmission and storage of information are the key elements of this invention rather than the particular technologies that facilitate transmission and storage, we will adopt the more generic term bulletin board to denote the openly accessible storage device, and we denote the act of recording information on (or in) the bulletin board as posting. (In the voting context, this corresponds, intuitively, to the act of "casting a ballot” .) Further, we denote the strings, or records of information that are posted to the bulletin board as posts. (In the voting context, these correspond, intuitively, to voted ballots.)
  • Posts are always appended to the bulletin board, BB, that is, deletions are not allowed. And posting is an atomic transaction, that is, at any given time, BB will contain exactly k posts, for some non-negative integer k.
  • PP-2 Any player may append a post regardless of the state (contents) of BB.
  • PP-3 At any given time, a tally can be formed, and it is unique. That is, it is not possible (or at least "overwhelmingly improbable"), that BB is in some state, C(BB) that is "invalid" for tabulation, and the tally, tally(C(BB)) : C ⁇ N is well defined.
  • PP-4 A collection of players either can or cannot compute the tally independent of the state of BB.
  • C C(BB) be any state of BB (sequence of posts). If p is a post, we denote by C ® p the state of BB after appending the single post p. We also use the notation tc to denote the tally, tally(C).
  • a vote function (on BB) is a map characterized by the following vf-1. For all p € P
  • P ⁇ A ⁇ ⁇ B tJ ) a (8) independent of the values of i, j, and the state of the bulletin board, C( ⁇ ).
  • the protocol admits a vote function. (Note that this does not require that the vote function be computable by any of the players, only that it exist.)
  • Theorem 1 If an election protocol has partitionable tabulation, and a coercer contains a collection of players capable of computing a tally, then for any 1 ⁇ i ⁇ I, the value of ⁇ (v t , C(BB)) is coercible.
  • the coercer can step through the sequence of ballot box images, at each point computing the tally (see assumption PP-4) and requiring v l to "add a vote" of a particular value. By re-computing the tally with ⁇ t 's post appended, the coercer can determine which posts were added by ⁇ L and their cumulative effect on the tally. Note that this presumes a model in which "after the fact" coercion is allowed. That is, the coercer may interact with the voter after the bulletin board has been closed. However, this assumption can be eliminated with a reasonable assumption on the computing power of voters. In particular, we can show that the coercer is able, by way of a single coercion event, to
  • a partitionable election protocol is coercion resistant if, under the assumption that there is no coercer capable of independently computing a tally:
  • a partitionable election protocol is coercion safe if, it is coercion resistant and, under all collusion scenarios,
  • ⁇ ⁇ chooses a random r t G (g), and a random ⁇ , 6 Z,, and forms
  • ⁇ t obtains from A 3 the pair (U tJ , W ⁇ ) given by
  • ⁇ x obtains a signature on (U ⁇ , W ⁇ ) from A 3 as a receipt.
  • v x knows that one specific authority, Aj, is not a coercer, and fewer than t authorities (the number necessary to compute a tally) are colluding to coerce (though v z may not explicitly know their identities), the value of r t is not coercible. This is because ⁇ x can justify the validity of any r t and a % by lying to the coercer about the value of (U t j, V % j) and presenting a forged (i.e. simulated) Chaum-Pedersen proof. The requirement that ⁇ ⁇ knows a specific honest Aj may be relaxed if we assume that it is acceptable for ⁇ , to be caught lying to the coercer.
  • ⁇ ⁇ can pick an J at random, 1 ⁇ J ⁇ n, assume that A j is honest, and then know that the chance of being caught lying is at most (t — l)/n.
  • V-2 V-2.
  • v ⁇ then chooses random f l2 G Z q , computes s t — r ⁇ / ⁇ ( ⁇ ) and encrypts it as
  • E ⁇ ( (A, B t ) , (C t , A) , Q B . Q? D ) (17) V-5.
  • ⁇ t would be issued a receipt for E ⁇ .
  • T-5 The authorities jointly decrypt all of the pairs (A m , B m ), and ( ⁇ m ⁇ , ⁇ mt ), 1 ⁇ ⁇ ⁇ I, 1 ⁇ m ⁇ M. Let these be, respectively, a m , and x m ⁇ .
  • T2-2 The authorities execute a verifiable shuffle of the sequence of ElGamal pairs, ⁇ U l , W ), resulting in output set of ElGamal pairs where ⁇ ⁇ , ⁇ ⁇ G ⁇ g)-
  • the properties of this mix are that the set of decrypted values of the output sequence are exactly the same as the set of decrypted values of the input sequence, but in randomly permuted order.
  • the protocol, as presented is clearly not coercion safe. If t or more authorities collude, they can decrypt the original voter secrets, r t , and this allows them to impersonate all the voters. The problem can be fixed by adding an anonymous signature requirement to the ballot casting operation. (See aforementioned patent applications for a detailed description of an anonymous signature protocol that is "authority free” .) In this case, even if a malicious agent has access to a secret, r ⁇ , it can not affect the tally without the corresponding private signing key, which can not be obtained without coercion. The reason for this should be clear.
  • An authority free, anonymous signature on the voted ballot prevents the authorities (even in collusion) from linking the original encrypted ballot (input to the verifiable shuffle, or mix) to an individual the way they can with a standard digital signature.
  • a standard digital signature explicitly links signed data to a registered individual.
  • An anonymous signature only links signed data to a member of a set, or group, of individuals.

Abstract

A facility for conducting a coercion-resistant electronic collection is described. The facility receives from the voter a first voter conformation value. At a later time, the facility receives from the voter an encrypted ballot and a second voter confirmation value. Without regard for the value of the received second voter confirmation value, the facility adds the received ballot to a publicly-available list of cast ballots. After the addition, members of the public are able to verify the addition of the received ballot to the list without being able to determine whether the ballot will be counted. The facility counts the ballot if and only the second voter confirmation value received with the ballot matches the received first voter confirmation value.

Description

A Coercion-free Voting Scheme
Technical Field
This application is directed to the technical field of security measures for electronically-conducted elections .
Background
Various electronic and/or digital election protocols exist that provide cryptographic privacy to voters. With many of these election protocols, the voter needs to keep certain types of information secret. An example of such secret information is a voter's private key. These existing election protocols can be problematic, however, if a person threatens, or entices a voter (e.g., financially) to give up the secret information. When this type of coercion occurs, it is possible for the person to either know how the voter voted, or vote on his or her behalf.
Similar problems arise with the use of absentee vote-by-mail systems. For example, a husband might force his wife to vote a certain way. The threat of coercion intensifies in a networked world, where people can "look over each other's shoulders" from thousands of miles away. This threat is serious enough that it is often considered a reason to not allow remote electronic voting.
Under threat models that do not include coercion, the notion of a universally verifiable election is fundamental. In the past, it has been considered important that a "computing device based" election scheme be universally verifiable in order to be considered deployable on a wide scale. During elections of this type, transcripts are published that include the final tally. Under reasonable assumptions about the safety of keys, and the intractability of some computational problems, these transcripts cannot be feasibly forged by any collection of malicious agents. Although it would be desirable to carry this property over to election schemes under the threat of coercion, this may be difficult. Election schemes under the threat of coercion lack certain very basic properties, which have generally been taken for granted in the election protocol literature, and hence may not be practical in a large-scale implementation.
Brief Description of the Drawings
Figure 1 is a block diagram showing a suitable environment for implementing the scheme.
Figure 2 is a flow diagram showing steps typically performed in accordance with the scheme.
Description
The scheme described herein allows the voter to remain in exclusive possession of secret information that is used by a voter to cast a ballot. It allows a voter that has been pushed to reveal secret information to provide a false answer without being discovered. After providing the false answer, the voter can then proceed and cast a "real" vote on his or her own. This is achieved while still maintaining a collection of election audit properties that are characteristic of good electronic election protocols. An election scheme is coercion safe if, even in the coercion threat model, its transcript can not be feasibly forged by any collusion of authorities that, together, are unable to compute a tally. Further, in the case of a collusion that is able to compute a tally, the extent of the forgery is limited by the number of voters coerced.
At a summary level, the invention works as follows:
1. Voters participate in a secret "voter registration" process in prior to the start of the election. This process must make the voter safe from coercion by standard physical means. In practice, this means the voter must report to a county registration center, where physical privacy is guaranteed. However, the voter need only participate in this registration process once. Thereafter, the method of this invention will protect the voter against coercion through the course of multiple elections.
2. During the registration process, each voter selects a secret "confirmation code," or "confirmation pass phrase."
3. The "confirmation pass phrase" is encrypted by the voter and the encrypted form is publicly registered to that voter. 4. In order to cast a ballot, each voter must supply an accompanying (encrypted) pass phrase. The accompanying pass phrase does not have any effect on whether the ballot is "accepted" or not - so if the voter is being "supervised" by a coercer, the voter is still free to supply any pass phrase whether it matches the voter's registered pass phrase or not. The coercer will not be able to tell the difference. However, the accompanying pass phrase will have an effect on whether the ballot it accompanies is counted or not. The mechanism for this (described next) nevertheless assures that
(a) Anyone, including the coercer, can inspect the ballot box contents and the tally to determine whether the tally is accurate or not (i.e. the election is Universally Verifiable).
(b) In spite of the full availability of election data, the encryption and count mechanisms ensure that the coercer will still not be able to determine what vote, if any cast by the voter is actually included in the count.
5. The tabulation (counting) of encrypted votes is accomplished roughly by randomly mixing voted ballot - encrypted pass phrase pairs as well as the original registration data. After randomization, the appropriate data is decrypted by election authorities holding shares of the encryption key. Only when a match between a pass phrase in the randomized ballot data matches a pass phrase in the randomized registration data is the ballot counted. The matching is done without ever decrypting either of the pass phrases. Since all the randomization is done by way of a cryptographic verifiable shuffle, the results can still be inspected and verified by anyone for accuracy.
Figure 1 and the following discussion provide a brief, general description of a suitable computing environment in which aspects of the invention can be implemented. Although not required, aspects and embodiments of the invention will be described in the general context of computer-executable instructions, such as routines executed by a general-purpose computer, e.g., a server or personal computer. Those skilled in the relevant art will appreciate that the invention can be practiced with other computer system configurations, including Internet appliances, hand-held devices, wearable computers, cellular or mobile phones, multi-processor systems, microprocessor- based or programmable consumer electronics, set-top boxes, network PCs, mini-computers, mainframe computers and the like. The invention can be embodied in a special purpose computer or data processor that is specifically programmed, configured or constructed to perform one or more of the computer-executable instructions explained in detail below. Indeed, the term "computer" , as used generally herein, refers to any of the above devices, as well as any data processor.
The invention can also be practiced in distributed computing environments, where tasks or modules are performed by remote processing devices, which are linked through a communications network, such as a Local Area Network ("LAN" ), Wide Area Network ("WAN" ) or the Internet. In a distributed computing environment, program modules or sub-routines may be located in both local and remote memory storage devices. Aspects of the invention described below may be stored or distributed on computer-readable media, including magnetic and optically readable and removable computer discs, stored as firmware in chips (e.g., EEPROM chips), as well as distributed electronically over the Internet or over other networks (including wireless networks). Those skilled in the relevant art will recognize that portions of the invention may reside on a server computer, while corresponding portions reside on a client computer. Data structures and transmission of data particular to aspects of the invention are also encompassed within the scope of the invention.
Referring to Figure 1, one embodiment of the invention employs a computer 100, such as a personal computer or workstation, having one or more processors 101 coupled to one or more user input devices 102 and data storage devices 104. The computer is also coupled to at least one output device such as a display device 106 and one or more optional additional output devices 108 (e.g., printer, plotter, speakers, tactile or olfactory output devices, etc.). The computer may be coupled to external computers, such as via an optional network connection 110, a wireless transceiver 112, or both.
The input devices 102 may include a keyboard and/or a pointing device such as a mouse. Other input devices are possible such as a microphone, joystick, pen, game pad, scanner, digital camera, video camera, and the like. The data storage devices 104 may include any type of computer-readable media that can store data accessible by the computer 100, such as magnetic hard and floppy disk drives, optical disk drives, magnetic cassettes, tape drives, flash memory cards, digital video disks (DVDs), Bernoulli cartridges, RAMs, ROMs, smart cards, etc. Indeed, any medium for storing or transmitting computer-readable instructions and data may be employed, including a connection port to a network such as a local area network (LAN), wide area network (WAN) or the Internet (not shown in Figure 1). Aspects of the invention may also be practiced in a variety of other computing environments.
Figure 2 is a flow diagram showing steps typically performed in accordance with the scheme. These steps are described in more detail below. In step 201, voters are registered to add them to the list of registered voters eligible to cast votes, and to provide them with voting credentials. In step 202, the election is initialized to assign ballot choice values to candidates. In step 203, voters cast their votes by submitting encrypted ballots. In step 204, the votes cast in step 203 are tabulated, and added to the vote total only if the validity of the received ballot can be verified. After step 204, these steps conclude.
1 Coercion Implications of Partitionable Tabulation
The purpose of this section is to
1. Characterize a class of election schemes that includes the vast majority of schemes previously studied, and also seems likely to include all schemes that are "practical" for large scale, public elections.
2. Establish some bounds on what can be achieved by schemes in this class under the coercion threat model.
Definition 1 Henceforth, we call any participant in the election process, or any individual who exerts, or attempts to exert, an influence on the election process a player. Thus voters, election officials, and tabulators are all players, but so are all individuals who seek to influence the election outcome even though they may have no official role in it.
Definition 2 Player i coerces player Pi ϊ P obtains from Pi any information that the election protocol does not require P2 to reveal to Pi . Identical terminology is used when the coercer is actually a group of players. That is, no aspects of the invention limit its utility to the case were the coercer is a single individual. Therefore, henceforth, we will not endevor to make an explicit distinction between coercion by an individual and coercion by a group of individuals acting together.
Definition 3 Coercible information is all information whose authenticity can be "verified" by the coercer. If the authenticity can not be verified, then the voter (or individual being coerced) is free to lie about it to the coercer. Definition 4 Recall that a tally is a function t : C → N = Z+ U {0}, where r = {ci, . . . , C(} is the "candidate slate" . We write
| t | = ∑ t(c i=l
The invention requires something roughly like digital ballot box. At very least, this is a storage device connected to a network, or otherwise openly accessible to voters. A standard web server and database application provides an embodiment of such a device. In practice, more security measures would be built into, or around this device in order to protect against damage or destruction caused by either malicious or natural forces. The invention also requires that voters be able to translate their choices into a digital representation, and further encrypt that representation by the methods presented in the remainder of this invention. A generic PC provides an embodiment of such a device.
Definition 5 Since the transmission and storage of information are the key elements of this invention rather than the particular technologies that facilitate transmission and storage, we will adopt the more generic term bulletin board to denote the openly accessible storage device, and we denote the act of recording information on (or in) the bulletin board as posting. (In the voting context, this corresponds, intuitively, to the act of "casting a ballot" .) Further, we denote the strings, or records of information that are posted to the bulletin board as posts. (In the voting context, these correspond, intuitively, to voted ballots.)
Let us now consider a set of very general properties that characterize a broad class of election protocols. The properties are considered in the absence of coercion. That is, in verifying a given property with respect to a particular protocol, we consider all potential protocol executions where the only information exchanged between players is that which is specified by the protocol. (We number these properties sequentially as PP-1, PP-2, etc.)
PP-1. Posts are always appended to the bulletin board, BB, that is, deletions are not allowed. And posting is an atomic transaction, that is, at any given time, BB will contain exactly k posts, for some non-negative integer k.
PP-2. Any player may append a post regardless of the state (contents) of BB. PP-3. At any given time, a tally can be formed, and it is unique. That is, it is not possible (or at least "overwhelmingly improbable"), that BB is in some state, C(BB) that is "invalid" for tabulation, and the tally, tally(C(BB)) : C → N is well defined.
PP-4. A collection of players either can or cannot compute the tally independent of the state of BB.
Recall that the voter role, O, is essentially a public list of players (eligible voters), {υ-[, . . . , Vk}. Also, we use C(BB) to denote the contents of BB at an arbitrary time, that is, the sequence of posts pi, . . . , pt- Let V be the the set of all players in the protocol, so O C V.
For simplicity of presentation, we assume that the ballot consists of one issue, that the candidate slate, T, is given by {ci, . . . , c ], and that each voter is allowed to choose (vote for) "at most one" candidate. Generalizing this setting to one that includes more general ballot types (that do not include "write-ins" ) is fairly straightforward.
Definition 6 Let C = C(BB) be any state of BB (sequence of posts). If p is a post, we denote by C ® p the state of BB after appending the single post p. We also use the notation tc to denote the tally, tally(C).
Definition 7 A vote function (on BB) is a map
Figure imgf000009_0001
characterized by the following vf-1. For all p € P
\ χ(p , C(BB)) \ G {0, l} (2) vf-2. For all C(BB), ii p g O, then (with "overwhelming probability" ) χ(p , C(BB)) = 0 (3)
Intuitively, this says that the protocol "only allows members of the voter role (eligible voters) to vote". vf-3. Foi all p £ V, if p posts p, then the following holds (with "overwhelming probability" ) for all q 6 P,
χ(q, C(BB) ® p) - χ(q, C(BB)) =
Figure imgf000010_0001
(4)
Intuitively, this says that the protocol "only allows a voter to vote on his own behalf". It rules out schemes that allow multiple voters to combine their votes into one or more posts. vf-4. For all 1 < i < I, and all 1 < j < k, if | χ(vτ, C(BB)) \ = 0, then υt can compute (with probability 1) a post p such that
*C(ββ)θp M - tC(ββ) (π) = j Q W φ j (5)
Intuitively, this simply says that if v% has "not yet voted", then υ can append a "vote" for any candidate. However, the statement does not preclude the possibility that the protocol may allow vτ to "cast a vote" and then later "change it" . (Nevertheless, the majority of protocols in the literature, which essentially allow each voter "one and only one chance to vote" , do satisfy this criteria.) vf-5. For all 1 < i < I, if | χ(vt, C(BB)) \ — 1, then vt can with at most negligible probability compute a post p satisfying
I tC(ββ)©p I > I tc(ββ) I (6)
Intuitively, this simply says that no voter may "vote more than once" . Again, however, the statement does not preclude the possibility that the protocol may allow a voter to "change a vote" or to "retract a vote" . (As before, the majority of protocols in the literature satisfy this criteria.)
Let Aυ be the event that vt computes a post, p, satisfying tc(ββ)θp (CJ ) - tc(β ) (CJ ) = _ 1 (7)
Let Bυ be the event that χ{vτ, C(BB)) (c3) = 1. vf-6. There is a constant, (0 < a < 1) such that, for all 1 < i < I, and all 1 < j < k, the conditional probability, ~P(AlJ \Blj) satisfies
P{Aυ \BtJ) = a (8) independent of the values of i, j, and the state of the bulletin board, C(ββ).
Intuitively, this says that if the protocol allows "a voter to change a vote at some time" then the protocol allows "any voter to change a vote at any time". However, it does not preclude the protocol from forbidding vote changes, which is more common in the literature. vf-7. For all 1 < i < I, and all 1 < j η < k, the conditional probability, P(AτJ \Bιη) satisfies
P(AtJ \B η) < e (9) where e > 0 is negligible.
Intuitively, this says that the protocol only allows "a voter to reduce the count for a candidate" if "that voter has voted for that candidate". Again, this does not preclude the protocol from forbidding vote changes.
PP-5. The protocol admits a vote function. (Note that this does not require that the vote function be computable by any of the players, only that it exist.)
Definition 8 An election protocol is said to have partitionable tabulation if and only if it satisfies PP-l-PP-5. For brevity, we will also use the term partitionable election protocol to describe any election protocol has partitionable tabulation.
Theorem 1 If an election protocol has partitionable tabulation, and a coercer contains a collection of players capable of computing a tally, then for any 1 < i < I, the value of χ(vt, C(BB)) is coercible.
Proof: (Sketch) The coercer can step through the sequence of ballot box images, at each point computing the tally (see assumption PP-4) and requiring vl to "add a vote" of a particular value. By re-computing the tally with υt's post appended, the coercer can determine which posts were added by υL and their cumulative effect on the tally. Note that this presumes a model in which "after the fact" coercion is allowed. That is, the coercer may interact with the voter after the bulletin board has been closed. However, this assumption can be eliminated with a reasonable assumption on the computing power of voters. In particular, we can show that the coercer is able, by way of a single coercion event, to
1. Impersonate the voter during the course of the election - thereby "adding any chosen vote to the bulletin board (ballot box)" , and consequently forging "part" of the election transcript.
2. Detect any attempts by the voter to independently change the vote.
Definition 9 A partitionable election protocol is coercion resistant if, under the assumption that there is no coercer capable of independently computing a tally:
CS-1. Ifp € V and vx 6 0, vt p, then p cannot compute χ(v , C(BB)) with probability higher than "random guess +e" .
CS-2. The election results are publicly verifiable.
Definition 10 A partitionable election protocol is coercion safe if, it is coercion resistant and, under all collusion scenarios,
CS-3. If tj is the "ideal tally" , then verification of the election guarantees
Figure imgf000012_0001
2 A Coercion Safe Election Protocol
We assume the standard ElGamal cryptographic setting: p and q are large primes with q\p — 1. A subgroup generator, g 6 Z* with \g\ — q, and h = gs with s shared by a (t, n) threshold scheme among n tabulation authorities, A , . • . , An.
The protocol we next describe is coercion resistant. We will later describe how it can be easily augmented to give a coercion safe protocol. The advantage of describing the weaker version first is that most of the difficulty lies in its construction. 2.1 Registration
Recall that we assume voters are safe from coercion during their registration session. Care must still be taken to assure that information exchanged during registration is not coercible afterwards. We denote the voter by υτ.
R-l. υτ chooses a random rt G (g), and a random α, 6 Z,, and forms
(UΛ, WΛ) = (ga', ha> ) (11)
R-2. For each 1 < j < n
R-2.1. υt obtains from A3 the pair (UtJ, Wυ) given by
(Uυ, Wυ) = (g > , h >) (12) where βl} 6 (g) is chosen randomly by A3.
R-2.2. υ% and A3 execute an interactive Chaum-Pedersen proof of validity for the relation \ogg U = logft Wιy That is, the challenge is generated randomly by v rather than via a hash function (Fiat-Shamir heuristic). This allows vτ to later produce simulated proofs in the face of coercion.
R-3. After checking each Chaum-Pedersen proof, vτ computes n n
( t, wt) = (Y[ u, π wiμ) (13) μ=0 μ=0
R-4. For each 1 < j < n, υx obtains a signature on (Uτ, Wτ) from A3 as a receipt.
R-5. {Uι, W%) is added to the voter roll, O. When the registration period ends, each authority should sign O.
Remark 1 As long as vx knows that one specific authority, Aj, is not a coercer, and fewer than t authorities (the number necessary to compute a tally) are colluding to coerce (though vz may not explicitly know their identities), the value of rt is not coercible. This is because υx can justify the validity of any rt and a% by lying to the coercer about the value of (Utj, V%j) and presenting a forged (i.e. simulated) Chaum-Pedersen proof. The requirement that υτ knows a specific honest Aj may be relaxed if we assume that it is acceptable for υ, to be caught lying to the coercer. Alternatively, if n S> t, then υτ can pick an J at random, 1 < J < n, assume that Aj is honest, and then know that the chance of being caught lying is at most (t — l)/n.
2.2 Election Initialization
EI-1. For each 1 < j < n, and for each 1 < i < I = \ 0 \, authority A3 generates randomly and independently a pair of elements in (g), {ζιj , jιj)- The quantities
Figure imgf000014_0001
are publicly computed. These are all published (and signed).
El- 2. The ballot choices ημ € (g), 1 < μ < k = \ V \, are assigned by some public random process, or by sharing. (The value ημ will indicate a vote for candidate cμ.)
2.3 Voting
V-1. υt chooses random v%\ 6 Zq and encrypts her vote as the ElGamal pair
(A, / ) = (5^ , .^ W) (15)
V-2. vτ then chooses random fl2 G Zq, computes st — rτ/η(ϊ) and encrypts it as
(C„ A) = (g^2 , ^Sl) (16)
V-3. υτ then constructs non-interactive proofs of knowledge, Q^B and QfD, for the pairs (A , Bt) and (Ct, Dt) respectively. These proofs show that the pairs are of the required form, and that υt knows the values of st and (2).
V-4. vτ submits the encrypted voted ballot
Eτ = ( (A, Bt) , (Ct, A) , Q B . Q?D ) (17) V-5. Though not necessary in the "append only" bulletin board model, in practice, υt would be issued a receipt for Eτ.
2.4 Tabulation
In this section, we assume a subset of t authorities has been fixed. Without loss of generality, we may assume these are A , . . . , At.
T-l. For each 1 < i < I, the quantities
(A , Wx) = Ut , ηlWl) (18) are publicly computed.
T-2. The authorities execute a verifiable shuffle of the sequence of pairs of ElGamal pairs, (Ul, Wt), (ξt, ηt), resulting in output set of pairs of ElGamal pairs
{(Φt , Φ,) , ( „ *7.)} (I ) where l, ^l, ξl, ήl € (g). The properties of this mix are that the set of decrypted value pairs, (α4, 4) of the output sequence are exactly the same as the set of decrypted value pairs of the input sequence, but in randomly permuted order. Executing such a verifiable shuffle is discussed in greater detail in U.S. Patent Application No. 09/816,869, entitled "VERIFIABLE, SECRET SHUFFLES OF ENCRYPTED DATA, SUCH AS ELGAMAL ENCRYPTED DATA FOR SECURE MULTI- AUTHORITY ELECTIONS," filed March 24, 2001, and PCT Application No. WO02/77929, entitled "VERIFIABLE SECRET SHUFFLES AND THEIR APPLICATION TO ELECTRONIC VOTING," filed March 25, 2002, each of which is hereby incorporated by reference in its entirety.
T-3. Let {((Am, Bm) , (Cm, A«))}m=ι be the set resulting from all voted ballots with verified validity proofs. The authorities execute another verifiable shuffle of the sequence of these M ElGamal pair pairs, with resulting output set
Figure imgf000015_0001
T-4. For each 1 < m < M, the I ElGamal pairs
, Ωml) = (AmCmξi r1 ,
Figure imgf000016_0001
(21)
1 < i < I are publicly computed.
T-5. The authorities jointly decrypt all of the pairs (Am, Bm), and (Θ, Ωmt), 1 < ι < I, 1 < m < M. Let these be, respectively, am, and x.
T-6. For each 1 < m < M, am is added to the tally if and only if
T-6.1. am {μi , . . , μk}
T-6.2. For some 1 < i < I, x = 1.
2.5 Tabulation — Alternate Embodiment
In this section, we assume a subset of t authorities has been fixed. Without loss of generality, we may assume these are A\, . . . , At.
T2-1. For each 1 < i < I, the quantities
(f , Wt) = (ξτU , VlW ) (22) are publicly computed.
T2-2. The authorities execute a verifiable shuffle of the sequence of ElGamal pairs, {Ul, W ), resulting in output set of ElGamal pairs
Figure imgf000016_0002
where Φι, Φι G {g)- The properties of this mix are that the set of decrypted values of the output sequence are exactly the same as the set of decrypted values of the input sequence, but in randomly permuted order.
T2-3. For each voted ballot, Em, 1 < m < M, with verified validity proofs, the / ElGamal pairs
, Ωmt) = {AmCmΦ , PmAΛ) (24) are publicly computed. T2-4. The authorities execute a verifiable shuffle of the sequence of M x I ElGamal pair pairs, ( (An, Bm) , (θ, Ωmt) ), resulting in the output set
{ ( (An, Bm) , (Θ, Q ) ) )Zlι ;^1 (25)
T2-5. The authorities jointly decrypt all of the pairs ( 4 , Φt), (Am, B, m) ι and (Θmi, Ωmt) Let these be, respectively, φt, am, and x.
T2-6. For each 1 < m < M, am is added to the tally if and only if
T2-7. am 6 {μι, . . . , μk}
T2-8. For some 1 < i < I and 1 < < I, x — φ3.
2.6 Making the Protocol Coercion Safe
The protocol, as presented is clearly not coercion safe. If t or more authorities collude, they can decrypt the original voter secrets, rt, and this allows them to impersonate all the voters. The problem can be fixed by adding an anonymous signature requirement to the ballot casting operation. (See aforementioned patent applications for a detailed description of an anonymous signature protocol that is "authority free" .) In this case, even if a malicious agent has access to a secret, rτ, it can not affect the tally without the corresponding private signing key, which can not be obtained without coercion. The reason for this should be clear. An authority free, anonymous signature on the voted ballot prevents the authorities (even in collusion) from linking the original encrypted ballot (input to the verifiable shuffle, or mix) to an individual the way they can with a standard digital signature. A standard digital signature explicitly links signed data to a registered individual. An anonymous signature only links signed data to a member of a set, or group, of individuals.

Claims

ClaimsI claim:
1. A method for conducting a coercion-resistant electronic election, comprising: receiving from the voter a first voter confirmation value; after receiving the first voter confirmation value, receiving from the voter an encrypted ballot and a second voter confirmation value; without regard for the value of the received second voter confirmation value, adding the received ballot to a publicly- available list of cast ballots, such that members of the public are able to verify the addition of the received ballot to the list without being able to determine whether the ballot will be counted; and counting the ballot if and only if the second voter confirmation value received with the ballot matches the received first voter confirmation value.
2. A computer-readable medium whose contents cause a computing system to conduct a coercion-resistant electronic election by: receiving from the voter a first voter confirmation value; after receiving the first voter confirmation value, receiving from the voter an encrypted ballot and a second voter confirmation value; adding the received ballot to a publicly-available list of cast ballots, such that members of the public are able to verify the addition of the received ballot to the list without being able to determine whether the ballot will be counted; and counting the ballot if and only if the second voter confirmation value received with the ballot matches the received first voter confirmation value.
3. One or more generated data signals collectively conveying a cast ballot data structure constructed by a voter, comprising: an encrypted ballot choice; and a ballot confirmation value, such that the ballot may be added to a publicly- accessible list of cast ballots without regard for the ballot confirmation value, and such that it can be determined whether to count the cast ballot based upon whether the ballot confirmation value matches an original ballot confirmation value earlier- stored for the voter.
4. One or more computer memories collectively containing a ballot box data structure storing cast ballots, the ballot box data structure containing, for each stored ballot, data reflecting a ballot choice selected by a voter who generated the ballot; and data reflecting a confirmation value selected by the voter, such that the contents of the data structure can used by a vote tabulation authority to determine whether to count the ballot, such that the contents of the data structure can used by a third party distinct from the vote tabulation authority to determine that the ballot has been stored in the ballot box, and such that the contents of the data structure cannot used by the third party to determine whether the ballot will be counted.
PCT/US2003/004798 2002-02-14 2003-02-14 A coercion-free voting scheme WO2003069448A2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP03711100A EP1532556A4 (en) 2002-02-14 2003-02-14 A coercion-free voting scheme
KR10-2004-7012617A KR20040078165A (en) 2002-02-14 2003-02-14 A coercion-free voting scheme
AU2003215282A AU2003215282A1 (en) 2002-02-14 2003-02-14 A coercion-free voting scheme
JP2003568506A JP2005526307A (en) 2002-02-14 2003-02-14 Non-mandatory voting scheme
CA002475136A CA2475136C (en) 2002-02-14 2003-02-14 A coercion-free voting scheme

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US35721002P 2002-02-14 2002-02-14
US60/357,210 2002-02-14

Publications (2)

Publication Number Publication Date
WO2003069448A2 true WO2003069448A2 (en) 2003-08-21
WO2003069448A3 WO2003069448A3 (en) 2005-03-24

Family

ID=27734736

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/004798 WO2003069448A2 (en) 2002-02-14 2003-02-14 A coercion-free voting scheme

Country Status (8)

Country Link
EP (1) EP1532556A4 (en)
JP (1) JP2005526307A (en)
KR (1) KR20040078165A (en)
CN (1) CN1659554A (en)
AU (1) AU2003215282A1 (en)
CA (1) CA2475136C (en)
RU (1) RU2292082C2 (en)
WO (1) WO2003069448A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2906058A1 (en) * 2006-09-14 2008-03-21 Eads Defence And Security Syst Electronic voting method for e.g. polling station, involves verifying content of virtual ballot box by detecting abnormality if comparison indicates that register contains value different from stored ballot multiplication result

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727692B (en) * 2008-10-17 2013-01-02 中科院成都信息技术有限公司 Method and system for processing poll information
RU2452013C2 (en) * 2010-01-26 2012-05-27 Российская Федерация, от имени которой выступает Федеральная служба по техническому и экспортному контролю (ФСТЭК России) Method of creating public key certificate
CN102622572A (en) * 2012-03-16 2012-08-01 中科院成都信息技术有限公司 Anti-counterfeit method for quickly matching and associating votes
CN102629396B (en) * 2012-04-09 2014-04-02 中科院成都信息技术股份有限公司 Information encryption and quick processing method for alternative candidate-containing electronic votes
RU2751315C2 (en) * 2019-11-05 2021-07-13 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Universal system of distributed secure remote voting
US11356267B2 (en) 2020-05-15 2022-06-07 Op Osuuskunta Apparatus, method and software for electronic voting during web conference

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081793A (en) * 1997-12-30 2000-06-27 International Business Machines Corporation Method and system for secure computer moderated voting

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6092051A (en) * 1995-05-19 2000-07-18 Nec Research Institute, Inc. Secure receipt-free electronic voting
AU2001233090A1 (en) * 2000-01-27 2001-08-07 David Chaum Physical and digital secret ballot systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081793A (en) * 1997-12-30 2000-06-27 International Business Machines Corporation Method and system for secure computer moderated voting

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CRANOR ET AL.: 'Design and implementation of a practical security-conscious electronic polling system' DEPARTMENT OF COMPUTER SCIENCE 23 January 1996, WASHINGTON UNIVERSITY, pages 1 - 16, XP002972496 *
See also references of EP1532556A2 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2906058A1 (en) * 2006-09-14 2008-03-21 Eads Defence And Security Syst Electronic voting method for e.g. polling station, involves verifying content of virtual ballot box by detecting abnormality if comparison indicates that register contains value different from stored ballot multiplication result

Also Published As

Publication number Publication date
WO2003069448A3 (en) 2005-03-24
RU2004127443A (en) 2005-05-27
CA2475136C (en) 2007-04-17
AU2003215282A8 (en) 2003-09-04
RU2292082C2 (en) 2007-01-20
KR20040078165A (en) 2004-09-08
EP1532556A4 (en) 2007-09-19
EP1532556A2 (en) 2005-05-25
CA2475136A1 (en) 2003-08-21
AU2003215282A1 (en) 2003-09-04
CN1659554A (en) 2005-08-24
JP2005526307A (en) 2005-09-02

Similar Documents

Publication Publication Date Title
Adiputra et al. A proposal of blockchain-based electronic voting system
US20230216669A1 (en) Systems and methods for communication, storage and processing of data provided by an entity over a blockchain network
Adida Advances in cryptographic voting systems
Karlof et al. Cryptographic Voting Protocols: A Systems Perspective.
Çabuk et al. A survey on feasibility and suitability of blockchain techniques for the e-voting systems
US20190019366A1 (en) System and method of determining ballots of voters collected with the aid of electronic balloting
KR102120882B1 (en) Block chain based contest system and method for contesting
US7389250B2 (en) Coercion-free voting scheme
US20230282052A1 (en) Blockchain-based voting system
EP1532556A2 (en) A coercion-free voting scheme
EP3474241A1 (en) Electronic balloting
Khanpara et al. Blockchain-based E-Voting Technology: Opportunities and Challenges
Vijayalakshmi et al. Secure online voting system in cloud
JP2004192029A (en) Electronic voting system, voting data generating server, terminal equipment, tabulation server and computer program
Chaum et al. Paperless independently-verifiable voting
Nimje et al. Blockchain based electronic voting system using biometric
Lu et al. Self-tallying e-voting with public traceability based on blockchain
Abo-Rizka et al. A Novel E-voting in Egypt
Saeed et al. Iraqi Paradigm E-Voting System Based on Hyperledger Fabric Blockchain Platform.
Paul et al. The design of a trustworthy voting system
McCorry et al. Removing trusted tallying authorities
Krishnamoorthy et al. A Robust Blockchain Assisted Electronic Voting Mechanism with Enhanced Cyber Norms and Precautions
Pasquinucci Web voting, security and cryptography
KR102381028B1 (en) Electronic vote management system and method using block-chain
Liu et al. A Publicly Verifiable E-Voting System Based on Biometrics

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2374/DELNP/2004

Country of ref document: IN

Ref document number: 1020047012617

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2475136

Country of ref document: CA

Ref document number: 2003568506

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2003711100

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2004127443

Country of ref document: RU

WWE Wipo information: entry into national phase

Ref document number: 20038080788

Country of ref document: CN

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWP Wipo information: published in national office

Ref document number: 2003711100

Country of ref document: EP