30.01.2013 Views

Logical Analysis and Verification of Cryptographic Protocols - Loria

Logical Analysis and Verification of Cryptographic Protocols - Loria

Logical Analysis and Verification of Cryptographic Protocols - Loria

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

188 CHAPTER 7. VOTER VERIFIABILITY FOR E-VOTING PROTOCOLS<br />

7.5.2 Traditional ballot box voting example<br />

Our second protocol is similar to the traditional ballot box voting system. A<br />

voter selects her vote <strong>and</strong> completes the ballot paper accordingly; she then<br />

places the ballot paper anonymously in the ballot box, without recording her<br />

name or any other identification information. This system can be transformed<br />

into an electronic system by publishing a vote ¯vi on the bulletin board. The specification<br />

<strong>of</strong> this protocol is defined by 〈V, 0, (), (), ()〉 where V � bb〈u〉. Hence we<br />

have that<br />

�V P ({¯v1/u}, . . . , {¯vn/u}) = bb〈¯v1〉 | . . . | bb〈¯vn〉<br />

Such a protocol should obviously not be individually verifiable. We will show<br />

that our definition is indeed violated. The set <strong>of</strong> irreducible processes {B |<br />

V P (−→ ∗ α −→−→ ∗ ) ∗ B} consists <strong>of</strong> the set <strong>of</strong> frames<br />

{σp = {¯vp(1)/x ′ 1 , . . . , ¯vp(n)/x ′ } | n<br />

p is a permutation on {1, . . . , n}}<br />

We suppose that there exist a, b such that a �= b <strong>and</strong> ¯va = ¯vb, i.e. two voters<br />

cast the same vote. Let k · n be the number <strong>of</strong> c〈M〉 in � V P ({¯v1/u}, . . . , {¯vn/u}).<br />

It follows that k = 1 <strong>and</strong> we simply write f instead <strong>of</strong> f1. By contradiction,<br />

suppose for all σp that there exists f <strong>and</strong> R IV such that for all i, j <strong>and</strong> v ′ we have<br />

RIV {v ′ /u, x ′<br />

f(i)/x}σp iff i = j ∧ v ′ = ¯vj. However as ¯va = ¯vb there exist i, j such<br />

that x ′ f(i) σp = x ′ f(j) σp. Hence, we obtain RIV {v ′ /u, x ′<br />

f(i)/x}σp <strong>and</strong> i �= j ∧ v ′ = ¯vj<br />

which contradicts the hypothesis.<br />

7.5.3 Protocol due to Fujioka, Okamoto & Ohta<br />

Description The protocol [115] involves voters, an administrator <strong>and</strong> a collector.<br />

The voter computes her ballot b = commit(¯v, r) <strong>and</strong> sends the signature<br />

sign(blind(b, r ′ ), skV ) with her blind ballot blind(b, r ′ ) to the administrator. The<br />

administrator verifies the signature, signs this blind ballot sign(blind(b, r ′ ), skA)<br />

<strong>and</strong> returns it. The voter verifies the administrator’s signature <strong>and</strong> unblinds<br />

the received message to recover the signature <strong>of</strong> her ballot by the administrator<br />

sign(b, skA). The voter then posts her ballot b <strong>and</strong> the administrator’s signature<br />

<strong>of</strong> her ballot sign(b, skA) to the bulletin board. The collector receives<br />

(b, sign(b, skA)) from the bulletin board, verifies the signature <strong>and</strong> if the verification<br />

succeeds, places (l, b, sign(b, skA)) on the bulletin board. The voter checks<br />

the bulletin board for her entry, discovers l <strong>and</strong> posts on the bulletin board l<br />

<strong>and</strong> r. Finally, the collector opens all <strong>of</strong> ballots on the bulletin board using the<br />

corresponding r’s. To capture the protocol we consider the equational theory E<br />

defined by:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!