Limits on Low-Degree PRGs or SoS Meets Program Obfuscation Ilan Komargodski Joint work with Boaz Barak (Harvard) Zvika Brakerski (Weizmann Institute) Pravesh K. Kothari (Princeton)
Pseudorandom Generators (PRGs) ๐ป: {0,1} ๐ โ {0,1} ๐ ๐ป ๐ : {0,1} ๐ โ {0,1} ๐ป ๐ ๐ฆ = ๐ป ๐ฆ ๐ ๐ง 1 ๐ง ๐ ๐ง 2 ๐ฆ 1 ๐ฆ 2 ๐ฆ ๐ ๐ป ๐ ๐ โ c.i ๐ ๐ Fundamental primitive in cryptography Assuming OWFs, โ ๐ป: {0,1} ๐ โ {0,1} poly(๐) How simple can it be? 2
Local Pseudorandom Generators ๐ป: {0,1} ๐ โ {0,1} ๐ ๐ป ๐ : {0,1} ๐ โ {0,1} ๐ป ๐ : {0,1} d โ {0,1} ๐ป ๐ ๐ฆ|๐ฝ ๐ = ๐ป ๐ฆ ๐ ๐ป ๐ ๐ฆ = ๐ป ๐ฆ ๐ ๐ง 1 ๐ง ๐ ๐ง 2 Locality ๐ โ every output bit depends on ๐ input bits ๐ฆ 1 ๐ฆ 2 ๐ฆ ๐ ๐ป ๐ ๐ โ c.i ๐ ๐ Do such PRGs exist and if so, how much they can stretch? 3
Local Pseudorandom Generators Positive : โ โ ๐ฏ: ๐, ๐ ๐ โ ๐, ๐ ๐+๐ ๐ , ๐ = ๐ท(๐) [AIK06] โข OWF โ NC 1 โข Candidate for ๐ฏ: ๐, ๐ ๐ โ ๐, ๐ ๐ช๐ฉ๐ฆ๐ณ(๐) , , ๐ = ๐ท(๐) [Gol00, โฆ ,App13, โฆ ,AR16, โฆ ] Negative : โข For ๐ = 2 , ๐ โค ๐ [CM01] โข For ๐ = 3 , ๐ = ๐(๐) [CM01] โข For ๐ = 4, ๐ = ๐(๐) [MST06] For general ๐, ๐ = ๐ 2 ๐ โ ๐ ๐/2 โข [MST06] Many applications : โข New PKE schemes [ABW10] โข Efficient MPC [IKO+11] โข Reducing assumptions for indistinguishability obfuscation [AJS15,Lin16, โฆ ] 4
iO from Local PRGs Theorem : [Lin16,AnanthSahai16] โ iO based on: โข ๐ป: 0,1 ๐ โ 0,1 ๐ 1+๐ with locality ๐ โข Degree ๐ multilinear maps โข ๐ = 2 โข Bilinear maps (well studied, โ candidates) โข No such PRG โข ๐ โ {3,4} โข No satisfying candidate of mutlilinear maps โข No such PRG โข ๐ โฅ 5 โข No satisfying candidate of mutlilinear maps โข โ candidates for PRG 5
iO from Local PRGs Theorem : [LinTessaro17] โ iO based on: โข ๐ป: 0,1 ๐ โ 0,1 ๐ 1+๐ with block locality ๐ โข Degree ๐ multilinear maps ๐ป: ฮฃ ๐ โ {0,1} ๐ ๐ป ๐ : ฮฃ ๐ โ {0,1} ฮฃ = 2 ๐ : ๐ป ๐ ๐ฆ = ๐ป ๐ฆ ๐ ๐ป: 0,1 ๐๐ โ 0,1 ๐ ๐ง 1 ๐ง 2 ๐ง ๐ [LinTessaro17] need ๐ป: 0,1 ๐๐ โ 0,1 2 3๐ ๐ 1+๐ Attacks of [CM,MST] do ๐ฆ 1 ๐ฆ 2 ๐ฆ ๐ not apply so might exist even for ๐ = ๐ ! ๐ป ๐ ๐ โ c.i ๐ ๐ 6
Our Results in a Nutshell 7
Our Results Stretch Predicate Graph Predicate Remark Worst-case Worst-case Different vs. random vs. random vs. Same ๐ = เทจ ๐(2 2๐ ๐) Worst case Worst case Different ๐ = เทจ ๐(2 ๐ ๐) Worst case Worst case Same Also in [LV17] ๐ = เทจ ๐(2 ๐ ๐) Random Random Different ๐ป ๐ : ฮฃ ๐ โ {0,1} ๐ป: ฮฃ ๐ โ {0,1} ๐ ๐ป ๐ ๐ฆ = ๐ป ๐ฆ ๐ ๐ง 1 ๐ง 2 ๐ง ๐ Bonus: Simple candidate 3- block-local PRG with O(1)-block size and ๐ฆ 1 ๐ฆ 2 ๐ฆ ๐ poly stretch ๐ป ๐ ๐ โ c.i ๐ ๐ 8
Image Refutation G(r) ๐ A break pseudo-randomness: A ๐จโ๐ A ๐จ = 1 โ Pr ๐จโG r A ๐จ = 1 Pr > ๐๐๐ A does image-refutation Refutation => distinguishing โข ๐ =uniform w.r.t ๐ : ๐จโG r A ๐จ = 1 = 1 Pr Refutation handles ๐จโ๐ A ๐จ = 1 < 0.5 Pr preprocessing on ๐ 9
าง Proof Idea Step 1: Reduce โblock - localityโ to โsparse algebraic degreeโ. Let าง ๐ = ๐ 1 , โฆ , ๐ ๐ is a tuple of degree 2 polynomials with ๐ก monomials ๐: ๐ ๐ โ ๐ ๐ Step 2: On input ๐จ โ ยฑ1 ๐ (output of PRG or random), compute ๐ ๐ค๐๐ = ๐ฆโ{ยฑ1} ๐ เท max ๐จ ๐ โ ๐ ๐ ๐ฆ ๐=1 Theorem : 1) If ๐จ is in the image of าง ๐ , then ๐ค๐๐ is large 2) Otherwise ๐ค๐๐ is small 10
Step 2 On input ๐จ โ ยฑ1 ๐ (output of PRG or random), compute ๐ ๐ค๐๐ = ๐ฆโ{ยฑ1} ๐ เท max ๐จ ๐ โ ๐ ๐ ๐ฆ ๐=1 Distinguish if 1) ๐ ๐ ๐ โฅ ฮฉ(๐๐ก) 2 = ๐ โ๐ฆ: เท ๐จ ๐ โ ๐ ๐ ๐ฆ = เท ๐จ ๐ ๐=1 ๐=1 2) 1) If ๐จ is in the image Define ๐ independent R.V ๐ , then ๐ค๐๐ โฅ ๐ of าง Y i = ๐จ ๐ โ ๐ ๐ (โ ) where each ๐ ๐ โค ๐ก. 2) Otherwise By Chernoff w.h.p ๐ ๐ค๐๐ โค ๐๐ก๐ เท ๐ ๐ โค ๐ ๐๐ก๐ . ๐=1 11
Step 2 On input ๐จ โ ยฑ1 ๐ (output of PRG or random), compute ๐ ๐ค๐๐ = ๐ฆโ{ยฑ1} ๐ เท max ๐จ ๐ โ ๐ ๐ ๐ฆ ๐=1 Theorem ] Charikar-Wirth via Grothendieck Inequality [ : For every degree - 2 polynomial ๐: ๐ ๐ โ ๐ ๐ค๐๐ = ๐ฆโ ยฑ1 ๐ ๐(๐ฆ) max can be approximated to within ๐ท(๐ฆ๐ฉ๐ก ๐) factor. 12
Step 1 Reduce โ block-locality โ to โ sparse algebraic degree โ . A-priori unrelated: โข 2-block-local with |block|= ๐ could have degree 2๐ Idea: Preprocess ๐ฆ โ ยฑ1 ๐๐ to ๐ฆ โฒ โ ยฑ1 ๐ โฒ for ๐ โฒ = 2 ๐ ๐ ๐ฆ ๐ ๐ ๐ ๐ฆโฒ 2 ๐ 2 ๐ 2 ๐ 2 ๐ 13
Step 1 The ๐ -th block of ๐ฆโฒ consists of all 2 ๐ monomials on the ๐ -th block of ๐ฆ . ๐ป: ยฑ1 ๐๐ โ ยฑ1 ๐ ๐ปโฒ: ยฑ1 2 ๐ ๐ โ ๐ ๐ โ Properties: โข If ๐ป has block-locality โ , then ๐ปโฒ has degree โ โข # of monomials in ๐ปโฒ is 2 2๐ โข ๐ปโฒ is not necessarily a PRG even if ๐ป is a PRG โข Yet, the image of ๐ปโฒ contains the image of ๐ป Using โข Solving image-refutation on ๐ปโฒ is enough preprocessing Rules out 2-block local generator with |block|= ๐ with ๐ โฅ ฮฉ 2 2๐ โ 2 ๐ โ ๐ = ฮฉ(2 3๐ โ ๐) . 14
Summary & Questions Stretch Predicate Graph Predicat Remark Worst- Worst- e case vs. case vs. Different random random vs. Same ๐ = เทจ ๐(2 2๐ ๐) Worst Worst Different case case ๐ = เทจ ๐(2 ๐ ๐) Worst Worst Same Also in case case [LV17] ๐ = เทจ ๐(2 ๐ ๐) Random Random Different โข ๐ = เทจ ๐(2 ๐ ๐) , worst-case, worst-case, different โข Find a different way to get iO from bililnear maps 15
Recommend
More recommend