outline efficient receipt freeness for e voting
play

Outline Efficient Receipt-Freeness for e-Voting David Pointcheval - PowerPoint PPT Presentation

Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Outline Efficient Receipt-Freeness for e-Voting David Pointcheval 1 Introduction


  1. Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Outline Efficient Receipt-Freeness for e-Voting David Pointcheval 1 Introduction Joint work with Olivier Blazy, Georg Fuchsbauer and Damien Vergnaud 2 Cryptographic Tools Ecole normale sup´ erieure, CNRS & INRIA 3 Electronic Voting: State-of-the-Art 4 Signatures on Randomizable Ciphertexts Chinacrypt – Beijing – China October 17th, 2010 David Pointcheval – 1/43 David Pointcheval – 2/43 Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Electronic Voting Outline Dessert Choice If one wants to get preferences for the desserts, one asks people to vote for Introduction 1 � Chocolate Cake Electronic Voting � Cheese Cake Homomorphic Encryption � Ice Cream Apple � 2 Cryptographic Tools with e.g. , possibly 2 choices 3 Electronic Voting: State-of-the-Art After collection of the ballots, one counts the number of choices: Chocolate Cake 243 1 Chocolate Cake 4 Signatures on Randomizable Ciphertexts Cheese Cake 111 2 Ice Cream → Ice Cream 167 3 Cheese Cake Apple 52 4 Apple David Pointcheval – 3/43 David Pointcheval – 4/43

  2. Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Electronic Voting Homomorphic Encryption Electronic Voting: Basic Properties General Approach: Homomorphic Encryption Authentication Homomorphic Encryption & Signature Only people authorized to vote should be able to vote The voter generates his vote v ∈ { 0 , 1 } (for each � ) Voters should vote only once The voter encrypts v to the server → c = E pk ( v ; r ) The voter signs his vote → σ = S usk ( c ; s ) Anonymity Such a pair ( c , σ ) is a ballot Votes and voters should be unlinkable unique per voter, because it is signed by the voter anonymous, because the vote is encrypted Main Approaches Counting: granted homomorphic encryption, anybody can compute Blind Signatures Homomorphic Encryption ← the most promising � � � � C = c = E pk ( v i ; r i ) = E pk ( v i ; r i ) = E pk ( V ; R ) The server decrypts the tally V = D sk ( C ) , and proves it David Pointcheval – 5/43 David Pointcheval – 6/43 Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Homomorphic Encryption Homomorphic Encryption General Approach: Homomorphic Encryption General Approach: Homomorphic Encryption Weaknesses Security Anonymity: the server can decrypt any individual vote uniqueness per voter: the voter signs his vote → use of distributed decryption (threshold decryption) anonymity: the voter encrypts his vote Receipt: if a voter wants to sell his vote, r i is a proof (a coercer can also provide a modified voting client system Universal Verifiability in order to generate a receipt or even receive it directly) Soundness: every step can be proven and publicly checked → re-randomization of the ciphertext identity of voter: proof of identity = signature Distributed decryption is easy (ElGamal, Linear, etc), validity of the vote: proof of bit encryption + more while re-randomization of the ciphertext requires more work! decryption: proof of decryption Receipt-Freeness All the steps (voting + counting) can be checked afterwards Our goal is to prevent receipts Helios is from this family: the IACR e-voting process → receipt-free electronic system David Pointcheval – 7/43 David Pointcheval – 8/43

  3. Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Computational Assumptions Outline Assumptions: Diffie-Hellman Definition (The Computational Diffie-Hellman problem ( CDH )) Introduction 1 G a cyclic group of prime order p . The CDH assumption in G states: Cryptographic Tools for any generator g $ ← G , and any scalars a , b $ 2 ← Z ∗ p , Computational Assumptions given ( g , g a , g b ) , it is hard to compute g ab . Signature & Encryption Security Definition (The Decisional Diffie-Hellman problem ( DDH )) Groth-Sahai Methodology G a cyclic group of prime order p . The DDH assumption in G states: Electronic Voting: State-of-the-Art 3 for any generator g $ ← G , and any scalars a , b , c $ ← Z ∗ p , given ( g , g a , g b , g c ) , it is hard to decide whether c = ab or not. Signatures on Randomizable Ciphertexts 4 In some pairing-friendly groups, the latter assumption is wrong. David Pointcheval – 9/43 David Pointcheval – 10/43 Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Computational Assumptions Signature & Encryption Assumptions: Linear Problem General Tools: Signature Definition (Decision Linear Assumption ( DLin )) Definition (Signature Scheme) G a cyclic group of prime order p . S = ( Setup , SKeyGen , Sign , Verif ) : The DLin assumption states: Setup ( 1 k ) → global parameters param ; for any generator g $ ← G , and any scalars a , b , x , y , c $ ← Z ∗ p , SKeyGen ( param ) → pair of keys ( sk , vk ) ; given ( g , g x , g y , g xa , g yb , g c ) , Sign ( sk , m ; s ) → signature σ , using the random coins s ; it is hard to decide whether c = a + b or not. Verif ( vk , m , σ ) → validity of σ Equivalently, given a reference triple ( u = g x , v = g y , g ) and a new triple ( U = u a = g xa , V = v b = g yb , T = g c ) , If one signs F = F ( M ) , for any function F , one extends the above decide whether T = g a + b or not (that is c = a + b ). definitions: Sign ( sk , ( F , F , Π M ); s ) and Verif ( vk , ( F , F , Π M ) , σ ) where F details the function that is applied to the message M yielding F , and Π M is a proof of knowledge of a preimage of F under F . David Pointcheval – 11/43 David Pointcheval – 12/43

  4. Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Signature & Encryption Signature & Encryption Signature: Example General Tools: Encryption In a group G of order p , with a generator g , Definition (Encryption Scheme) and a bilinear map e : G × G → G T E = ( Setup , EKeyGen , Encrypt , Decrypt ) : Waters Signature [Waters, 2005] Setup ( 1 k ) → global parameters param ; For a message M = ( M 1 , . . . , M k ) ∈ { 0 , 1 } k , EKeyGen ( param ) → pair of keys ( pk , dk ) ; u = ( u 0 , . . . , u k ) $ � k i = 1 u M i we define F ( M ) = u 0 i , where � ← G k + 1 . Encrypt ( pk , m ; r ) → ciphertext c , using the random coins r ; For an additional generator h $ ← G . Decrypt ( dk , c ) → plaintext, or ⊥ if the ciphertext is invalid. SKeyGen : vk = X = g x , sk = Y = h x , for x $ ← Z p ; Sign ( sk = Y , M ; s ) , for M ∈ { 0 , 1 } k and s $ ← Z p Homomorphic Encryption � σ 1 = Y · F ( M ) s , σ 2 = g − s � → σ = ; For some group laws: ⊕ on the plaintext, ⊗ on the ciphertext, Verif ( vk = X , M , σ = ( σ 1 , σ 2 )) checks whether and ⊙ on the randomness e ( g , σ 1 ) · e ( F ( M ) , σ 2 ) = e ( X , h ) . Encrypt ( pk , m 1 ; r 1 ) ⊗ Encrypt ( pk , m 2 ; r 2 ) = Encrypt ( pk , m 1 ⊕ m 2 ; r 1 ⊙ r 2 ) Decrypt ( sk , Encrypt ( pk , m 1 ; r 1 ) ⊗ Encrypt ( pk , m 2 ; r 2 )) = m 1 ⊕ m 2 David Pointcheval – 13/43 David Pointcheval – 14/43 Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Introduction Cryptographic Tools State-of-the-Art Signatures on Ciphertexts Signature & Encryption Security Encryption: Example Security Notions: Signature In a group G of order p , with a generator g : Signature: EF-CMA Linear Encryption [Boneh, Boyen, Shacham, 2004] Existential Unforgeability EKeyGen : dk = ( x 1 , x 2 ) $ under Chosen-Message ← Z 2 p , pk = ( X 1 = g x 1 , X 2 = g x 2 ) ; Attacks Encrypt ( pk = ( X 1 , X 2 ) , m ; ( r 1 , r 2 )) , for m ∈ G and ( r 1 , r 2 ) $ ← Z 2 p An adversary should not be c 1 = X r 1 1 , c 2 = X r 2 2 , c 3 = g r 1 + r 2 · m � � → c = ; able to generate a new valid m = c 3 / c 1 / x 1 c 1 / x 2 message-signature pair Decrypt ( dk = ( x 1 , x 2 ) , c = ( c 1 , c 2 , c 3 )) → . 1 2 even if it is allowed to ask signatures on any message Homomorphism of its choice ( ⊕ M = × , ⊗ C = × , ⊙ R = +) -homomorphism With m = g M → ( ⊕ M = + , ⊗ C = × , ⊙ R = +) -homomorphism Impossibility to forge signatures Waters signature reaches EF-CMA under the CDH assumption David Pointcheval – 15/43 David Pointcheval – 16/43

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend