Gazelle & Delphi
2021-10-18
Presenter | Yifan Ning |
| |
Agenda
Background - Secure Inference
3
Private Input
(the client)
Private Trained Model
(the server / service provider)
Background - CNN
4
Linear Layers:
Non-Linear Layers:
Gazelle - Threat Model
5
Semi-honest
client
server
Gazelle - Security Guarantees
6
Never able to hide the network architecture 100%
Hides:
Doesn’t hide:
Gazelle - Inefficiencies from previous work
7
Use one scheme for both linear and non-linear layers
Gazelle - Inefficiencies from previous work
8
Non-Linear Layers
Linear Layers
Non-Linear Layers
Linear Layers
Gazelle - Key Ideas
Switch (customized) Schemes for Linear / Non-Linear Layers!
Gazelle - Key Ideas
Gazelle - Protocol Overview
11
GC to PAHE
PAHE Enc
PAHE Eval (Kernel)
PAHE to GC
PAHE Dec
Conv/FC Layer (PAHE)
Cy
[ Cy ]
Sy
[ y ] = [ Cy ] + [ Sy ]
[ x ]
[ Cx ] = [x + r]
Eval GC
Send Labels
Cx
sx = r
{ sx }, { sy },
Cy
sy
RELU Layer (GC)
Client
Server
a: plaintext
[a]: ciphertext
{a}: GC label
Gazelle - PAHE Abstraction
12
Gazelle - PAHE Techniques - FC Layer
13
Fast Homomorphic Matrix Multiplication, the naive way
Gazelle - PAHE Techniques - FC Layer
14
Fast Homomorphic Matrix Multiplication, the naive way
Gazelle - PAHE Techniques - FC Layer
15
Fast Homomorphic Matrix Multiplication, input packing
Gazelle - PAHE Techniques - FC Layer
16
Fast Homomorphic Matrix Multiplication, the diagonal way
Gazelle - PAHE Techniques - FC Layer
17
Fast Homomorphic Matrix Multiplication, the hybrid way
Gazelle - PAHE Techniques - Conv Layer
18
Gazelle - Evaluation
19
10~20x runtime speedup
10~100x less bandwidth
Gazelle - Evaluation
20
10~20x runtime speedup
10~100x less bandwidth
Delphi - Intro
Delphi - Intro
Delphi - Motivation
Delphi - Major Techniques
Delphi - Major Techniques
It would be great if we can replace some RELUs with quadratic activations, which are cheap in 2PC
Using quadratic activation affects accuracy
Delphi - Major Techniques
Use Network Architecture Search to figure out the right amount of RELUs to replace while maintaining certain accuracy threshold!
Delphi - Architecture
Delphi - Evaluation
Delphi - Evaluation
Clarifying Questions
Discussion Questions