Partially Encrypted Machine Learning using Functional Encryption eo - - PowerPoint PPT Presentation

partially encrypted machine learning using functional
SMART_READER_LITE
LIVE PREVIEW

Partially Encrypted Machine Learning using Functional Encryption eo - - PowerPoint PPT Presentation

Partially Encrypted Machine Learning using Functional Encryption eo Ryffel 1,2 Edouard Dufour-Sans 1 Romain Gay 1,3 Th Francis Bach 2,1 David Pointcheval 1,2 1 Ecole Normale Sup erieure 2 INRIA 3 UC Berkeley August 18, 2019 Table of


slide-1
SLIDE 1

Partially Encrypted Machine Learning using Functional Encryption

Th´ eo Ryffel1,2 Edouard Dufour-Sans 1 Romain Gay 1,3 Francis Bach 2,1 David Pointcheval 1,2

Ecole Normale Sup´ erieure

2INRIA 3UC Berkeley

August 18, 2019

slide-2
SLIDE 2

Table of Contents

Background Functional Encryption Security of Functional Encryption Overview Our contributions Basics of Functional Inference Our Scheme A Simple Model Collateral learning Attacks on initial approach Defining practical security Collateral learning Results and Future Work Implementation Results Open problems

slide-3
SLIDE 3

Functional Encryption

Traditional PKE: all or nothing.

slide-4
SLIDE 4

Functional Encryption

Traditional PKE: all or nothing. ◮ Have the key? Get the plaintext. ◮ Don’t have the key? Get nothing.

slide-5
SLIDE 5

Functional Encryption

Traditional PKE: all or nothing. ◮ Have the key? Get the plaintext. ◮ Don’t have the key? Get nothing. Functional Encryption: A new paradigm.

slide-6
SLIDE 6

Functional Encryption

Traditional PKE: all or nothing. ◮ Have the key? Get the plaintext. ◮ Don’t have the key? Get nothing. Functional Encryption: A new paradigm. Get a function of the cleartext.

slide-7
SLIDE 7

Functional Encryption

Traditional PKE: all or nothing. ◮ Have the key? Get the plaintext. ◮ Don’t have the key? Get nothing. Functional Encryption: A new paradigm. Get a function of the cleartext. Function depends on the key.

slide-8
SLIDE 8

FE example

msk

I want to receive encrypted emails. I don’t want to be bothered with spam. Decrypt and send to my colleague if urgent.

skfspam, skfurgent pk

slide-9
SLIDE 9

FE example

msk pk skfspam, skfurgent

I don’t know what it is but it’s spam!

Encpk(”Cheap RayBans!!!”)

slide-10
SLIDE 10

Security definitions

pk b? LeftOrRight(x0,x1) Enc(xb) KeyDer(f ) skf

slide-11
SLIDE 11

Security definitions

pk b?

No cheating! f (x0) = f (x1)

LeftOrRight(x0,x1) Enc(xb) KeyDer(f ) skf

slide-12
SLIDE 12

Table of Contents

Background Functional Encryption Security of Functional Encryption Overview Our contributions Basics of Functional Inference Our Scheme A Simple Model Collateral learning Attacks on initial approach Defining practical security Collateral learning Results and Future Work Implementation Results Open problems

slide-13
SLIDE 13

Our contributions

◮ New Quadratic FE scheme; ◮ Python Implementation; ◮ Methodology for Thinking About Privacy in FE-ML; ◮ New Dataset; ◮ Collateral Learning Framework for Training Models in FE-ML.

slide-14
SLIDE 14

Table of Contents

Background Functional Encryption Security of Functional Encryption Overview Our contributions Basics of Functional Inference Our Scheme A Simple Model Collateral learning Attacks on initial approach Defining practical security Collateral learning Results and Future Work Implementation Results Open problems

slide-15
SLIDE 15

A New FE Scheme for Quadratic Forms

◮ Key skQ gets you xTQ x from Enc( x); ◮ Decryption 1.5× faster than State-of-the-Art; ◮ Uses pairings. Secure in Generic Group Model;

slide-16
SLIDE 16

A New FE Scheme for Quadratic Forms

◮ Key skQ gets you xTQ x from Enc( x); ◮ Decryption 1.5× faster than State-of-the-Art; ◮ Uses pairings. Secure in Generic Group Model; ◮ All group-based computational FE schemes require a discrete logarithm; ◮ Must ensure output has reasonably small entropy;

slide-17
SLIDE 17

A New FE Scheme for Quadratic Forms

◮ Key skQ gets you xTQ x from Enc( x); ◮ Decryption 1.5× faster than State-of-the-Art; ◮ Uses pairings. Secure in Generic Group Model; ◮ All group-based computational FE schemes require a discrete logarithm; ◮ Must ensure output has reasonably small entropy; ◮ All DLOGs are in base gT! ◮ We precompute tweaked Giant step of BSGS and store for reuse.

slide-18
SLIDE 18

A Simple Model

Encrypted pixel #1 Encrypted pixel #2 Encrypted pixel #3 Encrypted pixel #782 Encrypted pixel #783 Encrypted pixel #784

. . .

·2 ·2 ·2 ·2

. . . . . .

dlog dlog

. . .

Score for 0 Score for 9

. . .

Input layer (Ciphertext) Hidden layer (Pairings) Output layer

slide-19
SLIDE 19

Table of Contents

Background Functional Encryption Security of Functional Encryption Overview Our contributions Basics of Functional Inference Our Scheme A Simple Model Collateral learning Attacks on initial approach Defining practical security Collateral learning Results and Future Work Implementation Results Open problems

slide-20
SLIDE 20

Leakage

Ciphertexts are for vectors x ∈ [0, 255]784. A key for Q lets you compute one scalar xTQ x.

slide-21
SLIDE 21

Leakage

Ciphertexts are for vectors x ∈ [0, 255]784. A key for Q lets you compute one scalar xTQ x. More keys give you more scalars.

slide-22
SLIDE 22

Leakage

Ciphertexts are for vectors x ∈ [0, 255]784. A key for Q lets you compute one scalar xTQ x. More keys give you more scalars. But your notion of privacy depends on the distributions on the x’s.

slide-23
SLIDE 23

Leakage

Ciphertexts are for vectors x ∈ [0, 255]784. A key for Q lets you compute one scalar xTQ x. More keys give you more scalars. But your notion of privacy depends on the distributions on the x’s. 10 scalars actually give a lot of information: [CFLS18] mount good recovery attacks.

slide-24
SLIDE 24

Defining Security for FE-ML

Security definition of FE isn’t very helpful for deciding how many keys you can give out.

slide-25
SLIDE 25

Defining Security for FE-ML

Security definition of FE isn’t very helpful for deciding how many keys you can give out. What information are we trying to protect?

slide-26
SLIDE 26

Defining Security for FE-ML

Security definition of FE isn’t very helpful for deciding how many keys you can give out. What information are we trying to protect? Is a decent reconstruction of a MNIST image bad for privacy? Is it

  • k? Which details matter?
slide-27
SLIDE 27

Defining Security for FE-ML

Security definition of FE isn’t very helpful for deciding how many keys you can give out. What information are we trying to protect? Is a decent reconstruction of a MNIST image bad for privacy? Is it

  • k? Which details matter?

We need to capture real-world concerns on real-world data distributions.

slide-28
SLIDE 28

Defining Security for FE-ML

Security definition of FE isn’t very helpful for deciding how many keys you can give out. What information are we trying to protect? Is a decent reconstruction of a MNIST image bad for privacy? Is it

  • k? Which details matter?

We need to capture real-world concerns on real-world data distributions. We can draw inspiration from the cryptographic notion of indistinguishibility.

slide-29
SLIDE 29

Defining Security for FE-ML

slide-30
SLIDE 30

Collateral Learning

slide-31
SLIDE 31

Table of Contents

Background Functional Encryption Security of Functional Encryption Overview Our contributions Basics of Functional Inference Our Scheme A Simple Model Collateral learning Attacks on initial approach Defining practical security Collateral learning Results and Future Work Implementation Results Open problems

slide-32
SLIDE 32

Implementation

We provide a Python implementation using Charm with PBC. We use a database for precomputed discrete logarithms.

Functional key generation 0.094s Encryption time 12.1s Evaluation time 2.97s Discrete logarithms time 0.024s

slide-33
SLIDE 33

Results: Influence of Output Size

slide-34
SLIDE 34

Results: Influence of Adversarial Parameter

slide-35
SLIDE 35

Open problems

◮ Bigger images.

slide-36
SLIDE 36

Open problems

◮ Bigger images. ◮ Richer FE.

slide-37
SLIDE 37

Open problems

◮ Bigger images. ◮ Richer FE. ◮ Trusting models.

slide-38
SLIDE 38

Recap: Our contributions

◮ New Quadratic FE scheme; ◮ Python Implementation; ◮ Methodology for Thinking About Privacy in FE-ML; ◮ New Dataset; ◮ Collateral Learning Framework for Training Models in FE-ML.