practical fully secure inner product functional
play

Practical Fully Secure Inner Product Functional Encryption modulo p - PowerPoint PPT Presentation

Practical Fully Secure Inner Product Functional Encryption modulo p Guilhem Castagnos 1 Fabien Laguillaumie 2 Ida Tucker 2 1 Universit de Bordeaux, INRIA, CNRS, IMB UMR 5251, F-33405 Talence, France. 2 Univ Lyon, CNRS, Universit Claude Bernard


  1. Practical Fully Secure Inner Product Functional Encryption modulo p Guilhem Castagnos 1 Fabien Laguillaumie 2 Ida Tucker 2 1 Université de Bordeaux, INRIA, CNRS, IMB UMR 5251, F-33405 Talence, France. 2 Univ Lyon, CNRS, Université Claude Bernard Lyon 1, ENS de Lyon, INRIA, LIP UMR 5668, F-69007, LYON Cedex 07, France.

  2. Table of contents 1. Functional Encryption (FE) 2. The Inner Product Functionality 3. Framework 4. Inner Product Functional Encryption mod p from HSM 1

  3. Functional Encryption (FE)

  4. KeyDer msk F Dec sk F C Functional Encryption [BSW11] F Bob only learns F m . F m C sk F sk F sk F Enc mpk m Bob C mpk m Alice Setup Auth. Function F 2 ( mpk , msk )

  5. KeyDer msk F Dec sk F C Functional Encryption [BSW11] sk F Bob only learns F m . F m C sk F sk F F Bob mpk m Alice Setup Auth. Function F 2 ( mpk , msk ) C = Enc ( mpk , m )

  6. Dec sk F C Functional Encryption [BSW11] F Bob only learns F m . F m C sk F sk F 2 Bob mpk m Alice Setup Auth. Function F ( mpk , msk ) C = Enc ( mpk , m ) sk F = KeyDer ( msk , F )

  7. Functional Encryption [BSW11] Bob Bob only learns F m . C sk F sk F F 2 mpk m Alice Setup Auth. Function F ( mpk , msk ) C = Enc ( mpk , m ) sk F = KeyDer ( msk , F ) Dec ( sk F , C ) → F ( m )

  8. Functional Encryption [BSW11] mpk C sk F sk F F Bob 2 m Alice Setup Auth. Function F ( mpk , msk ) C = Enc ( mpk , m ) sk F = KeyDer ( msk , F ) Dec ( sk F , C ) → F ( m ) Bob only learns F ( m ) .

  9. F 1 F 2 sk F 1 sk F 2 F q F q sk F q sk F q F i m 0 F i m 1 FE Security – Indistinguishability KeyDer b b and i 1 1 Oracle 3 Challenger b mpk Setup FE Scheme A mpk , msk m 0 , m 1 $ b ∗ ← − { 0 , 1 } C ∗ C ∗ Enc ( mpk , m b ∗ ) b = b ∗

  10. FE Security – Indistinguishability b and Oracle KeyDer b b Challenger 3 mpk FE Scheme Setup A mpk , msk F 1 , F 2 . . . sk F 1 , sk F 2 . . . m 0 , m 1 $ b ∗ ← − { 0 , 1 } C ∗ C ∗ Enc ( mpk , m b ∗ ) F q , F q + 1 . . . sk F q , sk F q + 1 . . . ∀ i , F i ( m 0 ) = F i ( m 1 ) b = b ∗

  11. Limits of General Functional Encryption Constructions of FE for general functions exist, but are not practical Linear Functions: simple with many applications • Understand general FE • Statistical analysis on encrypted data • Evaluation of polynomials over encrypted data [KSW08] • Constructing trace-and-revoke systems [ABP 17] • etc. 4 [SS10, GVW12, GKP + 13a, GKP + 13b, ABSV15, Wat15, BGJS16, GGHZ16]

  12. Limits of General Functional Encryption Constructions of FE for general functions exists, but are not practical • Understand general FE • Statistical analysis on encrypted data • Evaluation of polynomials over encrypted data [KSW08] • Constructing trace-and-revoke systems [ABP 17] • etc. 4 [SS10, GVW12, GKP + 13a, GKP + 13b, ABSV15, Wat15, BGJS16, GGHZ16] ⇒ Linear Functions: simple with many applications

  13. Limits of General Functional Encryption Constructions of FE for general functions exists, but are not practical • Understand general FE • Statistical analysis on encrypted data • Evaluation of polynomials over encrypted data [KSW08] • Constructing trace-and-revoke systems • etc. 4 [SS10, GVW12, GKP + 13a, GKP + 13b, ABSV15, Wat15, BGJS16, GGHZ16] ⇒ Linear Functions: simple with many applications [ABP + 17]

  14. The Inner Product Functionality

  15. The inner product functionality Alice y C Bob y 5 Auth. x Setup ( mpk , msk ) � � x , sk � C = Enc ( mpk ,� � � x ,� y ) y � = Dec ( sk � x , C ) F x : R ℓ �→ R �→ � � x ,� y �

  16. Previous work PKC 2017 and effjcient! no restriction on size adaptive security IPFE mod p This work: Asiacrypt 2018 or are ineffjcient. large inner products Schemes mod p do not recover from HPS. constructions Generic [BBL17] than [ALS16]. PKC 2015 less effjcient Full security, [ABCP16] 2016 DDH and DCR. from LWE, Full security, [ALS16] Crypto 2016 only selectively secure. from LWE and DDH, First IPFE schemes, [ABDP15] 6

  17. Previous work PKC 2017 and effjcient! no restriction on size adaptive security IPFE mod p This work: Asiacrypt 2018 or are ineffjcient. large inner products Schemes mod p do not recover from HPS. constructions Generic [BBL17] than [ALS16]. PKC 2015 less effjcient Full security, [ABCP16] 2016 DDH and DCR. from LWE, Full security, [ALS16] Crypto 2016 only selectively secure. from LWE and DDH, First IPFE schemes, [ABDP15] 6

  18. Framework

  19. Framework (sketch) [CL15] Group with an easy discrete logarithm ( DL ) subgroup 7 • G = � g � cyclic group of order p · s such that gcd( p , s ) = 1. • p large prime • s unknown • F = � f � subgroup of G of order p . • G p = � g p � = { x p , x ∈ G } subgroup of G of order s , G = F × G p . (DL: given f and h = f x , fjnd x ∈ Z / p Z ) • DL is easy in F

  20. New Assumption Hard Subgroup Membership problem HSM : Hard to distinguish p -th powers in G 7 $ $ { x ← − G } ≈ c { x ← − G p } .

  21. Analogy to Paillier’s cryptosystem Paillier’s framework Our framework • Size of p independent of security parameter • Instantiation: class groups of an imaginary quadratic fjeld [CL15] 8 • Message space Z / N Z with N RSA modulus • Relies on Paillier’s DCR assumption • e.g. distinguishing N th powers in Z / N 2 Z • Messages encoded in Z / p Z with p prime • Relies on HSM assumption • e.g. distinguishing p th powers in G of order p · s

  22. p s.t. g x x p x Sampling exponents g x better effjciency (shorter exponents) than folded uniforms In practice: Folded gaussian distributions with large standard deviation G p p G and Problem and Use upper bound s of s to instantiate distributions Solution 9 s unknown, so orders of G p and G unknown ⇒ Cannot sample uniformly from G or G p !

  23. Sampling exponents Problem Solution In practice: Folded gaussian distributions with large standard deviation 9 s unknown, so orders of G p and G unknown ⇒ Cannot sample uniformly from G or G p ! Use upper bound ˜ s of s to instantiate distributions D and D p s.t. { g x , x ← ֓ D} ≈ U ( G ) and { g x p , x ← ֓ D p } ≈ U ( G p ) ⇒ better effjciency (shorter exponents) than folded uniforms

  24. Inner Product Functional Encryption mod p from HSM

  25. f y 1 f y p C 1 Dec From C x and sk x : KeyDer h r 1 C h r IPFE scheme mod p from HSM (simplifjed) Input: x x Z p Z Output key: sk x t x x y mod p x 1 g r 10 y p Enc Plaintext: y C 0 y 1 Z p Z Sample r p Ciphertext: C Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ )

  26. Dec From C x and sk x : IPFE scheme mod p from HSM (simplifjed) Ciphertext: x y mod p t x Output key: sk x Z p Z x x 1 Input: x KeyDer 10 p Enc Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ ) Plaintext: � y = ( y 1 , . . . , y ℓ ) ∈ ( Z / p Z ) ℓ Sample r ← ֓ D p � p , C 1 = f y 1 · h r 1 , . . . , C ℓ = f y ℓ · h r C = ( C 0 = g r ℓ )

  27. Dec From C x and sk x : IPFE scheme mod p from HSM (simplifjed) Enc x y mod p KeyDer Ciphertext: 10 p Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ ) Plaintext: � y = ( y 1 , . . . , y ℓ ) ∈ ( Z / p Z ) ℓ Sample r ← ֓ D p � p , C 1 = f y 1 · h r 1 , . . . , C ℓ = f y ℓ · h r C = ( C 0 = g r ℓ ) Input: � x = ( x 1 , . . . , x ℓ ) ∈ ( Z / p Z ) ℓ x = � � t ,� x � Output key: sk �

  28. IPFE scheme mod p from HSM (simplifjed) Enc KeyDer Ciphertext: 10 p Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ ) Plaintext: � y = ( y 1 , . . . , y ℓ ) ∈ ( Z / p Z ) ℓ Sample r ← ֓ D p � p , C 1 = f y 1 · h r 1 , . . . , C ℓ = f y ℓ · h r C = ( C 0 = g r ℓ ) Input: � x = ( x 1 , . . . , x ℓ ) ∈ ( Z / p Z ) ℓ x = � � t ,� x � Output key: sk � Dec From � C ,� x and sk � x : � � x ,� y � mod p

  29. IPFE scheme mod p from HSM (simplifjed) Enc Ciphertext: KeyDer p 10 Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ ) Plaintext: � y = ( y 1 , . . . , y ℓ ) ∈ ( Z / p Z ) ℓ Sample r ← ֓ D p � p , C 1 = f y 1 · h r 1 , . . . , C ℓ = f y ℓ · h r C = ( C 0 = g r ℓ ) Input: � x = ( x 1 , . . . , x ℓ ) ∈ ( Z / p Z ) ℓ x = � � t ,� x � Output key: sk � Dec From � � ℓ i = � ( f y i · h r C ,� i ) x i x and sk � i = 1 C x i x : � � x ,� y � mod p

  30. IPFE scheme mod p from HSM (simplifjed) Enc p KeyDer Ciphertext: 10 p Setup For i = 1 , . . . , ℓ do t i ← ֓ D and h i = g t i msk = � t and mpk = ( h 1 , . . . , h ℓ ) Plaintext: � y = ( y 1 , . . . , y ℓ ) ∈ ( Z / p Z ) ℓ Sample r ← ֓ D p � p , C 1 = f y 1 · h r 1 , . . . , C ℓ = f y ℓ · h r C = ( C 0 = g r ℓ ) Input: � x = ( x 1 , . . . , x ℓ ) ∈ ( Z / p Z ) ℓ x = � � t ,� x � Output key: sk � Dec From � � ℓ � y i x i · g r · � t i x i C ,� i = f x and sk � i = 1 C x i x : � � x ,� y � mod p

Recommend


More recommend