Lagrangian E-Voting: e-Voting Concept Our contribution - - PowerPoint PPT Presentation

lagrangian e voting
SMART_READER_LITE
LIVE PREVIEW

Lagrangian E-Voting: e-Voting Concept Our contribution - - PowerPoint PPT Presentation

Lagrangian E-Voting Lagrangian E-Voting: e-Voting Concept Our contribution Verifiability on Demand and Strong Privacy Scheme Description Registration Ballot Structure Casting a Vote ukasz Krzywiecki, Mirosaw Kutyowski Mixing


slide-1
SLIDE 1

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Lagrangian E-Voting: Verifiability on Demand and Strong Privacy

Łukasz Krzywiecki, Mirosław Kutyłowski

Institute of Mathematics and Computer Science Wrocław University of Technology

TRUST 2010 21-23 June 2010, Berlin

slide-2
SLIDE 2

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Outline

1

e-Voting Concept Our contribution

2

Scheme Description Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

slide-3
SLIDE 3

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

motivation

Necessity of remote voting mobility of voters (polling stations model and voting at the place of residence is a 19 century model) a growing number of disabled and/or aged people increasing the number of democratic decisions? Solutions postal voting remote voting

slide-4
SLIDE 4

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Postal Voting

properties

Advantages usability simple, transparent no electronics involved Threats requires very reliable post system (so it may work in Switzerland, but not in Poland) vote selling so easy . . . coercion problems

slide-5
SLIDE 5

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Postal Voting

properties

Advantages usability simple, transparent no electronics involved Threats requires very reliable post system (so it may work in Switzerland, but not in Poland) vote selling so easy . . . coercion problems

slide-6
SLIDE 6

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

advantages and disadvantages

Advantages instantaneous confirmation about arrival of a vote

  • nce deployed cheap in operation

scalable Threats how can you trust your computer?! (vote modified, no confidentiality,...) vote selling so easy . . . (downloading software, digital reward...) coercion problems

slide-7
SLIDE 7

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

advantages and disadvantages

Advantages instantaneous confirmation about arrival of a vote

  • nce deployed cheap in operation

scalable Threats how can you trust your computer?! (vote modified, no confidentiality,...) vote selling so easy . . . (downloading software, digital reward...) coercion problems

slide-8
SLIDE 8

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

solutions

Idea 1 - blind computer the computer performs some operations but does not know their meaning the voter has some information from an independent channel hidden from the PC no possibility to change a vote by the computer not even to a random one no possibility to betray the voter’s preferences

slide-9
SLIDE 9

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

solutions

Idea 2 - local verifiability some information published on bulletin board a voter obtains some information that can be checked against bulletin board the voter can check that her/his vote has been counted ... but cannot prove anything about the vote cast

slide-10
SLIDE 10

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

solutions

Idea 3 - redoing a voter can change his vote until the end of election day coercion requires physical supervision during the whole election period

slide-11
SLIDE 11

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Remote Voting

weakening crypto

What happens in 10 years? sensitive informations published on bulletin board in

  • rder to enable verifiability

well protected according to the crypto’s state-of-the-art ... but in 10 years cryptanalysis may break it and reveal voter’s preferences Threat the voters can be scared to vote against some parties as they make revenge in 10 years

slide-12
SLIDE 12

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Our goal

Forward security in e-voting

1 limit verification to its primary purpose - avoiding

election frauds

2 verification possible only in front of a judge

(and OECD ... observers)

3 minimal information principle - destroy verification keys

as soon as the legal situation cannot change

slide-13
SLIDE 13

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Our contribution

On top approach We do not design a new scheme but provide a method for securing schemes for which: the voter has to fill a number a bubbles on the screen of his PC all security features are already granted, except for forward security

slide-14
SLIDE 14

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Our contribution

ID card PC System (BB,CA) Court (Verification)

Basic Properties

1 some computations are done inside a personal ID card

(the voters know that borrowing an ID card is very risky!)

2 verification can be performed only in an election court, 3 verification cannot be used outside the court due to its

zero knowledge properties

slide-15
SLIDE 15

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Interaction: ID card – RA ID card Registartion Authority

slide-16
SLIDE 16

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Key Generation ID card

Generates keys: (cs,cp)

Registartion Authority

slide-17
SLIDE 17

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Request Signing ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp)

slide-18
SLIDE 18

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Passing Request to RA ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp)

slide-19
SLIDE 19

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Request Verification ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp) Ver(Sign(cp)

slide-20
SLIDE 20

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Blind Signature Computing ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp) Ver(Sign(cp) s:= Blind_Sign(cp)

slide-21
SLIDE 21

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Passing Blind Signature to ID card ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp) Ver(Sign(cp) s:= Blind_Sign(cp)

slide-22
SLIDE 22

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Registration

Token Creation ID card

Generates keys: (cs,cp)

Registartion Authority cp,Sign(cp) Ver(Sign(cp) s:= Blind_Sign(cp) x:= (cp,s)

slide-23
SLIDE 23

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Ballot

slide-24
SLIDE 24

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Triple

Ballot

t:= (x, y, z)

slide-25
SLIDE 25

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Token

Ballot

t:= (x, y, z)

Token

(cp, s)

slide-26
SLIDE 26

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Vote Component

Ballot

t:= (x, y, z)

Token

(cp, s)

y:= Hash( SignID(x, z) )

slide-27
SLIDE 27

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Activation Counter

Ballot

t:= (x, y, z)

Token

(cp, s)

y:= Hash( SignID(x, z) ) Activation counter

slide-28
SLIDE 28

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballot Structure

Signature over Triple

Ballot

t:= (x, y, z)

Token

(cp, s)

y:= Hash( SignID(x, z) ) Activation counter

Signcs(t)

slide-29
SLIDE 29

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

(x, y1, z1)

slide-30
SLIDE 30

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

Using a Number of Triples

(x, y1, z1)

slide-31
SLIDE 31

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

Triple Encryption with Designated Receiver

(x, y1, z1)

slide-32
SLIDE 32

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

Triple Encryption with Designated Receiver

(x, y1, z1)

EDR(Ballot1) EDR(Ballot1) EDR(Ballot1)

slide-33
SLIDE 33

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

Sending Components to BB

(x, y1, z1)

EDR(Ballot1) EDR(Ballot1) EDR(Ballot1)

slide-34
SLIDE 34

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

Sending Components to BB

(x, y1, z1)

EDR(Ballot1) Ballot Box Ballot Box EDR(Ballot1) EDR(Ballot1) Ballot Box

slide-35
SLIDE 35

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

BB Confirmation

(x, y1, z1)

EDR(Ballot1) Ballot Box Ballot Box EDR(Ballot1) EDR(Ballot1) Ballot Box

slide-36
SLIDE 36

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Casting a Vote

BB Confirmation

(x, y1, z1)

EDR(Ballot1) Ballot Box Ballot Box EDR(Ballot1) EDR(Ballot1) Ballot Box C1 C2 C3 confirmations

slide-37
SLIDE 37

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box

slide-38
SLIDE 38

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box

slide-39
SLIDE 39

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box

slide-40
SLIDE 40

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box

slide-41
SLIDE 41

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box

Cascade of mixing servers

slide-42
SLIDE 42

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Ballots mixing

Ballot Box Ballot Box Ballot Box Counting Authority

Cascade of mixing servers

slide-43
SLIDE 43

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Grouping Triples of one Voter

(x, y1, z1)

slide-44
SLIDE 44

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Counting Activation Trigger for Yes Polynomial

(x, y1, z1)

∑ zi=

? 0

slide-45
SLIDE 45

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Building a Polynomial Share

(x, y1, z1) (x, )

F ∑ yi F ∑ yi

∑ zi=

? 0

slide-46
SLIDE 46

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Undeniable Signature Over yi components

(x, y1, z1) (x, )

F ∑ yi F ∑ yi

∑ zi=

? 0

F - undeniable

signature

slide-47
SLIDE 47

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

A Point

(x, y1, z1) (x, )

F ∑ yi F ∑ yi

∑ zi=

? 0

F - undeniable

signature

slide-48
SLIDE 48

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Points of other Voters

(x, y1, z1) (x, )

F ∑ yi F ∑ yi

∑ zi=

? 0

F - undeniable

signature

slide-49
SLIDE 49

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Counting Votes

Polynomial Interpolation

(x, y1, z1) (x, )

F ∑ yi F ∑ yi

∑ zi=

? 0

Wyes

F - undeniable

signature

slide-50
SLIDE 50

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Publishing Results

Wyes

slide-51
SLIDE 51

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Publishing Results

Erasing Original Interpolation Set

Wyes

slide-52
SLIDE 52

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Publishing Results

Setting New Interpolation Set

Wyes

slide-53
SLIDE 53

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Publishing Results

Setting New Interpolation Set

Wyes

( 1, Wyes(1) ), ..., ( N, Wyes(N) )

slide-54
SLIDE 54

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Publishing Results

Publishing the New Interpolation Set

Wyes

( 1, Wyes(1) ), ..., ( N, Wyes(N) )

New interpolation set is published

slide-55
SLIDE 55

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Voter Present Ballots and Confirmations from BB

(x, y1, z1)

C1

slide-56
SLIDE 56

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Checking the Equality of Cardinalities

(x, y1, z1)

C1

slide-57
SLIDE 57

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Checking the Equality of Cardinalities

(x, y1, z1)

C1

no.of ballots=

? no.of confirmations

slide-58
SLIDE 58

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Counting Activation Trigger

(x, y1, z1)

slide-59
SLIDE 59

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Counting Activation Trigger

(x, y1, z1)

∑ zi=

? 0

slide-60
SLIDE 60

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Checking the Share of Polynomial

(x, y1, z1)

∑ zi=

? 0

W yesx=

? F∑ yi

slide-61
SLIDE 61

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Interactive Verification of Undeniable Signature

(x, y1, z1)

∑ zi=

? 0

W yesx=

? F∑ yi Interactive zero knowledge verification with CA

slide-62
SLIDE 62

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Verification by a Voter

Features

Basic Properties

1 it is risky for CA to modify (or not to include) a vote 2 the value

F(

  • yi)

is proved in the court only

3 recorded session proof has no value

slide-63
SLIDE 63

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Number of Votes Verified

Features

Process a procedure to ensure that the number of votes cast is correct – see the paper for details

slide-64
SLIDE 64

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Vote selling

Features

Vote selling does not work

1 the voter can always send an additional triple — flip the

vote value

2 additional triple can be sent before selling the vote

so retaining the ID card from a voter or vote buying just before the end of the election day does not work

slide-65
SLIDE 65

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Perspectives

1 the keys for F must be kept in an HSM and destroyed

physically once the results are fixed

2 even if F becomes broken in 10 years it is hard to say

which points of the polynomial have been used for interpolation

slide-66
SLIDE 66

Lagrangian E-Voting e-Voting

Concept Our contribution

Scheme Description

Registration Ballot Structure Casting a Vote Mixing Cascades Verification by a Voter Verification

Thank you for your attention! contact miroslaw.kutylowski@pwr.wroc.pl