Blind Source Separation from Single Measurements using Singular - - PowerPoint PPT Presentation

blind source separation from single measurements using
SMART_READER_LITE
LIVE PREVIEW

Blind Source Separation from Single Measurements using Singular - - PowerPoint PPT Presentation

Blind Source Separation from Single Measurements using Singular Spectrum Analysis CHES 2015 14.Sept.2015, Saint-Malo, France Santos Merino del Pozo and Fran cois-Xavier Standaert ICTEAM/ELEN/Crypto Group Universit e catholique de


slide-1
SLIDE 1

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015

Blind Source Separation from Single Measurements using Singular Spectrum Analysis

CHES 2015 14.Sept.2015, Saint-Malo, France

Santos Merino del Pozo and Fran¸ cois-Xavier Standaert

ICTEAM/ELEN/Crypto Group Universit´ e catholique de Louvain, Belgium.

slide-2
SLIDE 2

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 1

Because Noise Matters

◮ More noise → More side-channel measurements

slide-3
SLIDE 3

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 1

Because Noise Matters

◮ More noise → More side-channel measurements ◮ attacks become more challenging ◮ critical for higher-order (HO) attacks !!

slide-4
SLIDE 4

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 1

Because Noise Matters

◮ More noise → More side-channel measurements ◮ attacks become more challenging ◮ critical for higher-order (HO) attacks !! ◮ Ideally, low-noise measurements

slide-5
SLIDE 5

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 1

Because Noise Matters

◮ More noise → More side-channel measurements ◮ attacks become more challenging ◮ critical for higher-order (HO) attacks !! ◮ Ideally, low-noise measurements ◮ can be difficult to achieve in practice ◮ architecture, countermeasures, measurement setup, ...

slide-6
SLIDE 6

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 1

Because Noise Matters

◮ More noise → More side-channel measurements ◮ attacks become more challenging ◮ critical for higher-order (HO) attacks !! ◮ Ideally, low-noise measurements ◮ can be difficult to achieve in practice ◮ architecture, countermeasures, measurement setup, ... ◮ So, preprocessing the collected traces is always advisable

slide-7
SLIDE 7

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 2

State-of-the-Art: Perks and Pitfalls

◮ Averaging ◮ Digital filtering ◮ PCA and LDA

slide-8
SLIDE 8

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 2

State-of-the-Art: Perks and Pitfalls

◮ Averaging

✔ easy yet effective ✘ useless when exploiting HO leakages

◮ Digital filtering ◮ PCA and LDA

slide-9
SLIDE 9

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 2

State-of-the-Art: Perks and Pitfalls

◮ Averaging

✔ easy yet effective ✘ useless when exploiting HO leakages

◮ Digital filtering

✔ relevant for HO analysis ✘ not trivial to design

◮ PCA and LDA

slide-10
SLIDE 10

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 2

State-of-the-Art: Perks and Pitfalls

◮ Averaging

✔ easy yet effective ✘ useless when exploiting HO leakages

◮ Digital filtering

✔ relevant for HO analysis ✘ not trivial to design

◮ PCA and LDA

✔ intuitive and easy to implement ✘ requires profiling, extension to HO analysis?

slide-11
SLIDE 11

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 3

Our Solution

◮ Blind source separation using Singular Spectrum Analysis

(SSA)

slide-12
SLIDE 12

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 3

Our Solution

◮ Blind source separation using Singular Spectrum Analysis

(SSA)

◮ Disregarded in the context of side-channel analysis ◮ Cool features from the attackers point-of-view ◮ working in a per-trace fashion ◮ being readily applied to HO scenarios ◮ not requiring proficiency in signal processing ◮ not needing a profiling stage

slide-13
SLIDE 13

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 4

Outline

Singular Spectrum Analysis 101 Experimental Results Masked software Unprotected hardware Conclusions

slide-14
SLIDE 14

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 5

SSA 101 - Decomposition

So you got a noisy leakage trace ℓ =

  • ℓ1, . . . , ℓN

◮ First, take W = ⌊log (N)c⌋ with c ∈ [1.5, 3], ◮ define D = N − W + 1 delayed vectors

slide-15
SLIDE 15

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 5

SSA 101 - Decomposition

So you got a noisy leakage trace ℓ =

  • ℓ1, . . . , ℓN

◮ First, take W = ⌊log (N)c⌋ with c ∈ [1.5, 3], ◮ define D = N − W + 1 delayed vectors

ℓ1 ℓ2 . . . ℓW

slide-16
SLIDE 16

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 5

SSA 101 - Decomposition

So you got a noisy leakage trace ℓ =

  • ℓ1, . . . , ℓN

◮ First, take W = ⌊log (N)c⌋ with c ∈ [1.5, 3], ◮ define D = N − W + 1 delayed vectors

ℓ1 ℓ2 ℓ2 ℓ3 . . . . . . ℓW ℓW +1

slide-17
SLIDE 17

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 5

SSA 101 - Decomposition

So you got a noisy leakage trace ℓ =

  • ℓ1, . . . , ℓN

◮ First, take W = ⌊log (N)c⌋ with c ∈ [1.5, 3], ◮ define D = N − W + 1 delayed vectors

ℓ1 ℓ2 · · · ℓD ℓ2 ℓ3 · · · ℓD+1 . . . . . . ... . . . ℓW ℓW +1 · · · ℓN

slide-18
SLIDE 18

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 5

SSA 101 - Decomposition

So you got a noisy leakage trace ℓ =

  • ℓ1, . . . , ℓN

◮ First, take W = ⌊log (N)c⌋ with c ∈ [1.5, 3], ◮ define D = N − W + 1 delayed vectors ◮ and then build the so-called trajectory matrix L

L =      ℓ1 ℓ2 · · · ℓD ℓ2 ℓ3 · · · ℓD+1 . . . . . . ... . . . ℓW ℓW +1 · · · ℓN     

slide-19
SLIDE 19

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 6

SSA 101 - Decomposition

Compute the eigenvalues of LL⊤

◮ (λ1 ≥ · · · ≥ λd), the so-called singular spectrum ◮ d = W if none of them is zero

together with the corresponding eigenvectors u1, u2, . . . , ud

slide-20
SLIDE 20

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 6

SSA 101 - Decomposition

Compute the eigenvalues of LL⊤

◮ (λ1 ≥ · · · ≥ λd), the so-called singular spectrum ◮ d = W if none of them is zero

together with the corresponding eigenvectors u1, u2, . . . , ud The SVD decomposition of L is L = ˜ L1 + · · · + ˜ Ld, such that ˜ Li = √λiuiv⊤

i and vi = L⊤ui

√λi

slide-21
SLIDE 21

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 7

SSA 101 - Reconstruction

Now, we are ready to extract the underlying components of ℓ

◮ Each ˜

Li matrix is transformed into the i-th component ˜ ℓi =

  • ˜

ℓ1

i , . . . , ˜

ℓN

i

slide-22
SLIDE 22

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 7

SSA 101 - Reconstruction

Now, we are ready to extract the underlying components of ℓ

◮ Each ˜

Li matrix is transformed into the i-th component ˜ ℓi =

  • ˜

ℓ1

i , . . . , ˜

ℓN

i

  • ◮ Trivial when ˜

Li is a Hankel matrix, i.e., ˜ Li =      ˜ ℓ1

i

˜ ℓ2

i

˜ ℓ3

i

· · · ˜ ℓ2

i

˜ ℓ3

i

· · · · · · ˜ ℓ3

i

. . . ... ˜ ℓN−1

i

. . . . . . ˜ ℓN−1

i

˜ ℓN

i

    

slide-23
SLIDE 23

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 7

SSA 101 - Reconstruction

Now, we are ready to extract the underlying components of ℓ

◮ Each ˜

Li matrix is transformed into the i-th component ˜ ℓi =

  • ˜

ℓ1

i , . . . , ˜

ℓN

i

  • ◮ Trivial when ˜

Li is a Hankel matrix, i.e., ˜ Li =      ˜ ℓ1

i

˜ ℓ2

i

˜ ℓ3

i

· · · ˜ ℓ2

i

˜ ℓ3

i

· · · · · · ˜ ℓ3

i

. . . ... ˜ ℓN−1

i

. . . . . . ˜ ℓN−1

i

˜ ℓN

i

    

◮ but since this is not the case, the so-called hankelization

function must be applied on each ˜ Li

slide-24
SLIDE 24

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 8

SSA 101 - Reconstruction

Lastly, the original leakage trace ℓ can be reconstructed as ℓ = ˜ ℓ1 + · · · + ˜ ℓd

slide-25
SLIDE 25

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 8

SSA 101 - Reconstruction

Lastly, the original leakage trace ℓ can be reconstructed as

◮ but we aim at a signal vs. noise decomposition

ℓ = ˜ ℓ1 + · · · + ˜ ℓd

slide-26
SLIDE 26

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 8

SSA 101 - Reconstruction

Lastly, the original leakage trace ℓ can be reconstructed as

◮ but we aim at a signal vs. noise decomposition ◮ I = {1, . . . , d} is partitioned into Isignal and Inoise,

ℓ = ˜ ℓ1 + · · · + ˜ ℓd

slide-27
SLIDE 27

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 8

SSA 101 - Reconstruction

Lastly, the original leakage trace ℓ can be reconstructed as

◮ but we aim at a signal vs. noise decomposition ◮ I = {1, . . . , d} is partitioned into Isignal and Inoise, so

ℓ =

  • i∈Isignal

˜ ℓi +

  • i∈Inoise

˜ ℓi

slide-28
SLIDE 28

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 8

SSA 101 - Reconstruction

Lastly, the original leakage trace ℓ can be reconstructed as

◮ but we aim at a signal vs. noise decomposition ◮ I = {1, . . . , d} is partitioned into Isignal and Inoise, so

ℓ =

  • i∈Isignal

˜ ℓi +

  • i∈Inoise

˜ ℓi Criteria

◮ Inoise → small singular values producing a slowly

decreasing sequence

◮ Isignal → the remaining ones

slide-29
SLIDE 29

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 9

Experimental Results

Two experimental platforms

◮ Atmel 8-bit µC (ATMega644p) ◮ Spartan-6 FPGA (SAKURA-G)

slide-30
SLIDE 30

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 9

Experimental Results

Two experimental platforms

◮ Atmel 8-bit µC (ATMega644p) ◮ First-order boolean masking scheme of AES ◮ High Signal-to-Noise Ratio ◮ Profiling is allowed ◮ Spartan-6 FPGA (SAKURA-G)

slide-31
SLIDE 31

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 9

Experimental Results

Two experimental platforms

◮ Atmel 8-bit µC (ATMega644p) ◮ First-order boolean masking scheme of AES ◮ High Signal-to-Noise Ratio ◮ Profiling is allowed ◮ Spartan-6 FPGA (SAKURA-G) ◮ Unprotected implementation of PRESENT-80 ◮ Low Signal-to-Noise Ratio ◮ Small peak-to-peak signal → quantization noise ◮ Profiling is not allowed

slide-32
SLIDE 32

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 10

Experimental Results - Masked software

slide-33
SLIDE 33

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 11

Experimental Results - Masked software

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA)

slide-34
SLIDE 34

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 11

Experimental Results - Masked software

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) Bivariate MCP-DPA (raw) Bivariate MCP-DPA (SSA)

slide-35
SLIDE 35

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 11

Experimental Results - Masked software

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) Bivariate TA (raw) Bivariate TA (SSA)

slide-36
SLIDE 36

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 11

Experimental Results - Masked software

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) SR of bivariate MCP-DPA SR of bivariate TA

slide-37
SLIDE 37

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 12

Experimental Results - Unprotected hardware

slide-38
SLIDE 38

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 13

Experimental Results - Unprotected hardware

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA)

slide-39
SLIDE 39

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 13

Experimental Results - Unprotected hardware

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) CPA using HD model (raw) CPA using HD model (SSA)

slide-40
SLIDE 40

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 13

Experimental Results - Unprotected hardware

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) MCC-DPA (raw) MCC-DPA (SSA)

slide-41
SLIDE 41

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 13

Experimental Results - Unprotected hardware

Signal-to-Noise ratio (raw) Signal-to-Noise ratio (SSA) SR of CPA using HD model SR of MCC-DPA

slide-42
SLIDE 42

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 14

Conclusions

◮ SSA in the context of side-channel analysis ◮ intuitive, easy to use ◮ window length → standard rule-of-thumb ◮ reconstruction → visual inspection of components ◮ works in a per-trace fashion ◮ on-the-fly filtering ◮ easily integrated into measurement frameworks ◮ effective ◮ SNR gains up to a factor of 4 ◮ attacks with reduced measurement complexity ◮ Future work: ◮ more challenging scenarios (high noise + masking in

hardware)

◮ distinguish components at same frequencies?

slide-43
SLIDE 43

UCL Crypto Group

Microelectronics Laboratory

Santos Merino del Pozo - CHES 2015 - 14.Sept.2015 15

Questions?