projective arithmetic functional encryption
play

Projective Arithmetic Functional Encryption and - PowerPoint PPT Presentation

Projective Arithmetic Functional Encryption and Indistinguishability Obfuscation (iO) from Degree-5 Multilinear maps Prabhanjan Ananth Amit Sahai Constructions of iO All current constructions of iO are based on multilinear maps [GGHRSW13,


  1. Projective Arithmetic Functional Encryption and Indistinguishability Obfuscation (iO) from Degree-5 Multilinear maps Prabhanjan Ananth Amit Sahai

  2. Constructions of iO All current constructions of iO are based on multilinear maps [GGHRSW13, BR14, BGKPS14, PST14, AGIS14, …, AB15, Zim15, GLSW15, GMMSZ16, Lin16a, LV16, Lin16b, …] Multilinear maps: generalization of bilinear maps • Degree-D multilinear maps: can compute degree-D • polynomials in the exponents of the group

  3. What is the minimum degree of multilinear maps required to construct iO? Ideal Goal: 2 large poly(k) 32 constant [LV’16] [Lin’16] Original works [GGHRSW’13, BGKPS’14, …]: • degree = polynomial in security parameter Lin’16: degree = constant • LV’16: degree = 32 •

  4. This Work iO from degree- 5 multinear maps Ideal Goal: 2 5 32 large poly(k,|C|) [LV’16] constant [Lin’16] A new template to construct iO from constant degree multilinear maps

  5. Prior Works [Lin’16,LV’16] Collusion-Resistant Constant Degree Functional Encryption iO Mmaps for boolean circuits

  6. Prior Works [Lin’16,LV’16] Collusion-Resistant Constant Degree Functional Encryption iO Mmaps for boolean circuits MMap computations performed over large fields - To construct FE from mmaps: need to “arithmetize” the boolean circuits -

  7. Our Template Projective Arithmetic Constant Degree FE iO Mmaps for arithmetic circuits PAFE is a version of functional encryption for arithmetic circuits -

  8. Our Template (in detail) Projective Arithmetic Degree- D FE for Multilinear maps Degree- D (subexp. secure) polynomials (subexp. secure) + degree- D randomizing polynomials (Secret Key) [BNPW16, LPST15, AJ15, BV15] Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  9. Instantiation iO Projective Arithmetic from Degree- 5 FE for degree-5 Multilinear maps multilinear Degree- 5 (subexp. secure) maps! polynomials (subexp. secure) + degree- 5 randomizing polynomials (assumes degree-5 PRGs (Secret Key) [BNPW16, LPST15, AJ15, BV15] with poly stretch) Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  10. Instantiation iO Projective Arithmetic from Degree- 5 FE for degree-5 Multilinear maps multilinear Degree- 5 (subexp. secure) maps! polynomials (subexp. secure) + CONCURRENT WORK: degree- 5 Lin’17 built iO assuming randomizing joint SXDH on degree-5 mmaps polynomials (assumes degree-5 PRGs (Secret Key) [BNPW16, LPST15, AJ15, BV15] with poly stretch) Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  11. Technical Overview

  12. Our Template Projective Arithmetic Degree- D FE for Multilinear maps Degree- D (subexp. secure) polynomials (subexp. secure) + degree- randomizing polynomials (Secret Key) [BNPW16, LPST15, AJ15, BV15] Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  13. Projective Arithmetic FE (PAFE) • FIRST ATTEMPT: Same syntax as FE for boolean circuits except that functional keys issued for polynomials (over large fields) Encryption of x + Key of polynomial p := p ( x ) ISSUE: Current techniques are a limiting factor ! If p(x) is large, we don’t know how to construct this notion - Reason: Decryption in existing FE schemes yields Encoding(p(x)) - and can decode only if p(x) is small

  14. Projective Arithmetic FE (PAFE) p 1 p 2 p 3 Key Generation x sk p1 sk p2 sk p3 Encryption + + + … Enc(x) Projective Decrypt ENCODINGS: p 1 (x) p 2 (x) p 3 (x) Can recover linear function of (p 1 (x),p 2 (x),p 3 (x),…) if output of linear function is “small”

  15. Efficiency • Linear Overhead: • Size of encryption of y := |y| poly(k,D) D - degree of polynomials Security • Semi-functional security: • Inspired by ABE literature [ Wat09,LOS+10,…,GGHZ14 ] • Captures a weak form of function hiding

  16. Our Template Projective Arithmetic Degree- D FE for Multilinear maps Degree- D (subexp. secure) polynomials (subexp. secure) + degree- D randomizing polynomials (Secret Key) [BNPW16, LPST15, AJ15, BV15] Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  17. Sub-linear (Secret Key) FE for Boolean circuits SUB-LINEARITY |Enc(x)| = |C| e poly(k,|x|) ; e <1

  18. Randomizing Polynomials C Encode … p N p 1 p 2 … + + + (x, r ) … … Decode + + = C(x) p 1 (x,r) p 2 (x,r) p N (x,r) If all p i is of degree D then it is a degree-D randomizing polynomial

  19. Construction of Sub-linear FE Key Generation of C: C Randomizing Polynomial of C … p N p 1 p 2 PAFE key generation of p 1 ,…,p N … sk pN sk p1 sk p2 Functional key of C = (sk p1 , … , sk pN )

  20. Construction of Sub-linear FE C Key Generation of C: … p N p 1 p 2 … sk pN sk p1 sk p2 Encryption of x: x (x, r ) r

  21. Construction of Sub-linear FE C Key Generation of C: … p N p 1 p 2 SUB-LINEARITY PROPERTY of randomizing polynomials: … sk pN sk p1 sk p2 |r| is sublinear in the length of circuit description Encryption of x: x (x, r ) r

  22. Construction of Sub-linear FE Decryption (INTUITION) : Execute PAFE ProjectiveDecrypt - Execute Recover to obtain encoding of (C,x) - Execute the decoding procedure -

  23. Instantiation of degree-5 randomizing polynomials (with sub-linearity property) WARMUP: Consider degree-3 randomizing polynomials - [AIK’06] (without sub-linearity property) Compress randomness using PRGs! - Use degree 5 PRGs - (maps seed of length n to n 1.49 ) TOTAL DEGREE = 5 * 3 = 15

  24. Instantiation of degree-5 randomizing polynomials (with sub-linearity property) WARMUP: Goldreich PRG candidate: Analysed by O’Donnell and Witmer'14 Consider degree-3 randomizing polynomials - [AIK’06] (without sub-linearity property) Compress randomness using PRGs! - Use degree 5 PRGs - (maps seed of length n to n 1.49 ) TOTAL DEGREE = 5 * 3 = 15

  25. Instantiation of degree-5 randomizing polynomials (with sub-linearity property) WARMUP: Consider degree-3 randomizing polynomials - [AIK’06] (without sub-linearity property) Degree-5 randomizing polynomials: Compress randomness using PRGs! - We use pre-processing trick! Use degree 5 PRGs - (pre-compute some partial terms ahead of time) (maps seed of length n to n 1.49 ) TOTAL DEGREE = 5 * 3 = 15

  26. Our Template Projective Arithmetic Degree- D FE for Multilinear maps Degree- D (subexp. secure) polynomials (subexp. secure) + degree- randomizing polynomials (Secret Key) [BNPW16, LPST15, AJ15, BV15] Sub-linear iO FE for P + sub-exponential LWE (subexp. secure)

  27. Slotted Encodings An abstraction of composite order multi-linear maps Encoding of (a,b,c) w.r.t color: a b c + = Addition w.r.t same color: a 1 +a 2 b 1 +b 2 c 1 +c 2 a 1 b 1 c 1 a 2 b 2 c 2 Multiplication w.r.t = a 1* a 2 a 1 b 1 c 1 a 2 b 2 c 2 b 1* b 2 c 1* c 2 * “compatible” colors: Zero Test w.r.t is ZERO if and only if a+b+c=0 a b c color red:

  28. Degree-D Slotted Encodings from Degree-D Prime order mmap Degree-D slotted encodings: if it allows for evaluating polynomials of degree at most D SIMPLE CASE: Degree=2 a 1 b 1 c 1 a 2 b 2 c 2 ,

  29. Degree-D Slotted Encodings from Degree-D Prime order mmap Degree-D slotted encodings: if it allows for evaluating polynomials of degree at most D SIMPLE CASE: Degree=2 Pick vectors u 1 , u 2 , u 3 , v 1 , v 2 , v 3 a 1 u 1 + b 1 u 2 + c 1 u 3 a 2 v 1 + b 2 v 2 + c 2 v 3 , such that < u i , v j > = 1, if i=j = 0, otherwise

  30. Degree-D Slotted Encodings from Degree-D Prime order mmap Degree-D slotted encodings: if it allows for evaluating polynomials of degree at most D SIMPLE CASE: Degree=2 Pick vectors u 1 , u 2 , u 3 , v 1 , v 2 , v 3 a 1 u 1 + b 1 u 2 + c 1 u 3 a 2 v 1 + b 2 v 2 + c 2 v 3 , Dual vector spaces! [OT08,OT09,BJK15] such that < u i , v j > = 1, if i=j = 0, otherwise

  31. Degree-D Slotted Encodings from Degree-D Prime order mmap Degree-D slotted encodings: if it allows for evaluating polynomials of degree at most D SIMPLE CASE: Degree=2 < > , a 1 u 1 + b 1 u 2 + c 1 u 3 a 2 v 1 + b 2 v 2 + c 2 v 3 = a 1 a 2 + b 1 b 2 + c 1 c 2

  32. Degree-D Slotted Encodings from Degree-D Prime order mmap Higher (constant) degrees: tensoring of dual vector spaces Example: Degree=3 < > , a 1 w 1 u 1 + b 1 w 2 u 2 + c 1 w 3 u 3 a 2 v 1 + b 2 v 2 + c 2 v 3 , … = a 1 a 2 w 1 + b 1 b 2 w 2 + c 1 c 2 w 3

  33. Construction of PAFE (Intuition) Setup: Pick R 1 ,…,R n Encryption of x: … x 1 R 1 0 x 2 R 2 0 x n R n 0 Key Generation of polynomial p: p , 0 p(R 1 ,…,R n ) 0 WHY IS IT SECURE? p(R 1 ,…,R n ) in second slot “forces” homomorphic evaluation of p on ciphertext encodings

  34. Construction of PAFE (Intuition) Setup: Pick R 1 ,…,R n Encryption of x: … x 1 R 1 0 x 2 R 2 0 x n R n 0 Key Generation of polynomial p: p , 0 p(R 1 ,…,R n ) 0 MAIN ISSUE: Mix-and-match attacks encodings from different ciphertexts can be mixed

  35. Construction of PAFE (Intuition) Setup: Pick R 1 ,…,R n Encryption of x: … x 1 R 1 0 x 2 R 2 0 x n R n 0 Key Generation of polynomial p: Prevented by having p , 0 p(R 1 ,…,R n ) “ciphertext-specific" checks! 0 MAIN ISSUE: Mix-and-match attacks encodings from different ciphertexts can be mixed

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