civitas toward a secure voting system

65
Civitas Toward a Secure Voting System AFRL Information Management Workshop October 22, 2010 Michael Clarkson Cornell University

Upload: coral

Post on 24-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Civitas Toward a Secure Voting System. Michael Clarkson Cornell University. AFRL Information Management Workshop October 22, 2010. Secret Ballot. Florida 2000: Bush v. Gore. “Flawless”. Security FAIL. Analysis of an electronic voting system [Kohno et al. 2003, 2004]. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Civitas Toward a Secure Voting System

CivitasToward a Secure Voting System

AFRL Information Management Workshop October 22, 2010

Michael ClarksonCornell University

Page 2: Civitas Toward a Secure Voting System
Page 3: Civitas Toward a Secure Voting System

Secret Ballot

Page 4: Civitas Toward a Secure Voting System
Page 5: Civitas Toward a Secure Voting System
Page 6: Civitas Toward a Secure Voting System
Page 7: Civitas Toward a Secure Voting System
Page 8: Civitas Toward a Secure Voting System
Page 9: Civitas Toward a Secure Voting System
Page 10: Civitas Toward a Secure Voting System

Florida 2000:Bush v. Gore

Page 11: Civitas Toward a Secure Voting System

“Flawless”

Page 12: Civitas Toward a Secure Voting System

12

Page 13: Civitas Toward a Secure Voting System

Security FAIL

Page 14: Civitas Toward a Secure Voting System

Analysis of an electronic voting system

[Kohno et al. 2003, 2004]

• DRE trusts smartcards• Hardcoded keys and initialization

vectors• Weak message integrity• Cryptographically insecure random

number generator• ...

Page 15: Civitas Toward a Secure Voting System

California top-to-bottom reviews

[Bishop, Wagner, et al. 2007]• “Virtually every important software security

mechanism is vulnerable to circumvention.”• “An attacker could subvert a single polling

place device...then reprogram every polling place device in the county.”

• “We could not find a single instance of correctly used cryptography that successfully accomplished the security purposes for which it was apparently intended.”

Page 16: Civitas Toward a Secure Voting System

Why is this so hard?

Page 17: Civitas Toward a Secure Voting System

17

PRIVACYVERIFIABILITY

Page 18: Civitas Toward a Secure Voting System

18

VERIFIABILITY…not just correctness

…even if everyone cheats

Page 19: Civitas Toward a Secure Voting System

19

VERIFIABILITY

Universal verifiabilityVoter verifiability

Eligibility verifiability

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

Page 20: Civitas Toward a Secure Voting System

20

PRIVACY…more than secrecy

…even if almost everyone cheats

Page 21: Civitas Toward a Secure Voting System

21

PRIVACY

Coercion resistance

better than receipt freeness or simple anonymity

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

Page 22: Civitas Toward a Secure Voting System

22

ROBUSTNESS

Tally availability

Page 23: Civitas Toward a Secure Voting System

23

PRIVACYVERIFIABILITY

ROBUSTNESS

Page 24: Civitas Toward a Secure Voting System

24

Remote

PRIVACYVERIFIABILITY

(including Internet)

ROBUSTNESS

Page 25: Civitas Toward a Secure Voting System

25

H.R. 2647 Sec. 589Military and Overseas Voter

Empowerment Act

Page 26: Civitas Toward a Secure Voting System

26

How can we vote securely,

electronically,remotely?

Page 27: Civitas Toward a Secure Voting System

27

Cornell Voting Systems

• CIVS (ca. 2005) [Myers & Clarkson]http://www.cs.cornell.edu/andru/civs.html

• Civitas 0.7 (ca. 2007) [Clarkson, Chong & Myers]http://www.cs.cornell.edu/projects/civitasPublished Oakland 2008 + 2 Masters projects

• Civitas 1.0 (started fall 2010) [Clarkson et al.]

Page 28: Civitas Toward a Secure Voting System

28

Cornell Voting Systems

• CIVS (ca. 2005) [Myers & Clarkson]http://www.cs.cornell.edu/andru/civs.html

• Civitas 0.7 (ca. 2007) [Clarkson, Chong & Myers]http://www.cs.cornell.edu/projects/civitasPublished Oakland 2008 + 2 Masters projects

• Civitas 1.0 (started fall 2010) [Clarkson et al.]

Page 29: Civitas Toward a Secure Voting System

29

Security Properties

Original Civitas:• Universal

verifiability• Eligibility

verifiability• Coercion resistance

Masters projects:• Voter verifiability• Tally availability

…under various assumptions

Page 30: Civitas Toward a Secure Voting System

30

Mutual DistrustKEY PRINCIPLE:

Page 31: Civitas Toward a Secure Voting System

31

JCJ Voting Scheme

[Juels, Catalano & Jakobsson 2005]

Proved universal verifiability and coercion resistance

Civitas extends JCJ

Page 32: Civitas Toward a Secure Voting System

32

Civitas Architecture

bulletinboard

voterclient

tabulation teller

tabulation teller

tabulation teller

registration teller

registration teller

registration teller

ballot boxballot boxballot box

Page 33: Civitas Toward a Secure Voting System

33

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 34: Civitas Toward a Secure Voting System

34

Credentials• Verifiable• Unsalable• Unforgeable• Anonymous

Page 35: Civitas Toward a Secure Voting System

35

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 36: Civitas Toward a Secure Voting System

36

Resisting Coercion:

Fake Credentials

Page 37: Civitas Toward a Secure Voting System

37

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 38: Civitas Toward a Secure Voting System

38

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 39: Civitas Toward a Secure Voting System

39

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 40: Civitas Toward a Secure Voting System

40

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 41: Civitas Toward a Secure Voting System

41

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 42: Civitas Toward a Secure Voting System

42

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 43: Civitas Toward a Secure Voting System

Trust Assumptions

Page 44: Civitas Toward a Secure Voting System

44

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 45: Civitas Toward a Secure Voting System

45

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 46: Civitas Toward a Secure Voting System

46

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.

UV + CR

CR

Page 47: Civitas Toward a Secure Voting System

47

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.

UV + CR

CR

Page 48: Civitas Toward a Secure Voting System

48

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.

UV + CR

CR

Page 49: Civitas Toward a Secure Voting System

49

RegistrationIn person.

In advance.

Con: System not fully remote

Pro: Credential can be used in

many elections

Page 50: Civitas Toward a Secure Voting System

50

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.

UV + CR

CR

Page 51: Civitas Toward a Secure Voting System

51

Eliminating Trust in Voter ClientUV: Use challenges

CR: Open problem

Page 52: Civitas Toward a Secure Voting System

52

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.

UV + CR

CR

Page 53: Civitas Toward a Secure Voting System

53

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.

UV + CR

CR

Page 54: Civitas Toward a Secure Voting System

54

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.

UV + CR

CR

Page 55: Civitas Toward a Secure Voting System

55

Untappable Channel

Minimal known assumption for receipt freeness and coercion

resistance

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

Page 56: Civitas Toward a Secure Voting System

56

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.

UV + CR

CR

Page 57: Civitas Toward a Secure Voting System

57

Trusted procedures?

Page 58: Civitas Toward a Secure Voting System

58

Time to Tally

Page 59: Civitas Toward a Secure Voting System

59

Tabulation Time

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

Page 60: Civitas Toward a Secure Voting System

60

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 61: Civitas Toward a Secure Voting System

61

AssuranceSecurity proofs (JCJ)

Secure implementation (Jif)

Page 62: Civitas Toward a Secure Voting System

62

Ranked Voting

Page 63: Civitas Toward a Secure Voting System

63

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

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

Page 64: Civitas Toward a Secure Voting System

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

(google “civitas voting”)

Page 65: Civitas Toward a Secure Voting System

CivitasToward a Secure Voting System

AFRL Information Management Workshop October 22, 2010

Michael ClarksonCornell University