Transcript
Page 1: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

On Virtual Grey-Box Obfuscation for General Circuits

Nir Bitansky Ran CanettiYael Tauman-Kalai Omer Paneth

Page 2: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Program Obfuscation

Obfuscated program

๐‘ฅ y

Obfuscation

Program

๐‘ฅ y

Page 3: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Private Key to Public Key

Public Key

๐‘š cipher  

Obfuscation

๐ธ๐‘›๐‘๐‘ ๐‘˜(๐‘š)

๐‘š cipher  

Page 4: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Virtual Black-Box (VBB)[Hada 00, Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]

Algorithm is an obfuscator for a class if:

For every PPT adversary there exists a PPT simulator such that for every and every predicate :

๐ด ๐‘†๐œ‹ (๐ถ )๐’ช(๐ถ )

๐ถ

Pr [ ๐ด(๐’ช(๐ถ))=๐œ‹ (๐ถ ) ]=Pr [๐‘†๐ถ=๐œ‹ (๐ถ ) ]ยฑ๐‘›๐‘’๐‘”๐‘™

Page 5: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Impossibility Results for VBB

Impossible for some functions.[Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]

Impossible for all pseudo-entropic functions w.r.t auxiliary input (assuming IO).[Goldwasser-Kalai 05, Bitansky-Canetti-Cohn-Goldwasser-Kalai-P-Rosen 14]

Page 6: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ1

๐’ช(๐ถยฟยฟ1)ยฟ

๐ถ2

๐’ช(๐ถยฟยฟ2)ยฟ

โ‰ก

โ‰ˆ๐‘

Indistinguishability Obfuscation (IO)[Barak-Goldreich-Impagliazzo-Rudich-Sahai-Vadhan-Yang 01]

Page 7: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

History

No general solution.

Obfuscation for simple functions:[C97,W05,CD08,CRV10,BC10,BR13]

Candidate obfuscation for all circuits [Garg-Gentry-Halevi-Raykova-Sahai-Waters 13]

2000-2013:

2013:

Page 8: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

What is the security of the candidate obfuscator?

Page 9: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Many recent applications:

[Garg-Gentry-Halevi-Raykova-Sahai-Waters 13, Sahai-Waters 13, Hohenberger-Sahai-Waters 13, Garg-Gentry-Halevi-Raykova 13, Bitansky-Canetti-P-Rosen 13, Boneh-Zhandry 13, Brzuska-Farshim-Mittelbach 14, Bitansky-P 14, Ramchen-Waters 14]

Better assumption: 1. Semantically-secure graded encodings

[Pass-Seth-Telang 13]

2. Multilinear subgroup elimination assumption[Gentry-Lewko-Sahai-Waters 14]

Assumption: the [GGHRSW13] obfuscator is IO

Page 10: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

What about other applications?

Example: point function

Page 11: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Can we get more then IO?

Today: virtual grey-box

Page 12: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐‘†๐ดโ‰ˆ๐’ช(๐ถ )

๐ถ

Simulation Definition for IO[Bitansky-Canetti 10]

๐ถ1 ๐’ช(๐ถยฟยฟ1)ยฟ๐ถ2 ๐’ช(๐ถยฟยฟ2)ยฟโ‰ก โ‰ˆ๐‘โ‡’

Computationally unbounded

Weak VBB:

Page 13: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Virtual black-box:Simulator is bounded

Indistinguishability:Simulator is unbounded

[Bitansky-Canetti 10]

Virtual grey-box (VGB):Simulator is semi-bounded

polynomial numberof oracle queries

unboundedcomputation

๐‘†๐ถ

๐‘†

๐‘†๐ถ

๐ถ

Page 14: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐‘†๐ถ

๐‘†

๐‘†

Virtual black-box:Simulator is bounded

Indistinguishability:Simulator is unbounded

[Bitansky-Canetti 10]

Virtual grey-box (VGB):Simulator is semi-bounded

Pseudo-random functions

meaningful

Point functionsNot meaningful

๐ถ

๐ถ

meaningful

Not meaningful

Page 15: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Assume the [GGHRSW13] obfuscation is VGB.

Or better yet, prove it!

Page 16: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Results

Semantically secure graded encoding

IO [Pass-Seth-Telang 13]

VGB for Semantically secure* graded encoding

Semantically secure* graded encoding VGB for

Page 17: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Results

Semantically secure graded encoding

IO [Pass-Seth-Telang 13]

VGB for

Semantically secure* mutlilinear jigsaw puzzles VGB for all circuits

Semantically secure* mutlilinear jigsaw puzzles

Page 18: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Results

Semantically secure graded encoding

IO [Pass-Seth-Telang 13]

VGB for

Semantically secure* mutlilinear jigsaw puzzles VGB

Semantically secure* mutlilinear jigsaw puzzles

Semantically secure mutlilinear jigsaw puzzles

VBB for new families

Page 19: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

New Feasibility Results For VBB Existing VBB results:โ€ข Point functions [Canetti 97, Wee 05]

โ€ข Constant-size set functions [Bitansky-Canetti 10]

โ€ข Constant-dimension hyperplanes [Canetti-Rothblum-Varia 10]

New results:โ€ข Fuzzy point functions (Hamming balls)โ€ข Constant-dimension linear subspacesโ€ข Conjunctions (worst-case)

Unified proof for all existing VBB results.

Page 20: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Results

Semantically secure graded encoding

IO [Pass-Seth-Telang 13]

VGB for

Semantically secure* mutlilinear jigsaw puzzles VGB

Semantically secure*graded encoding

Semantically secure mutlilinear jigsaw puzzles

VBB for new families

Page 21: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

SIM-secure encryption IND-secure encryption

Zero-knowledge proofsWitness indistinguishable proofs

SIM-secure functional encryption

IND-secure functional encryption

Obf. w. Unbounded simulationIndistinguishability obfuscation

[Feige-Lapidot-Shamir 99]

SimulationIndistinguishability

[Goldwasser-Micali 82]

[De Caro-Iovino-Jain-O'Neill-P-Persiano 13]

[Bitansky-Canetti 10]

VGB obfuscation?

Page 22: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

This work

Strong indistinguishability obfuscation

Virtual grey-box obfuscation

Page 23: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Indistinguishability Obfuscation

For every pair of circuits :

โˆ€ ๐‘ฅ :๐ถ1 (๐‘ฅ )=๐ถ2(๐‘ฅ)

๐’ช (๐ถ1 )โ‰ˆ๐‘๐’ช (๐ถ2 )

Page 24: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Strong Indistinguishability Obfuscation

For every pair of distributions on circuits:

โˆ€ ๐‘ฅ :Pr [~๐ถ1 (๐‘ฅ )=~๐ถ2 (๐‘ฅ ) ]โ‰ฅ1โˆ’negl (|๐‘ฅ|)

๐’ช (~๐ถ1 )โ‰ˆ๐‘๐’ช (~๐ถ2 )

Page 25: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

VGB from Semantic Security

Strong IO for

Virtual grey-box obfuscation for

Semantically-secure graded encoding*

Page 26: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

The Equivalence.

Strong indistinguishability obfuscation

Virtual grey-box obfuscation

Page 27: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Strong IO VGB

Let be distributions on circuits such that:

โˆ€ ๐‘ฅ :Pr [~๐ถ1 (๐‘ฅ )=~๐ถ2 (๐‘ฅ ) ]โ‰ฅ1โˆ’negl (|๐‘ฅ|)

๐ทโ‰ˆ ๐ท๐‘†

~๐ถ1

๐‘†

~๐ถ2

โ‰ˆ โ‰ˆ

For every distinguisher

๐’ช (~๐ถ1 ) ๐’ช (~๐ถ2 )

Page 28: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

The Equivalence.

Strong indistinguishability obfuscation

Virtual grey-box obfuscation

Page 29: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Strong IO VGB: The Challenge

๐‘†

๐ด๐‘ฆ๐’ช(๐ถ๐‘ฅ)

๐ถ ๐‘ฅ

{1 if ๐‘ฅ=๐‘ฆ0 if ๐‘ฅโ‰  ๐‘ฆ

โ‘๐‘ฆ {1 if ๐‘ฅ=๐‘ฆ0 if ๐‘ฅโ‰  ๐‘ฆ

Point Function: =

Page 30: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Page 31: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Page 32: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Page 33: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Page 34: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Page 35: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

High-Level Simulation Strategy

Extract a information about C from the adversary

Page 36: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

First Step: Concentrated Functions

A family of boolean functions is concentrated around a function if for every input :

Pr๐ถโ†๐ท

[๐ถ (๐‘ฅ )= ๐‘“ (๐‘ฅ ) ]โ‰ฅ1โˆ’negl(|๐‘ฅ|)

Page 37: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

Starting Point

The simulator queries on a โ€œsplittingโ€ input

Page 38: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

The simulator queries on a โ€œsplittingโ€ input

Page 39: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

The simulator queries on a โ€œsplittingโ€ input

Page 40: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

The simulator queries on a โ€œsplittingโ€ input

Page 41: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ถ

The Concentrated Family

There is no splitting input to query

Page 42: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Warm Up: Point Functions [Canetti 97]

Let be a strong IO for point functions. For an adversary let be the set of points such that:

Pr [๐ด (๐’ช (๐ถ๐‘ฅ ))=1 ]โˆ’ Pr [ ๐ด (๐’ช (๐ŸŽ ) )=1 ]โ‰ฅ๐œ–

๐‘†๐ถ ๐‘ฅ

{๐ด(๐’ช(๐ถ๐‘ฅ )) if ๐‘ฅโˆˆ๐ต๐ด

๐ด(๐’ช(๐ŸŽ)) if ๐‘ฅโˆ‰๐ต๐ด

How to simulate an obfuscation of ?

If simulation is trivial.if the simulator can learn with a small number of oracle queries.

Page 43: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Claim: .

Proof: By the definition of we have that:

.

However, if is super polynomial:

Pr [๐ด (๐’ช (๐ถ๐‘ฅ ))=1 ]โˆ’ Pr [ ๐ด (๐ŸŽ )=1 ]โ‰ฅ๐œ–For an adversary let be a set of functions such that:

Page 44: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Main Step: General Concentrated Functions

Let be a strong IO for .

For an adversary let be the set of functions s.t:

Pr [๐ด (๐’ช (๐ถ ) )=1 ]โˆ’Pr [๐ด (๐’ช ( ๐‘“ ) )=1 ]โ‰ฅ๐œ–

The set may be large!

Page 45: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

To simulate an obfuscation of :

1. If simulation is trivial.

2. if then simulator can learn a โ€œseparatingโ€ input s.t. in

a small number of oracle queries.

3. Set . Note: .

4. Repeat.

Page 46: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐ต๐ด

๐ต๐ด

๐ท

๐ต๐ด

๐ถ

๐ถ (๐‘ง )โ‰  ๐‘“ (๐‘ง )

๐‘“๐‘“ 2

Page 47: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐‘“

๐ท๐ท2

๐ถ

๐‘“ 2๐ต๐ด2

๐ต๐ด2

๐ถ (๐‘ง )โ‰  ๐‘“ (๐‘ง )

๐ท3

๐‘“ 3๐ถ (๐‘ง 2 )โ‰  ๐‘“ 2 (๐‘ง 2 )

Page 48: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

๐‘“

๐ท๐ท2

๐ถ

๐‘“ 2

๐ถ (๐‘ง )โ‰  ๐‘“ (๐‘ง )

๐ท3

๐‘“ 3๐ถ (๐‘ง 2 )โ‰  ๐‘“ 2 (๐‘ง 2 )

๐ต๐ด3

Page 49: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Claim: There exists a set of separating inputs such that: 1. . 2. For every , there exists such that

Proof:By the definition of we have that: .

Find an input that is separating for a noticeable fraction of the functions in . Such exists since otherwise:

โˆ€ ๐‘ง : Pr๐‘โ†๐ต๐ด

[๐ถ (๐‘ง )= ๐‘“ (๐‘ง ) ]โ‰ฅ1โˆ’negl (|๐‘ง|)

Add to , set , and repeat.

When , how to learn a separating input s.t. in a small number of oracle queries?

Page 50: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Two sources of inefficiency

1. Learning the function:โ€“ Finding splitting inputs to concentrate

2. Learning the adversary:โ€“ Finding the bad set โ€“ Finding the set of separating inputs

Page 51: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Summary

โ€ข VGB is more meaningful than IO and probably more achievable than VBB.

โ€ข Strong IO VGB.

โ€ข More applications of VGB.โ€ข The quest for the โ€œrightโ€ definition is not over.

Page 52: On Virtual Grey-Box Obfuscation for General Circuits Nir Bitansky Ran Canetti Yael Tauman-Kalai Omer Paneth

Thanks!


Top Related