Side Channel Cryptanalysis of a Higher Order Schemes Generic - - PowerPoint PPT Presentation

side channel cryptanalysis of a higher order
SMART_READER_LITE
LIVE PREVIEW

Side Channel Cryptanalysis of a Higher Order Schemes Generic - - PowerPoint PPT Presentation

8 + Introduction Higher Order Masking Side Channel Cryptanalysis of a Higher Order Schemes Generic Masking Scheme Scheme Improved Scheme Experimental Results J.-S. Coron 1 E. Prouff 2 M. Rivain 1 , 2 Conclusion 1 University of


slide-1
SLIDE 1

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Side Channel Cryptanalysis of a Higher Order Masking Scheme

J.-S. Coron1

  • E. Prouff2
  • M. Rivain1,2

1University of Luxembourg 2Oberthur Card Systems

CHES 2007

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 1 / 23

slide-2
SLIDE 2

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Contents

1

Introduction

2

Higher Order Masking Schemes

3

Generic Scheme

4

Improved Scheme

5

Experimental Results

6

Conclusion

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 2 / 23

slide-3
SLIDE 3

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Differential Power Analysis (DPA)

The physical leakage of the execution of any algorithm depends on the intermediate variables DPA exploits leakage on sensitive variables that depends

  • n the secret key

Common countermeasure: masking

◮ A random value is added to every sensitive variable ◮ ⇒ Instantaneous leakage independent of sensitive variables Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 3 / 23

slide-4
SLIDE 4

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order DPA (HO-DPA)

Against First Order Masking

Y : sensitive variable, M: mask

◮ Y ⊕ M processed at t0 ◮ M processed at t1

First order DPA attack not feasible Second order DPA attack feasible

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 4 / 23

slide-5
SLIDE 5

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order DPA (HO-DPA)

Against d-th Order Masking

Y : sensitive variable, Mi’s: masks

◮ Y ⊕ M1 ⊕ · · · ⊕ Md processed at t0 ◮ Mi’s processed at ti

d-th order DPA attack not feasible (d + 1)-th order DPA attack feasible

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 5 / 23

slide-6
SLIDE 6

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order DPA (HO-DPA)

The complexity of an HO-DPA is exponential with its

  • rder (Chari et al. in CRYPTO’99)

The order d is a good security parameter A generic masking scheme must

◮ involve d random masks per sensitive variable ◮ thwart d-th order DPA Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 6 / 23

slide-7
SLIDE 7

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

Formalizing the security: sensitive variable: depends on both the plaintext and the secret key

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 7 / 23

slide-8
SLIDE 8

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

Formalizing the security: sensitive variable: depends on both the plaintext and the secret key d-th order flaw: a d-tuple of intermediate variables statistically dependent on a sensitive variable

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 7 / 23

slide-9
SLIDE 9

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

Formalizing the security: sensitive variable: depends on both the plaintext and the secret key d-th order flaw: a d-tuple of intermediate variables statistically dependent on a sensitive variable security against d-th order DPA: no d-th order flaw

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 7 / 23

slide-10
SLIDE 10

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

Each sensitive variable Y is masked with d masks Mi’s completeness: the masked variable MV and the masks Mi’s must always satisfy: MV ⊕ M1 ⊕ · · · ⊕ Md = Y security: MV and all the Mi’s must be processed separately

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 8 / 23

slide-11
SLIDE 11

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

In network of linear layers and non-linear SBoxes

◮ Propagation through a linear layer

· · · L Md L(Md) L L(MV ) MV L L(M1) M1 · · ·

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 9 / 23

slide-12
SLIDE 12

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

In network of linear layers and non-linear SBoxes

◮ Propagation through a linear layer

= Y L L(M1) M1 · · · · · · L Md L(Md) L L(MV ) MV

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 9 / 23

slide-13
SLIDE 13

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

In network of linear layers and non-linear SBoxes

◮ Propagation through a linear layer

L L(M1) M1 · · · · · · L Md L(Md) = L(Y ) = Y L L(MV ) MV

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 9 / 23

slide-14
SLIDE 14

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

In network of linear layers and non-linear SBoxes

◮ Propagation through a non-linear SBox

= S(Y ) = Y S(MV ) MV S S(M1) M1 · · · · · · Md S(Md) S S

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 9 / 23

slide-15
SLIDE 15

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

In network of linear layers and non-linear SBoxes

◮ Propagation through a non-linear SBox

Nd = Y M1 · · · · · · Md ?? ?? ?? MV = S(Y ) NV N1 Problem

How to securely compute (NV , N ′

is) from (MV , M′ is) ?

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 9 / 23

slide-16
SLIDE 16

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Higher Order Masking Schemes

Problem widely investigated for 1-st order masking

◮ Efficient and widely used method: the table

re-computation

For d-th order masking: one single proposal in the Literature

◮ [SP06] - K. Schramm and C. Paar, “Higher Order Masking

  • f the AES” in CT-RSA 2006.

◮ Principle: adapt the table re-computation method to d-th

  • rder masking

Our paper: [SP06] is broken by 3-rd order DPA for any value of the masking order d

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 10 / 23

slide-17
SLIDE 17

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For 1-st order masking

S∗ M1 = Y N1 ← rand()

re-computation

S MV

For all x: S∗(x) ← S(x ⊕ M1) ⊕ N1

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 11 / 23

slide-18
SLIDE 18

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For 1-st order masking

N1 M1 = Y MV S∗ NV

For all x: S∗(x) ← S(x ⊕ M1) ⊕ N1 NV ← S∗ (MV )

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 11 / 23

slide-19
SLIDE 19

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For 1-st order masking

= S(Y ) M1 = Y MV S∗ NV N1

For all x: S∗(x) ← S(x ⊕ M1) ⊕ N1 NV ← S∗ (MV ) = S (MV ⊕ M1) ⊕ N1 = S(Y ) ⊕ N1

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 11 / 23

slide-20
SLIDE 20

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For d-th order masking [SP06]

S = Y MV M1 · · · Md

d-th order re-computation

N1 Nd · · · S∗

For every x: S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 12 / 23

slide-21
SLIDE 21

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For d-th order masking [SP06]

NV = Y MV M1 · · · Md N1 Nd · · · = S(Y ) S∗

For every x: S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 12 / 23

slide-22
SLIDE 22

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Table re-computation method

For d-th order masking [SP06]

NV = Y MV M1 · · · Md N1 Nd · · · = S(Y ) S∗

For every x: S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

Problem

How to securely compute S∗ from (S, M′

is, N′ is).

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 12 / 23

slide-23
SLIDE 23

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Generic Scheme

Process d successive table re-computations: S1(x) = S(x ⊕ M1) ⊕ N1

S1 M1 N1

re-computation

S

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 13 / 23

slide-24
SLIDE 24

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Generic Scheme

Process d successive table re-computations: S1(x) = S(x ⊕ M1) ⊕ N1 S2(x) = S(x ⊕ M1 ⊕ M2) ⊕ N1 ⊕ N2

N2

re-computation

S2 S1 M2

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 13 / 23

slide-25
SLIDE 25

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Generic Scheme

Process d successive table re-computations: S1(x) = S(x ⊕ M1) ⊕ N1 S2(x) = S(x ⊕ M1 ⊕ M2) ⊕ N1 ⊕ N2 ... Sd(x) = S(x⊕M1 ⊕M2 ⊕· · ·⊕Md)⊕N1 ⊕N2 ⊕· · ·⊕Nd

Md

re-computation

Sd Sd−1 Nd

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 13 / 23

slide-26
SLIDE 26

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Generic Scheme

Process d successive table re-computations: S1(x) = S(x ⊕ M1) ⊕ N1 S2(x) = S(x ⊕ M1 ⊕ M2) ⊕ N1 ⊕ N2 ... Sd(x) = S∗(x)

Md

re-computation

Sd Sd−1 Nd

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 13 / 23

slide-27
SLIDE 27

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

Let M = d

i=1 Mi and N = d i=1 Ni

The masked variable MV satisfies:

1) MV = Y ⊕ M

During the re-computation of table Sd:

2) Sd(0) = S(0 ⊕ M) ⊕ N 3) Sd(1) = S(1 ⊕ M) ⊕ N

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 14 / 23

slide-28
SLIDE 28

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

Let M = d

i=1 Mi and N = d i=1 Ni

The masked variable MV satisfies:

1) MV = Y ⊕ M

During the re-computation of table Sd:

2) Sd(0) = S(0 ⊕ M) ⊕ N 3) Sd(1) = S(1 ⊕ M) ⊕ N

The distribution of (MV , Sd(0), Sd(1)) depends on Y

◮ 3-rd order flaw! ◮ thus a 3-rd order DPA theoretically feasible! Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 14 / 23

slide-29
SLIDE 29

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

Pinpointing the dependency

We have:

1) MV = Y ⊕ M 2) Sd(0) = S(0 ⊕ M) ⊕ N 3) Sd(1) = S(1 ⊕ M) ⊕ N

Sd(0) ⊕ Sd(1) = S(M) ⊕ S(M ⊕ 1)

◮ depends on M

Hence, Sd(0) ⊕ Sd(1) and MV jointly depend on Y Hence, the 3-tuple (MV , Sd(0), Sd(1)) depends on Y

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 15 / 23

slide-30
SLIDE 30

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

The attack also works for any 3-tuple (a = b): τa,b = (MV , Sd(a), Sd(b)) iff x → S(x) ⊕ S(x ⊕ a ⊕ b) is not constant τa,b is independent of Y for every (a, b) iff S is affine Hence, S is non-affine ⇒ ∃(a, b) : τa,b depends of Y

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 16 / 23

slide-31
SLIDE 31

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

The attack also works for any 3-tuple (a = b): τa,b = (MV , Sd(a), Sd(b)) iff x → S(x) ⊕ S(x ⊕ a ⊕ b) is not constant τa,b is independent of Y for every (a, b) iff S is affine Hence, S is non-affine ⇒ ∃(a, b) : τa,b depends of Y For every non-affine SBox, the generic scheme [SP06] admits a 3-rd order flaw!

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 16 / 23

slide-32
SLIDE 32

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaw

The attack also works for any 3-tuple (a = b): τa,b = (MV , Sd(a), Sd(b)) iff x → S(x) ⊕ S(x ⊕ a ⊕ b) is not constant τa,b is independent of Y for every (a, b) iff S is affine Hence, S is non-affine ⇒ ∃(a, b) : τa,b depends of Y The generic scheme [SP06] is broken by 3-rd order DPA for any masking order d!

Conclusion

The approach of processing d table re-computations is not sound to thwart d-th order DPA.

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 16 / 23

slide-33
SLIDE 33

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Improved Scheme

Generic scheme very costly

◮ d table re-computations per S-Box access

Proposed improvement [SP06]:

◮ d table re-computations for the first SBox access ◮ 1 single table re-computation for each next SBox access

How ?

◮ each new masked SBox is derived from the previous one Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 17 / 23

slide-34
SLIDE 34

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Improved Scheme

Let MV and M′

V be two consecutive masked SBox inputs

◮ MV = Y ⊕ M1 ⊕ · · · ⊕ Md ◮ M ′

V = Y ′ ⊕ M ′ 1 ⊕ · · · ⊕ M ′ d

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 18 / 23

slide-35
SLIDE 35

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Improved Scheme

Let MV and M′

V be two consecutive masked SBox inputs

◮ MV = Y ⊕ M1 ⊕ · · · ⊕ Md ◮ M ′

V = Y ′ ⊕ M ′ 1 ⊕ · · · ⊕ M ′ d

Let S∗ and S∗

new be the masked SBoxes:

◮ S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

◮ S∗

new(x) = S

  • x ⊕ d

i=1 M ′ i

  • ⊕ d

i=1 N ′ i

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 18 / 23

slide-36
SLIDE 36

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Improved Scheme

From:

◮ S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

◮ S∗

new(x) = S

  • x ⊕ d

i=1 M ′ i

  • ⊕ d

i=1 N ′ i

we have: S∗

new(x) = S∗

  • x ⊕

d

  • i=1

Mi ⊕

d

  • i=1

M′

i

d

  • i=1

Ni ⊕

d

  • i=1

N′

i

S∗

new ← re-computation

  • S∗, d

i=1 Mi ⊕ d i=1 M′ i,

d

i=1 Ni ⊕ d i=1 N′ i

  • Coron - Prouff - Rivain (UoL, OCS)

S.C. Cryptanalysis of a H.O. Masking CHES 2007 19 / 23

slide-37
SLIDE 37

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Improved Scheme

From:

◮ S∗(x) = S

  • x ⊕ d

i=1 Mi

  • ⊕ d

i=1 Ni

◮ S∗

new(x) = S

  • x ⊕ d

i=1 M ′ i

  • ⊕ d

i=1 N ′ i

we have: S∗

new(x) = S∗

  • x ⊕

d

  • i=1

Mi ⊕

d

  • i=1

M′

i

d

  • i=1

Ni ⊕

d

  • i=1

N′

i

S∗

new ← re-computation(S∗, ICM, OCM)

◮ ICM = d

i=1 Mi ⊕ d i=1 M ′ i

◮ OCM = d

i=1 Ni ⊕ d i=1 N ′ i

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 19 / 23

slide-38
SLIDE 38

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaws

The processing of ICM (resp. OCM) introduces a 3-rd

  • rder flaw

ICM 3-rd order flaw:

1) MV = Y ⊕ M1 ⊕ · · · ⊕ Md 2) M ′

V = Y ′ ⊕ M ′ 1 ⊕ · · · ⊕ M ′ d

3) ICM = M1 ⊕ · · · ⊕ Md ⊕ M ′

1 ⊕ · · · ⊕ M ′ d

MV ⊕ M′

V ⊕ ICM = Y ⊕ Y ′

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 20 / 23

slide-39
SLIDE 39

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaws

The processing of ICM (resp. OCM) introduces a 3-rd

  • rder flaw

OCM 3-rd order flaw:

1) NV = S(Y ) ⊕ N1 ⊕ · · · ⊕ Nd 2) N ′

V = S(Y ′) ⊕ N ′ 1 ⊕ · · · ⊕ N ′ d

3) OCM = N1 ⊕ · · · ⊕ Nd ⊕ N ′

1 ⊕ · · · ⊕ N ′ d

NV ⊕ N′

V ⊕ OCM = S(Y ) ⊕ S(Y ′)

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 20 / 23

slide-40
SLIDE 40

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

3-rd order flaws

The processing of ICM (resp. OCM) introduces a 3-rd

  • rder flaw

OCM 3-rd order flaw:

1) NV = S(Y ) ⊕ N1 ⊕ · · · ⊕ Nd 2) N ′

V = S(Y ′) ⊕ N ′ 1 ⊕ · · · ⊕ N ′ d

3) OCM = N1 ⊕ · · · ⊕ Nd ⊕ N ′

1 ⊕ · · · ⊕ N ′ d

NV ⊕ N′

V ⊕ OCM = S(Y ) ⊕ S(Y ′)

The improved scheme [SP06] is broken by 3-rd order DPA for any masking order d!

Conclusion

The improvement of the scheme – that makes it efficient in a low ressource environment – is not suitable.

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 20 / 23

slide-41
SLIDE 41

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Experimental Results

Attack simulations

◮ Known plaintext attacks on AES ◮ Hamming weight model with (low) Gaussian noise

Two attack strategies

◮ Combining 3O-DPA:

  • correlation attack on a combination of the 3 leakages
  • classical HO-DPA attack

◮ Profiling 3O-DPA:

  • Maximum likelihood test
  • strong adversarial model (requires the knowledge of the

exact distribution of the 3 leakages)

See the paper for further details on the simulations

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 21 / 23

slide-42
SLIDE 42

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Experimental Results

Implementation Attack Measurements Generic scheme combining 3O-DPA 6.106 Generic scheme profiling 3O-DPA 2.103 Improved scheme combining 3O-DPA 105 Improved scheme profiling 3O-DPA 103

Table: Number of measurements required for a success rate of 50%.

Our attacks are practical in a classical leakage model The profiling 3O-DPA is more efficient than the combining 3O-DPA The attacks are more efficient on the improved scheme

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 22 / 23

slide-43
SLIDE 43

Introduction Higher Order Masking Schemes Generic Scheme Improved Scheme Experimental Results Conclusion 8 +

Conclusion

The scheme [SP06] is vulnerable to 3-rd order DPA and is not suitable for d-th order DPA resistance

◮ First attack: process d table re-computations not suitable ◮ Second attack: proposed improvement not suitable

Our attacks are practical in a weakly noisy environnement The design of a Higher Order Masking Scheme is still an

  • pen issue

Coron - Prouff - Rivain (UoL, OCS) S.C. Cryptanalysis of a H.O. Masking CHES 2007 23 / 23