Professional Documents
Culture Documents
1 / 44
Machine Learning for Side-channel Analysis
Outline
1 Introduction
4 Common Problems
5 Conclusions
2 / 44
Machine Learning for Side-channel Analysis
Introduction
Outline
1 Introduction
4 Common Problems
5 Conclusions
3 / 44
Machine Learning for Side-channel Analysis
Introduction
Implementation attacks
Implementation attacks do not aim at the weaknesses of the
algorithm, but on its implementation.
4 / 44
Machine Learning for Side-channel Analysis
Introduction
5 / 44
Machine Learning for Side-channel Analysis
Introduction
Profiled Attacks
6 / 44
Machine Learning for Side-channel Analysis
Introduction
Template Attack
7 / 44
Machine Learning for Side-channel Analysis
Introduction
Profiled Attacks
8 / 44
Machine Learning for Side-channel Analysis
Introduction
9 / 44
Machine Learning for Side-channel Analysis
Introduction
Machine Learning
Machine Learning
Machine Learning (ML) is a subfield of computer science that
evolved from the study of pattern recognition and computational
learning theory in artificial intelligence.
Machine Learning
Field of study that gives computers the ability to learn without
being explicitly programmed
Machine Learning
A computer program is said to learn from experience E with
respect to some task T and some performance measure P, if its
performance on T, as measured with P, improves with experience
E.
10 / 44
Machine Learning for Side-channel Analysis
Introduction
Machine Learning
11 / 44
Machine Learning for Side-channel Analysis
Introduction
Dangers of Extrapolating
12 / 44
Machine Learning for Side-channel Analysis
Introduction
13 / 44
Machine Learning for Side-channel Analysis
Introduction
14 / 44
Machine Learning for Side-channel Analysis
Side-channel Analysis and Machine Learning
Outline
1 Introduction
4 Common Problems
5 Conclusions
15 / 44
Machine Learning for Side-channel Analysis
Side-channel Analysis and Machine Learning
16 / 44
Machine Learning for Side-channel Analysis
Side-channel Analysis and Machine Learning
Supervised Learning
17 / 44
Machine Learning for Side-channel Analysis
Side-channel Analysis and Machine Learning
Outline
1 Introduction
4 Common Problems
5 Conclusions
19 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
Deep Learning
Stacked neural networks, i.e., networks consisting of multiple
layers.
Layers are made of nodes.
20 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
Multilayer Perceptron
One input layer, one output layer, at least one hidden layer.
21 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
22 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
It proves that there exists no single model that works best for
every problem.
To find the best model for a certain problem, numerous
algorithms and parameter combinations should be tested.
Not even then we can be sure that we found the best model,
but at least we should be able to estimate the possible
trade-offs between the speed, accuracy, and complexity of the
obtained models.
23 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
24 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
Deep Learning
25 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
Deep Learning
26 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
27 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
27 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
16
(4)
32
(4)
64 9
(4)
128 (4)
conv4 pool4 flatten
pool3 out
conv3
pool2
conv2
pool1
conv1
input
28 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
29 / 44
Machine Learning for Side-channel Analysis
The Promises of Deep Learning
30 / 44
Machine Learning for Side-channel Analysis
Common Problems
Outline
1 Introduction
4 Common Problems
5 Conclusions
31 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Common Problems
32 / 44
Machine Learning for Side-channel Analysis
Common Problems
Imbalanced Data
33 / 44
Machine Learning for Side-channel Analysis
Common Problems
Imbalanced Data
Predicted Actual
0 1 2 3 4 5 6 7 8
0 0 0 0 99 0 0 0 0 0
0 0 0 0 727 0 0 0 0 1
0 0 0 0 2 767 0 0 0 0 2
0 0 0 0 5 481 0 0 0 0 3
0 0 0 0 6 815 0 0 0 0 4
0 0 0 0 5 422 0 0 0 0 5
0 0 0 0 2 777 0 0 0 0 6
0 0 0 0 809 0 0 0 0 7
0 0 0 0 103 0 0 0 0 8
34 / 44
Machine Learning for Side-channel Analysis
Common Problems
35 / 44
Machine Learning for Side-channel Analysis
Common Problems
35 / 44
Machine Learning for Side-channel Analysis
Common Problems
36 / 44
Machine Learning for Side-channel Analysis
Common Problems
37 / 44
Machine Learning for Side-channel Analysis
Common Problems
Curse of Dimensionality
38 / 44
Machine Learning for Side-channel Analysis
Common Problems
Hyper-parameter Tuning
39 / 44
Machine Learning for Side-channel Analysis
Common Problems
40 / 44
Machine Learning for Side-channel Analysis
Common Problems
41 / 44
Machine Learning for Side-channel Analysis
Conclusions
Outline
1 Introduction
4 Common Problems
5 Conclusions
42 / 44
Machine Learning for Side-channel Analysis
Conclusions
Conclusions
43 / 44
Machine Learning for Side-channel Analysis
Conclusions
Conclusions
43 / 44
Machine Learning for Side-channel Analysis
Conclusions
Questions?
44 / 44