differential fault intensity analysis filedifferential fault intensity analysis on present and led...

33
DIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839, and through SRC. COSADE 2015 Nahid Farhady Ghalaty, Bilgiday Yuce, Patrick Schaumont ECE Department Virginia Tech

Upload: phamque

Post on 12-Aug-2019

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers

This research was supported through NSF Grant 1441710, Grant 1115839, and through SRC.

COSADE 2015

Nahid Farhady Ghalaty, Bilgiday Yuce, Patrick Schaumont

ECE Department

Virginia Tech

Page 2: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

2

Page 3: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

In a nutshell

• The basis of Differential Fault Intensity Analysis (DFIA) is biased (non-uniform) fault behavior.

• DFIA provides a feasible (cheap, general) biased fault model.

• DFIA works even we do not have high-capability fault injection equipment.

3

Page 4: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Fault Attack Requirements

• Fault Attacks:1. Injecting faults in cipher’s state

2. Observing the effects of the fault

3. Analyzing the effects to retrieve the key

4

Page 5: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• Fault analysis relies on fault model.• Fault model: Assumptions/Restrictions on the

injected faults

• Attacker needs a feasible fault model.

5

Fault Attack Requirements

Page 6: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• Differential Fault Intensity Analysis (DFIA):1. How can we obtain biased faults?

• With low-cost setups

• With applicability to any fault injection method

⟹ A feasible fault model

6

Fault Attack Requirements

Page 7: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• Differential Fault Intensity Analysis (DFIA):1. How can we tune the injected faults?

• With low-cost setups

• With applicability to any fault injection method

⟹ A feasible fault model

2. How can we exploit the biased faults?• Using side-channel analysis approach

• Similar to Differential Power Analysis (DPA)

7

Fault Attack Requirements

Page 8: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

8

Page 9: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• # of Faults vs. External Clock Frequency

9

Observation I

Clock-glitching (Ghalaty et al. FDTC’14)

f1 = 210 MHz

# Faults = 1

f1 = 240 MHz

# Faults = 2

f1 = 270 MHz

# Faults = 3

Page 10: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• # of Faults vs. EM Pulse Amplitude

10

Observation II

Electromagnetic (EM) Pulses (Moro et al. FDTC’13)

Vpulse = 176 V

# Faults = 5

Vpulse = 178 V

# Faults = 8

Vpulse = 182 V

# Faults = 13

EM Pulse Amplitude (V)

Nu

mb

er o

f Fa

ult

y B

its

EM Pulse Amplitude (V)

Nu

mb

er o

f Fa

ult

y B

its

EM Pulse Amplitude (V)

Nu

mb

er o

f Fa

ult

y B

itsv

Page 11: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• How can we inject biased faults?• By varying the fault intensity

• Fault Intensity:• The strength of the applied stress on the attacked device

11

Creating Biased Faults

Fault Injection Method Fault Intensity

Clock-glitching Clock frequency

EM Pulses Pulse voltage

Page 12: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• How can we inject biased faults?• By varying the fault intensity

• Fault Intensity:• The strength of the applied stress on the attacked device

12

Fault Injection Method Fault Intensity

Clock-glitching Clock frequency

EM Pulses Pulse voltage

Creating Biased Faults (cont.)

• Biased (Non-uniform) Fault Behavior:• Number of Faults ∼ Fault Intensity

• Small change in Fault Intensity → Small change in Faulty Value

Page 13: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

13

Clk

Output-bit1

Output-bit2

Output-bit3

Output-bit4

Length of Propagation delay for each output bit

Combinational Logic

ou

tpu

t

inp

ut 4 4

Clk

A Fault Mechanism

• Setup Time Violation:

Page 14: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

14

Clk

Output-bit1

Output-bit2

Output-bit3

Output-bit4

Length of Propagation delay for each output bit

Combinational Logic

ou

tpu

t

inp

ut 4 4

Clk

• Setup Time Violation:

A Fault Mechanism (cont.)

Page 15: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

15

Clk

Output-bit1

Output-bit2

Output-bit3

Output-bit4

Length of Propagation delay for each output bit

Combinational Logic

ou

tpu

t

inp

ut 4 4

Clk

• Setup Time Violation:

A Fault Mechanism (cont.)

Page 16: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

16

Page 17: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Differential Fault Intensity Analysis

• Differential Fault Intensity Analysis (DFIA):• Combines fault injection and DPA principles

• Induces biased faults by varying the fault intensity

• Applies a hypothesis test with biased faults

• Uses biased faults as the source of leakage

17

Page 18: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DFIA – Biased Fault Injection

• Step 1: Biased Fault Injection• Apply Q different fault intensities (f1,…,Q)

• Induce biased faults (S’1,…,Q)

• Collect faulty ciphertexts (C’1,…,Q)

18

Page 19: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DFIA – Hypothesis Test

• Step 2: Hypothesis Test with Biased Faults

19

Given: C’ and a KNOWN fault bias fFind: Most likely key nibble 𝐾

For all 𝐾, find 𝑆 = 𝑆𝐵𝑂𝑋−1(𝐶′⨁ 𝐾)Accumulate 𝜌 𝐾 = 𝐻𝐷( 𝑆)

Select K = argmin 𝜌

Page 20: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DFIA – Hypothesis Test Example

20

Ham

min

g D

ista

nce

Key Guess

• Step 2: Example for PRESENT

Possible Key Values:{0,2,4,7,9,10,13,15}

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

HD(S'1, S'2)

Page 21: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

HD(S'1, S'2) HD(S'2, S'3)

DFIA – Hypothesis Test Example (cont.)

21

Ham

min

g D

ista

nce

Key Guess

• Step 2: Example for PRESENT

Possible Key Values:{9,10,15}

Page 22: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

0

1

2

3

4

5

6

7

8

9

10

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

HD(S'1, S'2) HD(S'2, S'3) HD(S'3, S'4)

DFIA – Hypothesis Test Example (cont.)

22

Ham

min

g D

ista

nce

Key Guess

• Step 2: Example for PRESENT

Possible Key Values:{10}

Page 23: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DFIA – Results

23

• Nibble-serial and Round-serial Implementations:• Verilog RTL codes

• Gate-level netlists for an Altera Cyclone IV FPGA

• Biased Fault Injection:• Clock Glitches

• Gate-level (post-place-and-route) simulation

Page 24: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

DFIA – Results (cont.)

• PRESENT (and LED): • Step size (resolution): 100ps

24

# of Fault Intensity Levels(Q) # of Glitched Clock Cycles

Nibble-Serial Round-Serial Nibble-Serial Round-Serial

PRESENT-80 10 12 10×16=160 12×1=12

PRESENT-128 16 18 16×16=256 18×1=18

DFIA is FEASIBLE on PRESENT (and LED)

Page 25: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

25

Page 26: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

0

2

4

6

8

10

12

14

16

18

0 20 50 100 150 200 250 300 350 400 450 500

Using 1 Plaintext

Fault Injection Resolution - Problem

• Does DFIA work with low-resolution fault injection equipment?

• Resolution: Minimum fault intensity step size

• Some nibbles of the key cannot be fully retrieved if we use 1 plaintext.

26

PRESENT Round-Serial

Fault Injection Resolution (ps)

Nu

mb

er o

f U

nkn

ow

n N

ibb

les

Page 27: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

0

2

4

6

8

10

12

0 20 50 100 150 200 250 300 350 400 450 500

Using 50 Plaintexts

50 PTs

• DFIA still works with low-resolution fault injection equipment:

• Solution:

• Repeat DFIA steps for different plaintexts {𝑃1, 𝑃2, … , 𝑃𝑚} until finding a unique key

27

PRESENT Round-Serial

Fault Injection Resolution (ps)

Nu

mb

er o

f U

nkn

ow

n N

ibb

les

Fault Injection Resolution - Solution

Page 28: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

28

Page 29: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

• Biased-Fault-Based Fault Analysis:• Non-Uniform Faulty Value Analysis (NUFVA):

[Fuhr et al. FDTC’13, De Santis et al. LightSec’14, and Li et al. FPS’13]

• Non-Uniform Error Value Analysis (NUEVA): [Lashermes et al. FDTC’12]

29

Related Work – Biased Fault Definitions

NUEVANUFVA

Page 30: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Related Work – DFIA vs. NUFVA, NUEVA

• DFIA does not make any assumptions on the biased value of faulty states or ciphertexts.

• DFIA provides a cheap and general methodology to control the induced faults.

30

Page 31: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Outline

1. Fault Attack Requirements

2. Biased Faults

3. Exploiting Biased Faults: • Differential Fault Intensity Analysis (DFIA)

• Results for PRESENT

4. Fault Injection Resolution and DFIA

5. Related Work

6. Conclusion

31

Page 32: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Conclusion

• DFIA provides• a feasible (cheap, general) biased fault model

• a DPA-like fault analysis methodology

• DFIA is feasible on LED and PRESENT.

• DFIA still works with lower-capability fault injection equipment.

32

Page 33: DIFFERENTIAL FAULT INTENSITY ANALYSIS fileDIFFERENTIAL FAULT INTENSITY ANALYSIS on PRESENT and LED Block Ciphers This research was supported through NSF Grant 1441710, Grant 1115839,

Thank you!

33