22
Vlad Kolesnikov Bell Labs DIMACS/Northeast Big Data Hub Workshop on Privacy and Security for Big Data Apr 25, 2017

Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Vlad Kolesnikov

Bell Labs

DIMACS/Northeast Big Data Hub Workshop on Privacy and Security for Big DataApr 25, 2017

Page 2: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

You are near Starbucks; here is a special

Legislation may require user consent each time for Location-Based Service(E.g. SK Telecom, Korea)

Page 3: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

May I use your location now?

OK

Nevermind, there aren’t coupons

Compliant location-based service:

Here is a Starbucks coupon

Page 4: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

I want to query patient records

HIPAA protects patient privacy.Only certain queries are OK.What is your query?

My queries are private

Page 5: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Ad campaign:I have a list of my customers. Display an upgrade offer to those who have researched FIOS.

Neither company wishes to share customer lists and histories.FB protects data by instead exchanging hashes of data.

Page 6: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Ask a Trusted Third Party for help.

UserList CUserList F

⊥𝐹 ∩ 𝐶

“Any task involving a Trusted Third Party can also be implemented using a cryptographic protocol without any loss of security.”

[Yao86] [Goldreich Micali Wigderson 87]

Page 7: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Privacy and security enables data sharing

Secure multi-party computation (MPC)◦ Approaches and progress

MPC for big(ger) data: private DB (if time)

Page 8: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Protocol 𝜋a b

Fa(a,b) Fb(a,b)

Page 9: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

OR

AND

Circuit for F

Alice encrypts Boolean wire signals

Page 10: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

OR

AND

a b

a b a˄b

0 0 0

0 1 0

1 0 0

1 1 1

a

a

ba

b

b

a b

Alice encrypts Boolean gates (truth tables)Goal: allow Bob to compute correct gate output key from input keys

Page 11: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

OR

AND

a

a b

a b a˄b

0 0 0

0 1 0

1 0 0

1 1 1

a is Alice’s input

Alice sends this key b is Bob’s input

Alice and Bob run Oblivous Transfer (OT)Bob receives key, while Alice learns nothing.

a

ba

b

b

a b

Decoding table for output wire01

Page 12: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

$1,000

$10,000

$100,000

$1,000,000

$10,000,000

$100,000,000

$1,000,000,000

$10,000,000,000

$100,000,000,000

Aug 2

001

Mar

2002

Oct

20

02

May 2

003

Dec 2

00

3

Jul 20

04

Feb 2

005

Sep 2

005

Apr

200

6

Nov 2

00

6

Jun 2

007

Jan 2

008

Aug 2

008

Mar

2009

Oct

20

09

May 2

010

Dec 2

01

0

Jul 20

11

Feb 2

012

Sep 2

012

Apr

201

3

Nov 2

01

3

Cost to sequence genomeEstimates and chart by Dave Evans (UVA)

Page 13: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Bob only decrypts- cheating not possible- only abort

F(a,b)

Alice can send a GC implementing wrong FBob cannot tell!

Page 14: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Post-processingChecks

Alice generates many copies of garbled circuits

Check Set

EvaluationSet

Cut-and-choose technique40 Circuits need to be sent to prevent cheating by Alice

Page 15: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Check

All copies of garbled circuits

Check Set

EvaluationSet

Evaluate

Idea: Alice can cheat, but caught w prob 50%If caught, Bob gets irrefutable publicly verifiable proof of cheating.

Page 16: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

All copies of garbled circuits

Check Set

EvaluationSet

If cheating is discoveredirrefutable publicly verifiable proof of cheating can be produced

Informal Theorem [KM15]: P is a secure protocol where:Aborting will not help cheating AliceBob cannot defame honest AliceProof does not reveal Bob’s inputVery high efficiency (no public key operations)

Page 17: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Before After

Nobody can cheat Alice can cheat.Caught with prob ½.If caught, proof of cheating is published.Sufficient deterrent in most scenarios.

20X speed improvement

~30X, Free Hash [FGK17]

Page 18: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Idea [GMS08]: don’t send circuits.Instead:

1) choose seed s2) generate GC(PRG(s))3) compute h=SHA(GC)4) send h. A cannot later send a wrong GC

5) A send s to open circuits6) A send GC to evaluate

Free Hash:

ℎ =⊕ {GC labels}

Page 19: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

GC hash definition weaker than standard collision resistance

Take advantage of the input to hash being a Garbled Circuit

Given a correctly generated garbled circuit and hash (GC; h)◦ If A finds 𝐺𝐶 such that 𝐻( 𝐺𝐶) = 𝐻(𝐺𝐶)

◦ Then, w.h.p, the garbled circuit property of 𝐺𝐶 is broken

◦ 𝐺𝐶 will fail to evaluate

Verification of hash involves GC evaluation

Page 20: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Ve(C, GC, d, e ) = accept

H(GC) = H(GC) = h

CGC, GC, e, e, d, h

Same decoding information d

De( Eval( GC, En( e, x), d) = 丄 for all x , w.h.p

Page 21: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled

Garbled rows are encryptions of output labels

Garbling of a gate relates garbled rows and input and output labels as preimage/image of a crypto function

Change in a garbled row or input label creates unpredictable change in computed output label

Hard to change active garbled rows and still get output label that you want

During GC evaluation, once label is wrong, hard to make it right

Idea: ensure all rows are active, i.e. GC evaluation involves all GC rows◦ *Not quite enough, but close. Not hard to work out precise requirements.

Page 22: Vlad Kolesnikov Bell Labs - DIMACSdimacs.rutgers.edu/Workshops/BigDataHub/Slides/... · 2017-05-22 · Garbled rows are encryptions of output labels Garbling of a gate relates garbled