relaxing ind cca indistinguishability against chosen
play

Relaxing IND-CCA: Indistinguishability Against Chosen Ciphertext - PowerPoint PPT Presentation

Relaxing IND-CCA: Indistinguishability Against Chosen Ciphertext Verification Attack Sumit Kumar Pandey Indian Statistical Institute Kolkata January 14, 2012 Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen Outline 1


  1. Relaxing IND-CCA: Indistinguishability Against Chosen Ciphertext Verification Attack Sumit Kumar Pandey Indian Statistical Institute Kolkata January 14, 2012 Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  2. Outline 1 Definitions • Encryption Scheme • IND-CPA • IND-CCA • IND-CCVA 2 Bleichenbacher’s attack on PKCS#1 3 ElGamal Encryption Scheme 4 Cramer-Shoup light version 5 ElGamal-ElGamal Encryption Scheme 6 Generic Construction Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  3. Definition: Encryption Scheme • KG( 1 λ ): A probabilistic polynomial time algorithm which takes security parameter 1 λ as input and outputs a public-private key pair ( PK , SK ). • ENC( m , PK ): A probabilistic polynomial time algorithm which takes a message m and public key PK as input and returns ciphertext C . • DEC( C , SK , PK ): A deterministic polynomial time algorithm which takes ciphertext C , secret key SK and public key PK as input and returns a message m if C is a valid ciphertext else ⊥ . Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  4. Definition: Encryption Scheme • KG( 1 λ ): A probabilistic polynomial time algorithm which takes security parameter 1 λ as input and outputs a public-private key pair ( PK , SK ). • ENC( m , PK ): A probabilistic polynomial time algorithm which takes a message m and public key PK as input and returns ciphertext C . • DEC( C , SK , PK ): A deterministic polynomial time algorithm which takes ciphertext C , secret key SK and public key PK as input and returns a message m if C is a valid ciphertext else ⊥ . For consistency, it is required that for all ( PK , SK ) ← KG(1 λ ) and all messages m , m = DEC(ENC( m , PK ) , SK , PK ). Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  5. Definition: IND-CPA An encryption scheme S ENC is said to be IND-CPA (indistinguishable against chosen plaintext attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  6. Definition: IND-CPA An encryption scheme S ENC is said to be IND-CPA (indistinguishable against chosen plaintext attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: Game IND − CPA S ENC , A • ( PK , SK ) ← KG(1 λ ) • ( m 0 , m 1 , st ) ← A 1 ( PK ) • b R ← { 0 , 1 } • y ← ENC ( m b , PK ) • b ′ ← A 2 ( y , PK , st ) The advantage of A is defined as A dv ( A ) = | Pr( b = b ′ ) − 1 2 | Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  7. Definition: IND-CCA An encryption scheme S ENC is said to be IND-CCA (indistinguishable against chosen ciphertext attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  8. Definition: IND-CCA An encryption scheme S ENC is said to be IND-CCA (indistinguishable against chosen ciphertext attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: • DecryptionOracle ( O ): Given a ciphertext C , except the challenge ciphertext, the oracle returns m ← DEC( C , SK , PK ). Game IND − CCA S ENC , A • ( PK , SK ) ← KG(1 λ ) • ( m 0 , m 1 , st ) ← A O 1 ( PK ) • b R ← { 0 , 1 } • y ← ENC( m b , PK ) • b ′ ← A O 2 ( y , PK , st ) The advantage of A is defined as A dv ( A ) = | Pr( b = b ′ ) − 1 2 | Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  9. Definition: IND-CCVA An encryption scheme S ENC is said to be IND-CCVA (indistinguishable against chosen ciphertext verification attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  10. Definition: IND-CCVA An encryption scheme S ENC is said to be IND-CCVA (indistinguishable against chosen ciphertext verification attack) secure if no probabilistic polynomial time algorithm A = ( A 1 , A 2 ) has a non-negligible advantage in the following game: • ChosenCiphertextVerificationOracle ( O ): Given a ciphertext C , the oracle returns 1 if C is valid else returns 0. Game IND − CCVA S ENC , A • ( PK , SK ) ← KG(1 λ ) • ( m 0 , m 1 , st ) ← A O 1 ( PK ) • b R ← { 0 , 1 } • y ← ENC( m b , PK ) • b ′ ← A O 2 ( y , PK , st ) The advantage of A is defined as A dv ( A ) = | Pr( b = b ′ ) − 1 2 | Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  11. Trivial Conclusions 1 IND-CCVA secure encryption schemes are IND-CPA secure also. IND-CCVA → IND-CPA 2 IND-CCA secure encryption schemes are IND-CCVA secure also. IND-CCA → IND-CCVA Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  12. Does CCVA make sense? Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  13. PKCS#1 • KG( 1 λ ): Choose primes p , q (4 k bit each) and compute n = pq ( n is k byte number). Choose e , d , such that ed ≡ 1 (mod φ ( n )). The public key, PK , is ( n , e ) and the secret key, SK , is ( p , q , d ). • ENC( m , PK ): A data block D , consisting of | D | bytes, is encrypted as follows: • First, a padding string PS , consisting of k − 3 − | D | nonzero bytes, is generated pseudo-randomly (the byte length of PS is atleast 8). • Now, the encryption block EB = 00 || 02 || PS || 00 || D is formed, is converted into an integer x , and is encrypted with RSA, giving the ciphertext c = x e (mod n ). Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  14. PKCS#1 • DEC( c , SK , PK ) A Ciphertext c is decrypted as follows: • Compute x ′ = c d (mod n ). • Converts x ′ into an encryption block EB ′ . • Check, if the encryption block is PKCS conforming ( An encryption block EB consisting of k bytes, EB = EB 1 || . . . || EB k , is called PKCS conforming, if it satisfies the following conditions: EB 1 = 00, EB 2 = 02, EB 3 through EB 10 are nonzero and at least one of the bytes EB 11 through EB k is 00). • If the encryption block is PKCS conforming, then output the data block; otherwise an error sign. Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  15. Bleichenbacher’s Attack on PKCS#1 Bleichenbacher’s attack assumes that the adversary has access to an oracle that, for every ciphertext, returns whether the corresponding plaintext is PKCS conforming. If the plaintext is not PKCS conforming, the oracle outputs an error sign. Given just these error signs, because of specific properties of PKCS #1, Bleichenbacher showed how a very clever program can decrypt a target ciphertext (the oracle answer will reveal the first two bytes of the corresponding plaintext of the chosen ciphertext). Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  16. Bleichenbacher’s Attack on PKCS#1 Bleichenbacher’s attack assumes that the adversary has access to an oracle that, for every ciphertext, returns whether the corresponding plaintext is PKCS conforming. If the plaintext is not PKCS conforming, the oracle outputs an error sign. Given just these error signs, because of specific properties of PKCS #1, Bleichenbacher showed how a very clever program can decrypt a target ciphertext (the oracle answer will reveal the first two bytes of the corresponding plaintext of the chosen ciphertext). D. Bleichenbacher. Chosen Ciphertext Attacks Against Protocols Based on the RSA Encryption Standard PKCS #1. In Proc. Crypto’98, pages 1-12, 1998. Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  17. • CCVA makes sense. Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  18. • CCVA makes sense. Questions 1 Does there exist any encryption scheme which is IND-CCVA secure but not IND-CCA secure? 2 Does there exist any encryption scheme which is IND-CPA secure but not IND-CCVA secure? Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  19. A glance over some existing schemes Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  20. ElGamal Encryption Scheme • KG( 1 λ ): The key generation algorithm runs as follows. • Choose a group G of prime order p , where 2 λ − 1 < p < 2 λ R R • Choose g ← G and x ← Z p . • Compute c = g x . • The public key, PK , for this scheme is tuple ( G , g , c ), with corresponding secret key, SK , is x . • message space = G . • ciphertext space = G × G • ENC( m , PK ): To encrypt a message m ∈ G , the encryption algorithm runs as follows. R • Choose r ← Z p . • Compute u = g r , e = mc r . • The ciphertext, C , is ( u , e ). • DEC( C , SK , PK ): Decryption works in the following way: given the ciphertext ( u , e ) and secret key ( x ), • Compute m = eu − x Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

  21. Security of ElGamal Encryption Scheme • ElGamal is IND-CPA secure if DDH assumption holds in G . Sumit Kumar Pandey Relaxing IND-CCA: Indistinguishability Against Chosen

Recommend


More recommend