Transcript On the Impossibility of Approximate Obfuscation
Nir Bitansky and Omer Paneth
Program Obfuscation
๐ฅ Compute ๐ ๐ ๐ (๐ฅ) ๐ฆ = ๐ ๐ ๐ (๐ฅ)
Program Obfuscation
๐ฅ ๐ฆ = ๐ ๐ ๐ (๐ฅ)
Program Obfuscation
๐ฅ If ๐ฅ Sign email ๐ฅ with ๐ ๐ starts with โomer@bu.eduโ ๐ฆ = ๐(๐ฅ) /โฅ
Virtual Black-Box
[ Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01] ๐ช ๐ ๐ is an obfuscation of ๐ ๐ ๐ : - Functionality: โ๐ฅ, ๐ช ๐ ๐ ๐ฅ = ๐ ๐ ๐ ๐ฅ - Security: ๐ ๐ ๐ ๐ช ๐ ๐ ๐ด โ ๐
Impossibility of Obfuscation There exist families of functions that cannot be obfuscated [Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]
Relaxed Security
[Barak et al. 01, Goldwasser-Rothblum07, Hofheinz-Malone-Lee-Stam07, Hohenberger-Rothblum-Shelat-Vaikuntanathan07, Bitansky-Canetti10] - Functionality: โ๐ฅ, ๐ช ๐ ๐ ๐ฅ = ๐ ๐ ๐ ๐ฅ - Security: ๐ ๐ ๐ ๐ช ๐ ๐ ๐ด โ ๐
Relaxed Functionality?
- Functionality: โ๐ฅ, ๐ช ๐ ๐ ๐ฅ = ๐ ๐ ๐ ๐ฅ - Security: ๐ ๐ ๐ ๐ช ๐ ๐ ๐ด โ ๐
Approximate Obfuscation [ Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01] ๐ช ๐ ๐ is an approximate obfuscation of ๐ ๐ ๐ : - Functionality: Pr ๐ฅโ๐ - Security: ๐ช ๐ ๐ ๐ฅ = ๐ ๐ ๐ ๐ฅ ๐ ๐ ๐ ๐ช ๐ ๐ ๐ด โ ๐ > 0.9
Main Result Assuming trapdoor permutations, there exist families of functions that cannot be approximately obfuscated Motivation?
Positive applications
From Impossibility to Applications Impossibility of approximate obfuscation Non-black-box extraction ๐ ๐ Zero-knowledge with ๐ฅ ๐ด ๐ ๐ resettable security Worst-case ๐ ๐ ๐ (๐ฅ) extractable signatures
Plan
[BGIRSVY 01]: Impossibility of Obfuscation This work: Impossibility of Approximate Obfuscation Unobfuscatable Functions Robust Unobfuscatable Functions Applications
Unobfuscatable Functions From Barak et al.
๐ ๐ ๐ 1. Black-box unlearnability: โ efficient ๐ด, ๐ ๐ โ ๐ : ๐ด 2. Extraction: โ efficient ๐ธ, โ๐ช, ๐ ๐: ๐ ๐ Pr ๐ฅโ๐ ๐ช ๐ฅ = ๐ ๐ ๐ ๐ฅ = 1 โ ๐ช ๐ธ ๐ ๐
Robust Unobfuscatable Functions ๐ ๐ ๐ 1. Black-box unlearnability: โ efficient ๐ด, ๐ ๐ โ ๐ : ๐ด ๐ ๐ 2. Robust extraction: โ efficient ๐ธ, โ๐ช, ๐ ๐: Pr ๐ฅโ๐ ๐ช ๐ฅ = ๐ ๐ ๐ ๐ฅ > 0.9
โ ๐ช ๐ธ ๐ ๐
Robust Unobfuscatable Functions ๐ช 90% โ ๐ ๐ ๐ ๐ช ๐ธ ๐ด ๐ ๐ โ ๐ ๐ ๐ ๐ ๐ ๐
RUFs Construction
Unobfuscatable Functions Construction of Barak et al. (using FHE for simplicity) ๐ ๐,๐,๐ ๐ ๐ฅ : ๐, ๐ ๐ ๐ โ two ๐ -bit strings - secret key for FHE
Unobfuscatable Functions 0 ๐ ๐ ๐ธ๐๐ ๐ ๐ ๐ธ๐๐ b ๐ ๐ ๐ ๐ ๐,๐,๐ ๐ (๐ฅ) = ๐ Enc ๐ ๐ (๐) ๐ โฅ ๐ฅ = ๐ ๐ฅ = 0 ๐ Dec ๐ ๐ (๐ฅ) = ๐ o.w.
Black-Box Unlearnability 0 ๐ ๐ ๐ธ๐๐ ๐ ๐ ๐ธ๐๐ b ๐ ๐ ๐ ๐ ๐ด ๐
Extraction 0 ๐ ๐ถ ๐ธ๐๐ ๐ ๐ ๐ธ๐ฃ๐๐(๐ถ) ๐ธ๐๐ b ๐ถ ๐ ๐ถ โก ๐ ๐ธ ๐
Robust Extraction?
0 ๐ ๐ธ๐๐ ๐ ๐ถ โ ๐ธ๐๐ b ๐ถ โ ๐ ๐ ๐ถ โ ๐ธ ๐ ๐ถ โ (๐ฅ) = โฅ ๐ธ๐๐ ๐ ๐ (๐) ๐ โฅ ๐ฅ = ๐ ๐ฅ = 0 ๐ ๐ท๐๐ ๐ ๐ (๐ฅ) = ๐ ๐. ๐ค.
A Taste of the Construction ๐ ๐,๐ (๐ฅ) = ๐ โฅ ๐ฅ = ๐ ๐. ๐ค.
Q: Find ๐ such that: ๐ with 10% errors Randomly reduce ๐ to ๐ ๐ a,b
Getting Robustness
๐ ๐,๐ (๐ฅ) = ๐ โฅ ๐ฅ = ๐ ๐. ๐ค.
๐ ๐,๐,๐ ๐ฅ = ๐ โ PRF ๐ ๐ฅ โ ๐,๐,๐ ๐ฅ = PRF ๐ ๐ โ ๐ฅ
๐ ๐ โ ๐ ๐ ๐ โ ๐ ๐ โ ๐ โ PRF(๐) PRF(๐) โ ๐ ๐ (๐ค. ๐. 0.8) ๐, โ with 10% errors ๐ a,b ๐ ๐,๐,๐ ๐ฅ = ๐ โ PRF ๐ ๐ฅ โ ๐,๐,๐ ๐ฅ = PRF ๐ ๐ โ ๐ฅ
๐ด ๐, โ ๐ queries ๐ queries โ on ๐ฅ and on ๐ โ ๐ฅ ๐ ๐, โ ๐ a,b ๐ ๐,๐,๐ ๐ฅ = ๐ โ PRF ๐ ๐ฅ โ ๐,๐,๐ ๐ฅ = PRF ๐ ๐ โ ๐ฅ
Construction of RUFs
๐ ๐,๐,๐ ๐ (๐ฅ) = ๐ ๐ธ๐๐ ๐ ๐ (๐) ๐ โฅ ๐ฅ = ๐ ๐ฅ = 0 ๐ ๐ท๐๐ ๐ ๐ (๐ฅ) = ๐ ๐. ๐ค.
Assumptions
โข RUFs from trapdoor permutations. โข Weak RUFs from OWF only: โ๐ฅ: ๐ช ๐ฅ โ ๐ ๐ ๐ ๐ฅ , โฅ ๐ช ๐ธ ๐ ๐
Applications
Publicly-Verifiable RUOFs ๐ ๐, ๐ฃ๐ โ Gen() Ver ๐ฃ๐ ๐ฅ, ๐ฆ = 1 iff ๐ฆ = ๐ ๐ ๐ (๐ฅ) ๐ฃ๐ ๐ ๐ ๐ ๐ด ๐ ๐, ๐ฃ๐ โ Gen() ๐ ๐ ๐ฃ๐ ๐ช ๐ธ ๐ ๐ Pr ๐ฅโ๐ Ver ๐ฃ๐ ๐ฅ, ๐ช ๐ฅ = 1 > 1 poly(๐)
Resettably-Sound ZK
[Micali-Reyzin 01, Barak-Goldreich-Goldwasser-Lindell 01] ๐ฅ โ โ?
Standard ZK ๐ซ ๐ฑ Resettable Soundness
Resettable Soundness
[Micali-Reyzin 01, Barak-Goldreich-Goldwasser-Lindell 01] ๐ฅ โ โ ๐ซ โ ๐ฑ
Resettable Soundness
[Micali-Reyzin 01, Barak-Goldreich-Goldwasser-Lindell 01] ๐ซ โ ๐ฑ ๐ฅ โ โ ๐ฑ
No Black-Box Simulator
[Barak-Goldreich-Goldwasser-Lindell 01] Resettable soundness Zero-knowledge (black-box simulator) ๐ฑ โ ๐ซ โ ๐ฑ ๐ฑ ๐ฎ
Resettably-Sound ZK
[Barak-Goldreich-Goldwasser-Lindell 01, BP 12, Chung-Pass-Seth 13] Resettable soundness Zero-knowledge (non-black-box simulator) ๐ซ โ ๐ฑ ๐ฑ ๐ฑ โ ๐ฎ
Resettably-Sound ZK
๐ฃ๐ ๐ฅ โ ๐ ๐ ๐ ๐ (๐ฅ) ๐ซ ๐ ๐, ๐ฃ๐ ๐ฑ Witness indistinguishable proof: ๐ฅ โ โ
or
๐ซ โknowsโ ๐ ๐
Resettably-Sound ZK
๐ฃ๐ ๐ฅ ๐ ๐ ๐ (๐ฅ) ๐ซ ๐ ๐, ๐ฃ๐ ๐ฑ Witness indistinguishable proof: ๐ฅ โ โ
or
๐ซ โknowsโ ๐ ๐
Analysis
Resettable soundness ๐ซ โ ๐ ๐ ๐ ๐ฅ ๐ ๐ ๐ (๐ฅ) ๐ฑ ๐ ๐ Zero-knowledge ๐ฑ โ โ ๐ ๐ ๐ ๐ฑ โ 1 p ๐ ๐ธ ๐ ๐
More Resettable Crypto
โข Resettably-sound ZK from OWFs (Different approach from Chung-Pass-Seth 13) โข Simultaneously-resettable ZK from OWFs (using srWI by Chung-Ostrovsky-Pass-Visconti 13) โข 4-message resettably-sound ZK โข 3-message simultaneously-resettable WI proof of knowledge
Worst-Case Extractable Signatures Digital Signatures: โ๐ ๐, ๐ฃ๐ Sign ๐ ๐ ๐ฃ๐ Sign ๐ ๐ ๐ด ๐, ๐ ๐ , ๐ โ ๐ ๐
Worst-Case Extractable Signatures For every ๐ ๐, ๐ฃ๐: ๐ด ๐ด breaks security for ๐ ๐, ๐ฃ๐ โน ๐ธ ๐ ๐
}
Thank You.
๏ #define _ -F<00||--F-OO--; int F=00,OO=00;main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO(){
_-_-_-_ _-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_ _-_-_-_
IOCCC 88