57
Civitas Verifiability and Coercion Resistance for Remote Voting Virginia Tech NCR September 14, 2012 Michael Clarkson George Washington University with Stephen Chong (Harvard) and Andrew Myers (Cornell)

Civitas Verifiability and Coercion Resistance for Remote Voting

  • Upload
    ira

  • View
    28

  • Download
    0

Embed Size (px)

DESCRIPTION

Civitas Verifiability and Coercion Resistance for Remote Voting. Michael Clarkson George Washington University. with Stephen Chong (Harvard) and Andrew Myers (Cornell). Virginia Tech NCR September 14, 2012. CONFIDENTIALITY. INTEGRITY. CONFIDENTIALITY. INTEGRITY. Remote. - PowerPoint PPT Presentation

Citation preview

Page 1: Civitas Verifiability and Coercion Resistance for Remote Voting

CivitasVerifiability and Coercion

Resistancefor Remote Voting

Virginia Tech NCRSeptember 14, 2012

Michael ClarksonGeorge Washington

University

with Stephen Chong (Harvard) and Andrew Myers (Cornell)

Page 2: Civitas Verifiability and Coercion Resistance for Remote Voting

2

INTEGRITYCONFIDENTIALITY

Page 3: Civitas Verifiability and Coercion Resistance for Remote Voting

3

Remote

(including Internet)

INTEGRITYCONFIDENTIALITY

Page 4: Civitas Verifiability and Coercion Resistance for Remote Voting

4

Mutual DistrustKEY PRINCIPLE:

Page 5: Civitas Verifiability and Coercion Resistance for Remote Voting

5

INTEGRITY

Universal verifiabilityVoter verifiability

Eligibility verifiability

UV: [Sako and Killian 1994, 1995]EV & VV: [Kremer, Ryan & Smyth 2010]

Page 6: Civitas Verifiability and Coercion Resistance for Remote Voting

6

Why Verifiability?

• People:– Corrupted programmers– Hackers (individuals, …, nation-states)

• Software:– Buggy code– Malware

• Trustworthiness: fair elections are a basis of representative democracy

Page 7: Civitas Verifiability and Coercion Resistance for Remote Voting

7

CONFIDENTIALITY

Coercion resistance

better than receipt freeness or simple anonymity

RF: [Benaloh 1994]CR: [Juels, Catalano & Jakobsson 2005]

Page 8: Civitas Verifiability and Coercion Resistance for Remote Voting

8

Why Coercion Resistance?

• Protect election from improper influence

• Protect people from fear of reprisal• Realize ideals of voting booth,

remotely• Trustworthiness: fair elections are a

basis of representative democracy

Page 9: Civitas Verifiability and Coercion Resistance for Remote Voting

9

AVAILABILITY

Tally availability

Page 10: Civitas Verifiability and Coercion Resistance for Remote Voting

10

Security Properties

Original system:• Universal

verifiability• Eligibility

verifiability• Coercion resistance

Follow-up projects:• Voter verifiability• Tally availability

…under various assumptions

Page 11: Civitas Verifiability and Coercion Resistance for Remote Voting

11

JCJ Voting Scheme

[Juels, Catalano & Jakobsson 2005]

Proved universal verifiability and coercion resistance

Civitas extends JCJ

Page 12: Civitas Verifiability and Coercion Resistance for Remote Voting

12

Civitas Architecture

bulletinboard

voterclient

tabulation teller

tabulation teller

tabulation teller

registration teller

registration teller

registration teller

ballot boxballot boxballot box

Page 13: Civitas Verifiability and Coercion Resistance for Remote Voting

13

Registration

voterclient

registration teller

registration teller

registration teller

bulletinboard

tabulation teller

tabulation teller

tabulation teller

ballot boxballot boxballot box

Voter retrieves credential share from each registration teller;combines to form credential

Page 14: Civitas Verifiability and Coercion Resistance for Remote Voting

14

Credentials• Verifiable• Unsalable• Unforgeable• Anonymous

Page 15: Civitas Verifiability and Coercion Resistance for Remote Voting

15

Voting

voterclient

ballot boxballot boxballot box

bulletinboard

tabulation teller

tabulation teller

tabulation teller

registration teller

registration teller

registration teller

Voter submits copy of encrypted choice and credential to each ballot box

Page 16: Civitas Verifiability and Coercion Resistance for Remote Voting

16

Resisting Coercion:

Fake Credentials

Page 17: Civitas Verifiability and Coercion Resistance for Remote Voting

17

Resisting CoercionIf the coercer demands that the voter…

Then the voter…

Submits a particular vote

Does so with a fake credential.

Sells or surrenders a credential

Supplies a fake credential.

Abstains Supplies a fake credential to the adversary and votes with a real one.

Page 18: Civitas Verifiability and Coercion Resistance for Remote Voting

18

Tabulation

bulletinboard

tabulation teller

tabulation teller

tabulation teller

voterclient

registration teller

registration teller

registration teller

ballot boxballot boxballot box

Tellers retrieve votes from ballot boxes

Page 19: Civitas Verifiability and Coercion Resistance for Remote Voting

19

Tabulation

bulletinboard

tabulation teller

tabulation teller

tabulation teller

voterclient

registration teller

registration teller

registration teller

ballot boxballot boxballot box

Tabulation tellers anonymize votes;eliminate unauthorized (and fake) credentials;

decrypt remaining choices.

Page 20: Civitas Verifiability and Coercion Resistance for Remote Voting

20

Auditing

bulletinboard

voterclient

registration teller

registration teller

registration teller

Anyone can verify proofs that tabulation is correct

tabulation teller

tabulation teller

tabulation teller

ballot boxballot boxballot box

Page 21: Civitas Verifiability and Coercion Resistance for Remote Voting

21

Civitas Architecture

bulletinboard

voterclient

tabulation teller

tabulation teller

tabulation teller

registration teller

registration teller

registration teller

ballot boxballot boxballot box

Universal verifiability: Tellers post proofs during tabulation

Coercion resistance:

Voters can undetectably fake credentialsSECURITY PROOFS

Page 22: Civitas Verifiability and Coercion Resistance for Remote Voting

22

Protocols– El Gamal; distributed [Brandt]; non-malleable [Schnorr

and Jakobsson]– Proof of knowledge of discrete log [Schnorr]– Proof of equality of discrete logarithms [Chaum &

Pederson]– Authentication and key establishment [Needham-

Schroeder-Lowe]– Designated-verifier reencryption proof [Hirt & Sako]– 1-out-of-L reencryption proof [Hirt & Sako]– Signature of knowledge of discrete logarithms

[Camenisch & Stadler]– Reencryption mix network with randomized partial

checking [Jakobsson, Juels & Rivest]– Plaintext equivalence test [Jakobsson & Juels]

Implementation: 21k LoC

Page 23: Civitas Verifiability and Coercion Resistance for Remote Voting

Trust Assumptions

Page 24: Civitas Verifiability and Coercion Resistance for Remote Voting

24

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 25: Civitas Verifiability and Coercion Resistance for Remote Voting

25

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Universal verifiability Coercion resistance

Coercion resistance

Page 26: Civitas Verifiability and Coercion Resistance for Remote Voting

26

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 27: Civitas Verifiability and Coercion Resistance for Remote Voting

27

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 28: Civitas Verifiability and Coercion Resistance for Remote Voting

28

RegistrationIn person.

In advance.

Con: System not fully remote

Pro: Credential can be used in

many elections

Page 29: Civitas Verifiability and Coercion Resistance for Remote Voting

29

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 30: Civitas Verifiability and Coercion Resistance for Remote Voting

30

Eliminating Trust in Voter ClientVV: Use challenges (like Helios,

VoteBox)CR: Open problem

Page 31: Civitas Verifiability and Coercion Resistance for Remote Voting

31

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 32: Civitas Verifiability and Coercion Resistance for Remote Voting

32

Trust Assumptions`1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 33: Civitas Verifiability and Coercion Resistance for Remote Voting

33

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 34: Civitas Verifiability and Coercion Resistance for Remote Voting

34

Untappable Channel

Minimal known assumption for receipt freeness and coercion

resistance

Eliminate? Open problem.(Eliminate trusted registration teller? Also open.)

Page 35: Civitas Verifiability and Coercion Resistance for Remote Voting

35

Trust Assumptions1. “Cryptography works.”

2. The adversary cannot masquerade as a voter during registration.

3. Voters trust their voting client.

4. At least one of each type of authority is honest.

5. The channels from the voter to the ballot boxes are anonymous.

6. Each voter has an untappable channel to a trusted registration teller.

Page 36: Civitas Verifiability and Coercion Resistance for Remote Voting

36

Trusted procedures?

Page 37: Civitas Verifiability and Coercion Resistance for Remote Voting

37

Time to Tally

Page 38: Civitas Verifiability and Coercion Resistance for Remote Voting

38

Tabulation Time

# voters in precinct = K, # tab. tellers = 4, security strength ≥ 112 bits [NIST 2011–2030]

Page 39: Civitas Verifiability and Coercion Resistance for Remote Voting

39

SummaryCan achieve strong security and

transparency:– Remote voting– Universal (voter, eligibility) verifiability– Coercion resistance

Security is not free:– Stronger registration (untappable channel)– Cryptography (computationally expensive)

Page 40: Civitas Verifiability and Coercion Resistance for Remote Voting

40

AssuranceSecurity proofs (JCJ, us) Secure implementation (Jif)

Page 41: Civitas Verifiability and Coercion Resistance for Remote Voting

41

Ranked Voting

Page 42: Civitas Verifiability and Coercion Resistance for Remote Voting

42

Open Problems• Coercion-resistant voter client?• Voter-verifiable voter client?• Eliminate untappable channel in

registration?• Credential management?• Usability?• Application-level denial of service?

Page 43: Civitas Verifiability and Coercion Resistance for Remote Voting

43

Technical Issues• Web interfaces• BFT bulletin board• Threshold cryptography• Anonymous channel integration

Page 44: Civitas Verifiability and Coercion Resistance for Remote Voting

http://www.cs.cornell.edu/projects/civitas

(google “civitas voting”)

Page 45: Civitas Verifiability and Coercion Resistance for Remote Voting

CivitasVerifiability and Coercion

Resistancefor Remote Voting

Virginia Tech NCRSeptember 14, 2012

Michael ClarksonGeorge Washington

University

with Stephen Chong (Harvard) and Andrew Myers (Cornell)

Page 46: Civitas Verifiability and Coercion Resistance for Remote Voting

46

Extra Slides

Page 47: Civitas Verifiability and Coercion Resistance for Remote Voting

47

AdversaryAlways:

– May perform any polynomial time computation– May corrupt all but one of each type of election

authority Distributed trust

Almost always:– May control network– May coerce voters, demanding secrets or

behavior, remotely or physically

Security properties: Confidentiality, integrity, availability

Page 48: Civitas Verifiability and Coercion Resistance for Remote Voting

48

Paper• What paper does:

– Convince voter that his vote was captured correctly

• What paper does next:– Gets dropped in a ballot box– Immediately becomes insecure

• Chain-of-custody, stuffing, loss, recount attacks…• Hacking paper elections has a long and (in)glorious

tradition [Steal this Vote, Andrew Gumbel, 2005]• 20% of paper trails are missing or illegible [Michael

Shamos, 2008]

• What paper doesn’t:– Guarantee that a vote will be counted– Guarantee that a vote will be counted correctly

Page 49: Civitas Verifiability and Coercion Resistance for Remote Voting

49

Cryptography“The public won’t trust cryptography.”

– It already does…– Because experts already do

“I don’t trust cryptography.”– You don’t trust the proofs, or– You reject the hardness assumptions

Page 50: Civitas Verifiability and Coercion Resistance for Remote Voting

50

Selling VotesRequires selling credential…

–Which requires:• Adversary tapped the untappable

channel, or• Adversary authenticated in place of

voter…–Which then requires:

• Voter transferred ability to authenticate to adversary; something voter…

– Has: too easy– Knows: need incentive not to transfer– Is: hardest to transfer

Page 51: Civitas Verifiability and Coercion Resistance for Remote Voting

51

Civitas Policy Examples• Confidentiality:

– Information: Voter’s credential share– Policy: “RT permits only this voter to learn this

information”– Jif syntax: RT Voter

• Confidentiality:– Information: Teller’s private key– Policy: “TT permits no one else to learn this information”– Jif syntax: TT TT

• Integrity:– Information: Random nonces used by tellers– Policy: “TT permits only itself to influence this

information”– Jif syntax: TT TT

Page 52: Civitas Verifiability and Coercion Resistance for Remote Voting

52

Civitas Policy Examples• Declassification:

– Information: Bits that are committed to then revealed

– Policy: “TT permits no one to read this information until all commitments become available, then TT declassifies it to allow everyone to read.”

– Jif syntax: TT [TT commAvail ]

• Erasure:– Information: Voter’s credential shares– Policy: “Voter requires, after all shares are

received and full credential is constructed, that shares must be erased.”

– Jif syntax: Voter [Voter credConst T ]

Page 53: Civitas Verifiability and Coercion Resistance for Remote Voting

53

BlocksBlock is a “virtual precinct”

– Each voter assigned to one block– Each block tallied independently of other blocks,

even in parallel

Tabulation time is:– Quadratic in block size – Linear in number of voters

• If using one set of machines for many blocks– Or, constant in number of voters

• If using one set of machines per block

Page 54: Civitas Verifiability and Coercion Resistance for Remote Voting

54

Tabulation Time

K = 100

sequential

parallel

Page 55: Civitas Verifiability and Coercion Resistance for Remote Voting

55

Ranked VotingVoters submit ranking of candidates

– e.g., Condorcet, Borda, STV– Help avoid spoiler effects– Defend against strategic voting– “Italian attack”

Civitas implements coercion-resistant Condorcet, approval and plurality voting methods– Could do any summable method

Page 56: Civitas Verifiability and Coercion Resistance for Remote Voting

56

Secure Implementation

In Jif [Myers 1999, Chong and Myers 2005, 2008]

– Security-typed language– Types contain information-flow policies

• Confidentiality, integrity, declassification, erasure

If policies in code express correct requirements…– (And Jif compiler is correct…)– Then code is secure w.r.t. requirements

Page 57: Civitas Verifiability and Coercion Resistance for Remote Voting

57

CPU CostFor reasonable security parameters,

CPU time is 39 sec / voter / authority.

If CPUs are bought, used (for 5 hours), then thrown away:

$1500 / machine ) $12 / voterIf CPUs are rented:

$1 / CPU / hr ) 4¢ / voter

Increased cost…Increased security