Scratch & Vote : Self-Contained Paper-Based Cryptographic - - PowerPoint PPT Presentation

scratch vote
SMART_READER_LITE
LIVE PREVIEW

Scratch & Vote : Self-Contained Paper-Based Cryptographic - - PowerPoint PPT Presentation

Scratch & Vote : Self-Contained Paper-Based Cryptographic Voting Ben Adida Ronald L. Rivest 30 October 2006 The Next Harvard Pres! Chain of Custody Chain of Custody 1 /* * source * code */ if (... Vendor Chain of Custody 1 /* *


slide-1
SLIDE 1

Scratch & Vote:

Self-Contained Paper-Based Cryptographic Voting

Ben Adida Ronald L. Rivest

30 October 2006

slide-2
SLIDE 2
slide-3
SLIDE 3

The Next Harvard Pres!

slide-4
SLIDE 4

Chain of Custody

slide-5
SLIDE 5

Chain of Custody

Vendor

/* * source * code */ if (...

1

slide-6
SLIDE 6

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1

slide-7
SLIDE 7

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3

slide-8
SLIDE 8

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3 4

Alice

slide-9
SLIDE 9

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3 4

Alice

slide-10
SLIDE 10

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3 Ballot Box Collection 5 4

Alice

slide-11
SLIDE 11

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3 Ballot Box Collection 5 Results ..... 6 4

Alice

slide-12
SLIDE 12

Chain of Custody

Voting Machine 2

Vendor

/* * source * code */ if (...

1 Polling Location 3 Ballot Box Collection 5 Results ..... 6 4

Alice

VVPAT

slide-13
SLIDE 13

End-to-End

slide-14
SLIDE 14

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

slide-15
SLIDE 15

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Ballot Box / Bulletin Board

Alice

slide-16
SLIDE 16

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Ballot Box / Bulletin Board

Alice

Results .....

slide-17
SLIDE 17

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Receipt 1 Ballot Box / Bulletin Board

Alice

Results .....

slide-18
SLIDE 18

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Receipt 1 2 Ballot Box / Bulletin Board

Alice

Results .....

slide-19
SLIDE 19

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Receipt 1 2 Ballot Box / Bulletin Board

Alice

Results .....

Cryptographic Voting

slide-20
SLIDE 20

End-to-End

Polling Location Voting Machine

Vendor

/* * source * code */ if (...

Receipt 1 2 Ballot Box / Bulletin Board

Alice

Results .....

Cryptographic Voting Open-Audit Voting

slide-21
SLIDE 21

Properties of OAV

(1) Alice verifies her vote. (2) Everyone verifies tallying. (3) Alice cannot be coerced by Eve.

slide-22
SLIDE 22

A Bulletin Board

Bulletin Board

Bridget: Clinton Carol: Rice

slide-23
SLIDE 23

A Bulletin Board

Bulletin Board

Bridget: Clinton Carol: Rice

Alice

slide-24
SLIDE 24

A Bulletin Board

Bulletin Board

Alice: Rice Bridget: Clinton Carol: Rice

Alice

slide-25
SLIDE 25

A Bulletin Board

Bulletin Board

Alice: Rice Bridget: Clinton Carol: Rice

Tally Rice.........2 Clinton...1

Alice

slide-26
SLIDE 26

An Encrypted Bulletin Board

Bulletin Board

Alice: Rice Bridget: Clinton Carol: Rice

Tally Rice.........2 Clinton...1

Alice

slide-27
SLIDE 27

Verification Ballot Data Flow

slide-28
SLIDE 28

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-29
SLIDE 29

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-30
SLIDE 30

anonymization

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-31
SLIDE 31

decryption anonymization

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-32
SLIDE 32

decryption anonymization

Results Tally

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-33
SLIDE 33

decryption anonymization

Results Tally

Registration Database

Verification Ballot Data Flow

Encrypted Votes

Alice Bridget

encryption

slide-34
SLIDE 34

The Need for Simple

slide-35
SLIDE 35

The Need for Simple

  • Too complicated = disenfranchisement.

voter experience needs to be almost as simple as it is today

slide-36
SLIDE 36

The Need for Simple

  • Too complicated = disenfranchisement.

voter experience needs to be almost as simple as it is today

  • Intuitive enough for officials to adopt
slide-37
SLIDE 37

The Need for Simple

  • Too complicated = disenfranchisement.

voter experience needs to be almost as simple as it is today

  • Intuitive enough for officials to adopt
  • But... let’s not expect everyone to

understand everything.

slide-38
SLIDE 38

Continuing the Simplicity Trend

  • Chaum’s Punchscan
  • Ryan’s Prêt-à-Voter
  • Benaloh’s “simple cryptographic voting”
slide-39
SLIDE 39

Scratch-and-Vote Experience

slide-40
SLIDE 40

_______ _______ _______ _______ Charlie Adam Bob David _______ _______ _______ _______ Bob Charlie David Adam

  • 1. Receive two ballots.
slide-41
SLIDE 41
  • 2. Choose one randomly

for auditing by scratch-off.

_______ _______ _______ _______ Charlie Adam Bob David

r1 r2 r3 r4

Charlie Adam Bob David

slide-42
SLIDE 42

_______ _______ _______ _______ Bob Charlie David Adam

  • 3. Vote.
slide-43
SLIDE 43

Charlie Bob David Adam Charlie Bob Adam David Adam Bob Charlie David

Bob Charlie David Adam _______ _______ _______ _______

  • 4. Tear & Discard

left half of ballot.

slide-44
SLIDE 44

_______ _______ _______ _______

Scan & take home

  • 5. Tear & Discard

scratch-off.

slide-45
SLIDE 45

Tallying

slide-46
SLIDE 46

Bulletin Board

Alice Bridget Carol

_______ _______ _______ _______ _______ _______ _______ _______ _______ _______ _______ _______

slide-47
SLIDE 47

PARAMETERS #1 - Adam #2 - Bob #3 - Charlie #4 - David M=28, Key = pk

_______ _______ _______ _______ Bob Charlie David Adam

r1 r2 r3

Epk(228; r1) Epk(256; r2) Epk(284; r3) Epk(20; r4) H(pk) r4

slide-48
SLIDE 48

Vote for Adam Vote for Bob Vote for Charlie 0000 0001 0000 0000 0001 0000 0000 0000 0000 0000 0000 0001 Vote for David 0000 0000 0001 0000 0004 0001 0008 0002 Sample Tally

[B+2001, P1999]

Homomorphic Tallying

slide-49
SLIDE 49

Proof of Ballot (NIZK)

slide-50
SLIDE 50

Proof of Ballot (NIZK)

  • Malicious

Voter submits: Enc(1000)

slide-51
SLIDE 51

Proof of Ballot (NIZK)

  • Malicious

Voter submits: Enc(1000)

  • in S&V, ciphertexts are picked ahead of time
slide-52
SLIDE 52

Proof of Ballot (NIZK)

  • Malicious

Voter submits: Enc(1000)

  • in S&V, ciphertexts are picked ahead of time
  • but... what if election officials collude with a

voter to throw the election with a bad ballot?

slide-53
SLIDE 53

Proof of Ballot (NIZK)

  • Malicious

Voter submits: Enc(1000)

  • in S&V, ciphertexts are picked ahead of time
  • but... what if election officials collude with a

voter to throw the election with a bad ballot?

  • election officials must prepare proofs of

correct ballot form ahead of time, on bulletin board (~80K per full ballot).

slide-54
SLIDE 54

Practical Considerations

  • Ballot

Verification: less than a second.

  • Barcode Encoding: PDF417 open standard.
  • Barcode Size: 10 square inches of barcode for

a full sheet visual ballot.

  • Proof Time: ~3 seconds per ballot.

5 questions, 5 options per question.

slide-55
SLIDE 55

Limitations

  • Write-in

Votes: not supported

  • Take-Home Receipt: not currently legal
slide-56
SLIDE 56

Scratch & Vote

  • Personal Verification: scratch and verify
  • Open-Audit: anyone can verify the tally
  • Incoercible: voting booth & encryption
  • Simple: common & cheap tech, process is

close to current voting.

slide-57
SLIDE 57

Questions?