on statistically secure obfuscation with approximate
play

On Statistically Secure Obfuscation with Approximate Correctness - PowerPoint PPT Presentation

1 On Statistically Secure Obfuscation with Approximate Correctness Zvika Brakerski 1 Christina Brzuska 2 Nils Fleischhacker 3 1 Weizmann Institute of Science 2 Technical University Hamburg 3 Saarland University August 15, 2016 2 Statistically


  1. 1 On Statistically Secure Obfuscation with Approximate Correctness Zvika Brakerski 1 Christina Brzuska 2 Nils Fleischhacker 3 1 Weizmann Institute of Science 2 Technical University Hamburg 3 Saarland University August 15, 2016

  2. 2 Statistically Secure Obfuscation r C O C ′

  3. 2 Statistically Secure Obfuscation r C O C ′ ◮ Perfect Correctness: For any circuit C ∀ x : C ′ ( x ) = C ( x )

  4. 2 Statistically Secure Obfuscation r C O C ′ ◮ Perfect Correctness: For any circuit C ∀ x : C ′ ( x ) = C ( x ) ◮ (1 − ǫ ) -Approximate Correctness: For any circuit C , � � C ′ ( x ) = C ( x ) Pr ≥ 1 − ǫ ( n ) r,x

  5. 3 Statistically Secure Obfuscation r C O C ′ ◮ Indistinguishability Obfuscator: For any pair of circuits, such that C 1 ≡ C 2 and | C 1 | = | C 2 | SD ( O ( C 1 ) , O ( C 2 )) ≤ negl ( n )

  6. 3 Statistically Secure Obfuscation r C O C ′ ◮ Indistinguishability Obfuscator: For any pair of circuits, such that C 1 ≡ C 2 and | C 1 | = | C 2 | SD ( O ( C 1 ) , O ( C 2 )) ≤ negl ( n ) ◮ (1 − δ ) -Correlation Obfuscator: For any pair of circuits, such that C 1 ≡ C 2 and | C 1 | = | C 2 | SD ( O ( C 1 ) , O ( C 2 )) ≤ δ ( n )

  7. 3 Statistically Secure Obfuscation r C O C ′ ◮ Indistinguishability Obfuscator: For any pair of circuits, such that C 1 ≡ C 2 and | C 1 | = | C 2 | SD ( O ( C 1 ) , O ( C 2 )) ≤ negl ( n ) � � ◮ (1 − δ ) -Correlation Obfuscator: For any pair of circuits, such that C 1 ≡ C 2 and | C 1 | = | C 2 | SD ( O ( C 1 ) , O ( C 2 )) ≤ δ ( n )

  8. 4 Why Do We Even Care About Approximate Correctness? Because approximate obfuscation is useful! [MMNPs16,SW14,Hol06] 1 Statistical Distance δ Allows PKE from OWF 0 . 75 0 . 5 0 . 25 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 Correctness Error ǫ

  9. 5 Main Result ◮ If statistically secure, approximately correct iO (saiO) exists, then either one-way functions do not exist, or NP ⊆ AM ∩ coAM. ◮ More Generally: If (1 − δ ) -statistically secure, (1 − ǫ ) -approximately correct correlation obfuscation (sacO) exists with δ ( n ) ≤ 1 3 − 2 1 3 ǫ ( n ) − poly ( n ) , then either one-way functions do not exist, or NP ⊆ AM ∩ coAM. ◮ For very weak parameters, a trivial construction of sacO exists with δ ( n ) = 2 ǫ ( n ) .

  10. 6 The Landscape of Correlation Obfuscation 1 Achievable with Trivial Construction 0 . 9 Ruled out by Negative Result 0 . 8 Statistical Distance δ 0 . 7 0 . 6 0 . 5 0 . 4 0 . 3 0 . 2 0 . 1 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 Correctness Error ǫ

  11. 6 The Landscape of Correlation Obfuscation 1 Achievable with Trivial Construction 0 . 9 Ruled out by Negative Result Allows PKE from OWF 0 . 8 Statistical Distance δ 0 . 7 0 . 6 0 . 5 0 . 4 0 . 3 0 . 2 0 . 1 0 . 1 0 . 2 0 . 3 0 . 4 0 . 5 Correctness Error ǫ

  12. 7 Impossibility of Perfect Correctness [GR07] Ψ un Ψ sat

  13. 7 Impossibility of Perfect Correctness [GR07] Ψ un Ψ sat 0

  14. 7 Impossibility of Perfect Correctness [GR07] Ψ un Ψ sat 0 siO siO siO

  15. 7 Impossibility of Perfect Correctness [GR07] ≡ Ψ un Ψ sat 0 siO siO siO

  16. 7 Impossibility of Perfect Correctness [GR07] Ψ un Ψ sat 0 �≡ siO siO siO

  17. 7 Impossibility of Perfect Correctness [GR07] Ψ un Ψ sat 0 siO siO siO GapSD ∈ AM ∩ coAM = ⇒ NP ⊆ AM ∩ coAM

  18. 8 Why Does the Approach Fail in the Approximate Case? Ψ sat 0 saiO saiO

  19. 8 Why Does the Approach Fail in the Approximate Case? Ψ sat 0 saiO saiO

  20. 9 Overview of Our Approach C Y C X [ k, Ψ] saiO saiO

  21. 9 Overview of Our Approach C Y C X [ k, Ψ un ] ≡ saiO saiO

  22. 9 Overview of Our Approach x 0 x 0 C Y a � = C X [ k, Ψ sat ] b ∼ ∼ ∼ saiO saiO

  23. 9 Overview of Our Approach ≡ C Y C X [ k, Ψ sat ] C saiO saiO

  24. 9 Overview of Our Approach ≡ ≈ C Y C X [ k, Ψ sat ] C saiO saiO

  25. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x )

  26. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x )

  27. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x ) ◮ Security: 1 n BP x 0 k ← $ { 0 , 1 } n , k ∗ = Puncture ( k, x 0 )

  28. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x ) ◮ Security: 1 n BP x 0 k ← $ { 0 , 1 } n , k ∗ = Puncture ( k, x 0 )

  29. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x ) ◮ Security: 1 n BP x 0 k ← $ { 0 , 1 } n , k ∗ = Puncture ( k, x 0 ) k ∗ , PRF ( k, x 0 ) BP

  30. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x ) ◮ Security: 1 n BP x 0 k ← $ { 0 , 1 } n , k ∗ = Puncture ( k, x 0 ) k ∗ , PRF ( k, x 0 ) k ∗ , b ← $ { 0 , 1 } BP BP

  31. 10 Puncturable Pseudorandom Functions [BW13,BGI14,KPTZ13] k ∗ ← Puncture ( k, x 0 ) b ← PRF ( k, x ) ◮ Functionality Preserved Under Puncturing: For all x � = x 0 , PRF ( k ∗ , x ) = PRF ( k, x ) ◮ Security: 1 n BP x 0 k ← $ { 0 , 1 } n , k ∗ = Puncture ( k, x 0 ) k ∗ , PRF ( k, x 0 ) k ∗ , b ← $ { 0 , 1 } ≈ BP BP

  32. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x )

  33. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1

  34. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1 b = PRF ( k, x 0 )

  35. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1 b = PRF ( k, x 0 ) C [ k ∗ , x 0 , b ] ≡ PRF ( k, · )

  36. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1 b = PRF ( k, x 0 ) C [ k ∗ , x 0 , b ] ≡ PRF ( k, · ) C PRF ← saiO ( PRF ( k, · )) Pr[ C PRF ( x 0 ) = b ] ≥ 1 − ǫ Pr[ C ′ ( x 0 ) = b ] � 1 − ǫ

  37. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1 b = PRF ( k, x 0 ) C [ k ∗ , x 0 , b ] ≡ PRF ( k, · ) PRF security Pr[ C ′ ( x 0 ) = b ] � 1 − ǫ Pr[ C ′ ( x 0 ) = b ] � 1 − ǫ

  38. 11 Enforcing Large Statistical Distance C [ k ∗ , x 0 , b ]( x ) if x = x 0 Let C ′ denote saiO ( C [ k ∗ , x 0 , b ]) . return b else return PRF ( k ∗ , x ) b = PRF ( k, x 0 ) ⊕ 1 b = PRF ( k, x 0 ) Pr[ C PRF ( x 0 ) = PRF ( k, x 0 )] ≥ 1 − ǫ C [ k ∗ , x 0 , b ] ≡ PRF ( k, · ) ∧ Pr[ C ′ ( x 0 ) � = PRF ( k, x 0 )] � 1 − ǫ = ⇒ SD ( C PRF , C ) � 1 − 2 ǫ PRF security Pr[ C ′ ( x 0 ) = b ] � 1 − ǫ Pr[ C ′ ( x 0 ) = b ] � 1 − ǫ

  39. 12 Restriction to Unique-SAT ◮ We restrict our attention to Unique-SAT (USAT) ◮ USAT is NP hard via a randomized reduction [VV85] ◮ Combining this with previous results [MX10,BL13] we show that USAT ∈ BPP GapSD = ⇒ SAT ∈ AM ∩ coAM

  40. 13 The Formula-Indexed Circuit C X [ k, s, Ψ]( x ) if Ψ( x ⊕ s ) = 1 return PRF ( k, x ) ⊕ 1 else return PRF ( k, x )

  41. 13 The Formula-Indexed Circuit C X [ k, s, Ψ]( x ) if Ψ( x ⊕ s ) = 1 return PRF ( k, x ) ⊕ 1 else return PRF ( k, x ) Ψ ∈ USAT Ψ ∈ UNSAT

  42. 13 The Formula-Indexed Circuit C X [ k, s, Ψ]( x ) if Ψ( x ⊕ s ) = 1 return PRF ( k, x ) ⊕ 1 else return PRF ( k, x ) Ψ ∈ USAT Ψ ∈ UNSAT C X [ k, s, Ψ] ≡ PRF ( k, · )

  43. 13 The Formula-Indexed Circuit C X [ k, s, Ψ]( x ) if Ψ( x ⊕ s ) = 1 return PRF ( k, x ) ⊕ 1 else return PRF ( k, x ) Ψ ∈ USAT Ψ ∈ UNSAT C X [ k, s, Ψ] ≡ C [ k ∗ , x 0 , b ] C X [ k, s, Ψ] ≡ PRF ( k, · ) x 0 = x ψ ⊕ s for b = PRF ( k, x 0 ) ⊕ 1

  44. 14 Putting it All Together X [Ψ](1 n ) Y (1 n ) k ← $ { 0 , 1 } n k ← $ { 0 , 1 } n s ← $ { 0 , 1 } n s ← $ { 0 , 1 } n C := C X [ k, s, Ψ] C := PRF ( k, · ) C ′ ← $ O ( C ) C ′ ← $ O ( C ) return ( k, s, C ′ ) return ( k, s, C ′ ) Ψ ∈ UNSAT ⇐ ⇒ SD ( X [Ψ] , Y ) ≤ negl ( n ) Ψ ∈ USAT ⇐ ⇒ SD ( X [Ψ] , Y ) � 1 − 2 ǫ ◮ We can therefore decide USAT in BPP GapSD . ◮ Thus, if saiO and one-way functions both exist, then NP ⊆ AM ∩ coAM and the polynomial hierarchy collapses.

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