ON OBFUSCATION WITH RANDOM ORACLES

advertisement
ON OBFUSCATION WITH RANDOM ORACLES
RAN CANETTI, YAEL KALAI, OMER PANETH
[Lynn-Prabhakaran-Sahai 04]:
Can simulation based obfuscation
be constructed with a Random Oracle?
Today:
Impossible in general!
A Candidate Obfuscator
[Garg-Gentry-Halevi-Raykova-Sahai-Waters 13]
Multilinear
Maps
π‘₯
Barrington's
theorem
𝑦 ← π‘ƒπ‘…πΉπ‘˜ (π‘₯)
𝑦
Kilian’s
randomization
What is the security of the
candidate obfuscator?
Other candidate obfuscators:
[Brakerski-Rothblum 13, Barak-Garg-Kalai-P-Sahai 13, PassSeth-Telang 13, Ananth-Gupta-Ishai-Sahai 14, Gentry-LewkoSahai-Waters 14, Zimmerman 14, Applebaum-Brakerski 15,
Badrinarayanan-Miles-Sahai-Zhandry 15]
Virtual-Black-Box Obfuscation (VBB)
[Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]
Obfuscator π’ͺ satisfies:
1. Correctness: π’ͺ Π ≡ Π
2. Security:
Π
π’ͺ Π
𝐴𝑑𝑣
≈
π‘†π‘–π‘š
What is the security of the
candidate obfuscators?
Indistinguishability
obfuscation
[BGIRSVY 01]
Virtual-black-box
obfuscation
Impossible
PC differing-inputs
obfuscation
[BGIRSVY 01]
[BGIRSVY 01]
[Ishai-Pandey-Sahai 14]
Plausible
Virtual-grey-box
obfuscation
[Bitansky-Canetti 10]
Ideal model
security
Provable
[BR 14, BGKPS 14]
The Ideal Multilinear-Map Model
• Add \ Subtract
• Multiply (multilinear only)
𝛼
𝛽
2 3
𝛼 + 𝛽?
π’ͺ
Π
π’ͺ Π
𝛼, 𝛽, 𝛾, 𝛿
𝛿
𝛾
𝛿
7 5
Security
[Brakerski-Rothblum 14, Barak-Garg-Kalai-P-Sahai 14]
Ideal
MMap
Oracle
π’ͺ Π
𝐴𝑑𝑣
≈
Π
π‘†π‘–π‘š
The [BGIRSVI01] does not extend!
Unobfuscatable Functions
[Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]
π‘₯
a program equivalent to Ππ‘˜
π‘ƒπ‘…πΉπ‘˜ (π‘₯)
Ππ‘˜
Oracle
π’ͺ Πk
𝐴𝑑𝑣
π‘˜
π‘˜
Πk
π‘†π‘–π‘š
[Miles-Sahai-Weiss 14, Pass-Seth-Telang
13, Bitansky-Canetti-Kalai-P 14]
Indistinguishability
obfuscation
Reduction
Virtual-black-box
obfuscation
Heuristic
PC differing-inputs
Obfuscation
Obfuscation in the
ideal mmap model
Virtual-grey-box
obfuscation
+
Mmap construction
Can we get obfuscation
in other ideal models?
Ideal
Multilinear Map
Generic group
model?
Random oracle
model?
Plain
Model
Constructions in Other Ideal Models
• Obfuscation with secure hardware
[Goyal-Ishai-Sahai-Venkatesan-Wadia 10,
Bitansky-Canetti-Goldwasser-Halevi-Kalai-Rothblum 11, …]
• Ideal pseudo-free groups
[Canetti-Vaikuntanathan 13]
• Multilinear maps with relaxed security
[Miles-Sahai-Weiss 14]
A Different Motivation
What is the best security we can hope for?
VBB
Obfuscation
Plausible
Impossible
A Different Motivation
Indistinguishability
obfuscation
PC differing-inputs
obfuscation
Virtual-grey-box
obfuscation
Virtual-black-box
obfuscation
Impossible
Ideal model
security
A Different Motivation
What structures are needed?
Ideal
Multilinear Map
Generic group
model?
Random oracle
model?
Plain
Model
Motivation – Summary
1. Alternative heuristic obfuscators
in the plain model
2. Understand the structures needed
for general purpose obfuscation
The Result
First negative result
with respect to a non-trivial oracle!
Ideal
Multilinear Map
Generic group
model?
Random oracle
model
Plain
Model
Main Lemma
Any function that
can be obfuscated with a random oracle,
can also be VBB obfuscated in the plain model
with approximate correctness.
Approximate correctness: Pr[Π π‘₯ = π’ͺ(Π)(π‘₯)] ≥ 0.9
π‘₯
Proof Outline
Main Lemma +
Theorem [Bitansky-P 13]:
Assuming trapdoor permutations,
there exist “robust” unobfuscatable functions
that cannot be obfuscated (in the plain model)
even with approximate correctness.
Proof Outline
Main Lemma + [Bitansky-P 13]
Robust unobfuscatable functions
cannot be obfuscated with random oracles
Main Lemma
Random
oracle
Π
π’ͺ
π’ͺ Π
Π
π’ͺ′
π’ͺ′ Π
Approximately
correct
Naïve Attempt
Perfect correctness
𝑅|𝑄 (π‘ž) =
No security
𝑅(π‘ž) if π‘ž ∈ 𝑄
π‘ˆ
else
π‘₯
π’ͺ′
𝑄
Π
π’ͺ
𝑅
π’ͺ Π
π’ͺ′ Π
𝑅|𝑄
π’ͺ Π
Π
π’ͺ′
𝑅
𝑄
π‘ˆ → π‘₯1
π’ͺ
π’ͺ Π
π’ͺ′ Π
π‘₯
π’ͺ Π
𝑄1
𝑅
π‘ˆ → π‘₯π‘˜
…
𝑅|𝑄1∪β‹―∪π‘„π‘˜
π’ͺ Π
π‘„π‘˜
𝑅
Approximate Correctness
π‘₯
π’ͺ′
π’ͺ
𝑄
𝑅
π‘ˆ → π‘₯1 𝑄1
π’ͺ Π
𝑅
…
π‘ˆ → π‘₯π‘˜ π‘„π‘˜
π’ͺ Π
𝑅
π’ͺ′ Π
𝑄π‘₯
𝑅|𝑄1 ∪β‹―∪π‘„π‘˜
π’ͺ Π
Pr[Π π‘₯ ≠ π’ͺ(Π)(π‘₯)] ≤ 0.1
π‘₯
⇑
Pr 𝑄 ∩ 𝑄π‘₯ βˆ– 𝑄1 ∪ β‹― ∪ π‘„π‘˜ ≠ ∅ ≤ 0.1
Approximate Correctness
π‘₯
π’ͺ′
π’ͺ
𝑄
𝑅
π‘ˆ → π‘₯1 π‘ž1
π’ͺ Π
𝑅
…
π‘ˆ → π‘₯π‘˜ π‘žπ‘˜
𝑅
π’ͺ Π
π‘žπ‘₯
𝑅|𝑄1 ∪β‹―∪π‘„π‘˜
π’ͺ Π
Pr π‘žπ‘₯ ∈ 𝑄 βˆ– π‘ž1 , … , π‘žπ‘˜
Pr ∃𝑝 ∈ 𝑄 s. t. 𝑝 = π‘žπ‘₯
π’ͺ′ Π
≤ 0.1
𝑄
∧ ∀𝑖(𝑝 ≠ π‘žπ‘– ) ≤
π‘˜
Comparison with [Impagliazzo-Rrudich 95]
Information theoretic
key agreement
with random oracle
[IR 95]
Information theoretic
key agreement
In the plain model
Obfuscation
with random oracle
Today
Approximately correct
obfuscation
in the plain model
Robust Unobfuscatable Functions
[Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]
Πk
π’ͺ Πk
𝐴𝑑𝑣
π‘˜
π‘†π‘–π‘š
[Bitansky-P 13]:
even if π’ͺ Πk is approximately correct
0𝑛
Π
𝐸𝑛𝑐 π‘Ž
𝐸𝑛𝑐 b
Π
π‘Ž
𝑏
Ππ‘Ž,𝑏,π‘ π‘˜ (π‘₯) =
Encπ‘ π‘˜ (π‘Ž)
𝑏
⊥
Π
𝑏
π‘₯=π‘Ž
π‘₯ = 0𝑛
Decπ‘ π‘˜ (π‘₯) = 𝑏
o.w.
0𝑛
𝐸𝑛𝑐 π‘Ž
Π
𝐸𝑛𝑐 b
Π
π‘Ž
𝑏
Π
Π
𝑏
π‘†π‘–π‘š
0𝑛
π’ͺ Π
𝐸𝑛𝑐 π‘Ž
π’ͺ Π
𝐸𝑛𝑐 b
π’ͺ Π
π‘Ž
π’ͺ Π
π’ͺ Π
𝐴𝑑𝑣
𝑏
𝑏
0𝑛
π’ͺ Π
𝐸𝑛𝑐 π‘Ž
π’ͺ Π
𝐸𝑛𝑐 b
π’ͺ Π
π‘Ž
π’ͺ Π
𝑏
approximately
correct
π’ͺ Π
𝐴𝑑𝑣
𝑏
A Taste of the Construction
𝑏
π‘“π‘Ž,𝑏 (π‘₯) =
⊥
π‘₯=π‘Ž
π‘œ. 𝑀.
Q: Find 𝑔 such that:
𝑔 with
10%
errors
𝑓a,b
Getting Robustness
𝑏
π‘“π‘Ž,𝑏 (π‘₯) =
⊥
π‘₯=π‘Ž
π‘œ. 𝑀.
π‘”π‘Ž,𝑏,π‘˜ π‘₯ = 𝑏 ⊕ PRFπ‘˜ π‘₯
β„Žπ‘Ž,𝑏,π‘˜ π‘₯ = PRFπ‘˜ π‘Ž ⊕ π‘₯
π‘Ÿ←π‘ˆ
π‘Ÿ
π‘Ž
π‘Ž⊕π‘Ÿ
𝑔, β„Ž with
10%
errors
𝑓
𝑔
β„Ž
𝑓a,b
𝑏 ⊕ PRF(π‘Ÿ)
PRF(π‘Ÿ)
⊕
𝑏
(𝑀. 𝑝. 0.8)
π‘”π‘Ž,𝑏,π‘˜ π‘₯ = 𝑏 ⊕ PRFπ‘˜ π‘₯
β„Žπ‘Ž,𝑏,π‘˜ π‘₯ = PRFπ‘˜ π‘Ž ⊕ π‘₯
𝑔, β„Ž
𝐴
𝐴 queries 𝑔 on π‘₯ and
π‘Ž
𝐴 queries β„Ž on π‘Ž ⊕ π‘₯
π‘Ž
𝑏
𝑔, β„Ž
𝑓a,b
π‘”π‘Ž,𝑏,π‘˜ π‘₯ = 𝑏 ⊕ PRFπ‘˜ π‘₯
β„Žπ‘Ž,𝑏,π‘˜ π‘₯ = PRFπ‘˜ π‘Ž ⊕ π‘₯
Robust Unobfuscatable Functions
𝑏
π‘“π‘Ž,𝑏,π‘ π‘˜ (π‘₯) = πΈπ‘›π‘π‘ π‘˜ (π‘Ž)
𝑏
⊥
π‘₯=π‘Ž
π‘₯ = 0𝑛
π·π‘’π‘π‘ π‘˜ (π‘₯) = 𝑏
π‘œ. 𝑀.
Thank You!
Ideal
Multilinear Map
Generic group
model?
Random oracle
model
Plain
Model
Download