Page 85 - Towards Trustworthy Elections New Directions in Electronic Voting by Ed Gerck (auth.), David Chaum, Markus Jakobsson, Ronald L. Rivest, Peter Y. A. Ryan, Josh Benaloh, Miroslaw Kutylowski, Ben Adida ( (z-lib.org (1)
P. 85

77
                                     Receipt-Free K-out-of-L Voting Based on ElGamal Encryption
                          simulator. More precisely, a diverted proof for  e is generated as follows: First,
                          the randomizer used the simulator to generate a random validity proof for  e
                          with challenge 0 (here we use that the Σ-proof is special zero-knowledge). Then,
                          the voter and the randomizer engage in an interactive validity proof for  e.The
                          diverted proof is then the sum of these two proofs.
                                                                                         ∈ R Z u ,
                                                                                      i,0
                            More precisely, the randomizer selects random “displacements” c

                                          i,0
                                  i,0
                          c i,1  = −c ,and β ,β i,1  ∈ R R for i =1,... ,L. The displacements are chosen

                          such that c i,1  + c i,0  =0 forall i, i.e., the sum of the new sub-challenges will
                          not change. Upon reception of the first message (e ,e ) of the interactive


                                                                        i,0  i,1
                          Σ-proof, the randomizer computes the first “message” of the non-interactive
                          diverted proof as

                                                                                i,1
                               i,0  i,0       i,0   i,0          i,1  i,1  ⊕ E(0,β )   c e i,1
                                                                                      i,1
                              e  = e   ⊕ E(0,β )   c e i,0 ,    e  = e

                                                     i,0
                                                        i,1
                          and asks as challenge c = H(e ,e ). When receiving the third message (c i,0 ,


                          c i,1 ,β i,0 ,β i,1 ), the randomizer computes the third “message” (c ,c ,β ,β )


                                                                                        i,0
                                                                                    i,1
                                                                                 i,0
                                                                                            i,1
                          of the non-interactive diverted proof as

                                                                                           i,1
                                                        i,1
                                                                         i,0
                                       i,0
                           c i,0  = c i,0   c ,  c i,1  = c i,1   c ,  β i,0  = β i,0   β ,  β i,1  = β i,1   β .


                                                                             i,0
                                                                                         i,0
                                                                                 i,1
                                                                                             i,1
                          One can easily verify that the diverted conversation (e ,e ),c, (c ,c ,


                          β ,β ) is accepting for e i (due to the linearity of the validity proof). Note

                           i,0
                               i,1
                          that in the interactive validity proof, L such proofs are run in parallel with the
                          same challenge (AND-combination). The above diversion is then applied on each
                          parallel instance independently. Furthermore, as the original interactive proof is
                          honest-verifier zero-knowledge only, one must ensure that the challenge of the
                          randomizer is chosen at random. This is achieved by having the randomizer not
                          only send c to the voter, but instead all e , such that the voter can apply the

                                                              i,j
                          hash function himself. Obviously, then the voter knows that the challenge is
                          selected at random under the random oracle assumption.
                          Adjusting the diverted validity proof to  e . With the above protocol, the random-
                                                            ∗
                          izer can construct a diverted non-interactive validity proof for  e.It remains to
                          convert this proof into a validity proof for  e . So consider the following diverted
                                                                ∗

                                                                                   ,β ]. Then one
                          validity proof for  e:[c, c 1,0 ,...,c L,0 ,β 1,0  ,...,β L,0 ,β 1,1  ,...,β L,1  Σ
                          can easily verify that the following vector is a validity proof for the re-encrypted
                                ∗
                          ballot  e =  e ⊕ E(0, ξ):


                                             Σ
                            [c, c 1,0 ,...,c L,0 ,  β   (ξ 1   ...   ξ L ),

                                                                                          ξ
                                                            ξ
                                             ξ
                                    β 1,0    c 1,0 1 ,...,β L,0    c L,0 L ,  β 1,1    c 1,1 1 ,...,β L,1    c L,1 L ].
                                                                          ξ
                          6.3  Security Analysis (of the Vote-Casting Protocol)
                          The vote-casting protocol must satisfy two requirements: First, the randomizer
                          must not learn the vote. Second, the voter must not be able to proof any corre-
                          spondence between the original ballot  e and the re-encrypted ballot  e .
                                                                                      ∗
   80   81   82   83   84   85   86   87   88   89   90