chosen ciphertext security from subset sum
play

Chosen-Ciphertext Security from Subset Sum PKC 2016, 07.03.2016 - PowerPoint PPT Presentation

Chosen-Ciphertext Security from Subset Sum PKC 2016, 07.03.2016 Sebastian Faust 1 Daniel Masny 1 Daniele Venturi 2 1 Ruhr Universitt Bochum 2 Sapienza University of Rome 1 Outline 1 Our Contribution 2 Subset Sum 3 CCA secure PKE 4 Tag-Based


  1. Chosen-Ciphertext Security from Subset Sum PKC 2016, 07.03.2016 Sebastian Faust 1 Daniel Masny 1 Daniele Venturi 2 1 Ruhr Universität Bochum 2 Sapienza University of Rome 1

  2. Outline 1 Our Contribution 2 Subset Sum 3 CCA secure PKE 4 Tag-Based Encryption

  3. Our Contribution State of the Art ▶ CPA-secure Public Key Encryption (PKE) from Subset Sum [LPS10]. 3

  4. Our Contribution State of the Art ▶ CPA-secure Public Key Encryption (PKE) from Subset Sum [LPS10]. ▶ The security decreases with the message length. 3

  5. Our Contribution State of the Art ▶ CPA-secure Public Key Encryption (PKE) from Subset Sum [LPS10]. ▶ The security decreases with the message length. ▶ Solution: split message (not possible for CCA) 3

  6. Our Contribution State of the Art ▶ CPA-secure Public Key Encryption (PKE) from Subset Sum [LPS10]. ▶ The security decreases with the message length. ▶ Solution: split message (not possible for CCA) Our Results ▶ We construct a CCA-secure PKE from Subset Sum (using [MP12]). 3

  7. Our Contribution State of the Art ▶ CPA-secure Public Key Encryption (PKE) from Subset Sum [LPS10]. ▶ The security decreases with the message length. ▶ Solution: split message (not possible for CCA) Our Results ▶ We construct a CCA-secure PKE from Subset Sum (using [MP12]). ▶ The security of our PKE does not decrease with the message length. 3

  8. Outline 1 Our Contribution 2 Subset Sum 3 CCA secure PKE 4 Tag-Based Encryption

  9. Subset Sum Subset Sum ( n , µ ) : Find secret s ∈ { 0 , 1 } n , 5

  10. Subset Sum Subset Sum ( n , µ ) : Find secret s ∈ { 0 , 1 } n , given ( A := ( a 1 , . . . , a n ) , t := s 1 a 1 + · · · + s n a n ) ∈ Z n µ × Z µ . 5

  11. Subset Sum Subset Sum ( n , µ ) : Find secret s ∈ { 0 , 1 } n , given ( A := ( a 1 , . . . , a n ) , t := s 1 a 1 + · · · + s n a n ) ∈ Z n µ × Z µ . Hardness of Subset Sum n δ := log µ : n Θ( 1 Θ( log 2 n ) n ) Θ( 1 ) 5

  12. Subset Sum Subset Sum ( n , µ ) : Find secret s ∈ { 0 , 1 } n , given ( A := ( a 1 , . . . , a n ) , t := s 1 a 1 + · · · + s n a n ) ∈ Z n µ × Z µ . Hardness of Subset Sum n δ := log µ : n Θ( 1 1 Θ( log 2 n ) n ) Θ( log n ) Θ( 1 ) 1 ▶ We focus on δ = Θ( log n ) . 5

  13. Subset Sum Subset Sum ( n , µ ) : Find secret s ∈ { 0 , 1 } n , given ( A := ( a 1 , . . . , a n ) , t := s 1 a 1 + · · · + s n a n ) ∈ Z n µ × Z µ . Hardness of Subset Sum n δ := log µ : n Θ( 1 1 Θ( log 2 n ) n ) Θ( log n ) Θ( 1 ) 1 ▶ We focus on δ = Θ( log n ) . Decisional Subset Sum [IN96]: ( A , t ) is hard to distinguish from uniform. 5

  14. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q 6

  15. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q Let µ = q m , 6

  16. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q Let µ = q m , then we can represent a ∈ Z µ as value in Z m q : 6

  17. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q Let µ = q m , then we can represent a ∈ Z µ as value in Z m q : a = a m · q m − 1 + . . . + a 1 · q 0 � = ( a m , . . . , a 1 ) T ∈ Z m q 6

  18. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q Let µ = q m , then we can represent a ∈ Z µ as value in Z m q : a = a m · q m − 1 + . . . + a 1 · q 0 � = ( a m , . . . , a 1 ) T ∈ Z m q 6

  19. “LWE” form of Subset Sum [LPS10] ( A , t ) ∈ Z n µ × Z µ → Z m × n × Z m q q Let µ = q m , then we can represent a ∈ Z µ as value in Z m q : a = a m · q m − 1 + . . . + a 1 · q 0 � = ( a m , . . . , a 1 ) T ∈ Z m q Therefore   a m a m · · · 1 n   . ... . . .  ∈ Z m × n A = ( a 1 , . . . , a n ) � =  . . q a 1 a 1 · · · n 1 6

  20. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m , 7

  21. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m ,       a m a m e m ( A , s ) 1 n       . . . . . .       . . . ∈ Z m = ̸ � s 1   · · · + s n     +   q ,     a 2 a 2 e 2 ( A , s ) 1 n a 1 a 1 e 1 ( A , s ) 1 n 7

  22. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m ,       a m a m e m ( A , s ) 1 n       . . . . . .       . . . ∈ Z m = � s 1   · · · + s n    +    q ,     a 2 a 2 e 2 ( A , s ) 1 n a 1 a 1 e 1 ( A , s ) 1 n where e ( A , s ) is a vector of carries. 7

  23. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m ,       a m a m e m ( A , s ) 1 n       . . . . . .       . . . ∈ Z m = � s 1   · · · + s n    +    q ,     a 2 a 2 e 2 ( A , s ) 1 n a 1 a 1 e 1 ( A , s ) 1 n where e ( A , s ) is a vector of carries. 7

  24. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m ,       a m a m e m ( A , s ) 1 n       . . . . . .       . . . ∈ Z m = � s 1   · · · + s n    +    q ,     a 2 a 2 e 2 ( A , s ) 1 n a 1 a 1 e 1 ( A , s ) 1 n where e ( A , s ) is a vector of carries. 7

  25. “LWE” form of Subset Sum [LPS10] t = s 1 a 1 + · · · + s n a n ∈ Z q m ,       a m a m e m ( A , s ) 1 n       . . . . . .       . . . ∈ Z m = � s 1    · · · + s n    +   q ,     a 2 a 2 e 2 ( A , s ) 1 n a 1 a 1 e 1 ( A , s ) 1 n where e ( A , s ) is a vector of carries. From now on, ( A , t = As + e ( A , s )) ∈ Z m × n × Z m q ( m samples). q 7

  26. Many Samples from Subset Sum µ = q m 8

  27. Many Samples from Subset Sum µ = q m ⇒ m samples 8

  28. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = 8

  29. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = From m to ℓ samples: ▶ given ( A , t ) ∈ Z m × n × Z m q q 8

  30. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = From m to ℓ samples: ▶ given ( A , t ) ∈ Z m × n × Z m q q ▶ R ← D ℓ × m , where D has sufficient min-entropy. q 8

  31. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = From m to ℓ samples: ▶ given ( A , t ) ∈ Z m × n × Z m q q ▶ R ← D ℓ × m , where D has sufficient min-entropy. q ▶ output ( RA , R t = RAs + Re ( A , s )) ∈ Z ℓ × n × Z ℓ q q 8

  32. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = From m to ℓ samples: ▶ given ( A , t ) ∈ Z m × n × Z m q q ▶ R ← D ℓ × m , where D has sufficient min-entropy. q ▶ output ( RA , R t = RAs + Re ( A , s )) ∈ Z ℓ × n × Z ℓ q q ▶ Leftover hash lemma [HILL99]: If ( A , t ) is uniform ⇒ ( A , t , RA , R t ) is uniform. 8

  33. Many Samples from Subset Sum µ = q m ⇒ m samples ⇒ δ = n m · log q (easy for e.g. m = n 2 ) n log µ = From m to ℓ samples: ▶ given ( A , t ) ∈ Z m × n × Z m q q ▶ R ← D ℓ × m , where D has sufficient min-entropy. q ▶ output ( RA , R t = RAs + Re ( A , s )) ∈ Z ℓ × n × Z ℓ q q ▶ Leftover hash lemma [HILL99]: If ( A , t ) is uniform ⇒ ( A , t , RA , R t ) is uniform. ▶ ( RA , R t ) is not Subset Sum distributed ( Re ( A , s ) ̸ = e ( RA , s )) . 8

  34. Outline 1 Our Contribution 2 Subset Sum 3 CCA secure PKE 4 Tag-Based Encryption

  35. CCA secure PKE Given a One-Time Signature ( OTS ), [CHK04]: TBE + OTS → CCA-secure PKE. 10

  36. CCA secure PKE Given a One-Time Signature ( OTS ), [CHK04]: TBE + OTS → CCA-secure PKE. Tag-Based Encryption ( TBE ): TBE = ( Gen , Enc , Dec ) . 10

  37. CCA secure PKE Given a One-Time Signature ( OTS ), [CHK04]: TBE + OTS → CCA-secure PKE. Tag-Based Encryption ( TBE ): TBE = ( Gen , Enc , Dec ) . Correctness: For ( sk , pk ) ← Gen ( 1 n ) : Dec ( sk , τ, Enc ( pk , τ, M )) = M 10

  38. CCA secure PKE Given a One-Time Signature ( OTS ), [CHK04]: TBE + OTS → CCA-secure PKE. Tag-Based Encryption ( TBE ): TBE = ( Gen , Enc , Dec ) . Correctness: For ( sk , pk ) ← Gen ( 1 n ) : Dec ( sk , τ, Enc ( pk , τ, M )) = M Security: 10

  39. CCA secure PKE Adv . Given a One-Time Signature ( OTS ), ( sk , pk ) ← Gen ( 1 n ) [CHK04]: TBE + OTS → CCA-secure PKE. Tag-Based Encryption ( TBE ): M = Dec ( sk , τ, c ) TBE = ( Gen , Enc , Dec ) . · · · b ← { 0 , 1 } Correctness: c ∗ ← Enc ( pk , τ ∗ , M b ) For ( sk , pk ) ← Gen ( 1 n ) : Dec ( sk , τ, Enc ( pk , τ, M )) = M M = Dec ( sk , τ, c ) Security: For all ppt Adv . : Pr [ b ′ = b ] = 1 / 2 . · · ·

Recommend


More recommend