sifa exploiting ineffective fault inductions on symmetric
play

SIFA: Exploiting Ineffective Fault Inductions on Symmetric - PowerPoint PPT Presentation

SIFA: Exploiting Ineffective Fault Inductions on Symmetric Cryptography Christoph Dobraunig 1 , Maria Eichlseder 1 , Thomas Korak 2 , Stefan Mangard 1 , Florian Mendel 2 , Robert Primas 1 1 Graz University of Technology, Austria


  1. SIFA: Exploiting Ineffective Fault Inductions on Symmetric Cryptography Christoph Dobraunig 1 , Maria Eichlseder 1 , Thomas Korak 2 , Stefan Mangard 1 , Florian Mendel 2 , Robert Primas 1 1 Graz University of Technology, Austria first.last@iaik.tugraz.at 2 Infineon Technologies AG, Germany first.last@infineon.com

  2. Outlook We present fault attacks that are ... • Hard to prevent • Defy detection, any degree of redundancy • Defy infection • (Defy masking) • Versatile • Many possible fault locations/effects • Applicable to many symmetric schemes • Evaluated on various platforms 1

  3. Outlook We present fault attacks that are ... • Hard to prevent • Defy detection, any degree of redundancy • Defy infection • (Defy masking) • Versatile • Many possible fault locations/effects • Applicable to many symmetric schemes • Evaluated on various platforms 1

  4. Outlook We present fault attacks that are ... • Hard to prevent • Defy detection, any degree of redundancy • Defy infection • (Defy masking) • Versatile • Many possible fault locations/effects • Applicable to many symmetric schemes • Evaluated on various platforms 1

  5. Fault Attacks • Get device access: PT • Set plaintexts • Observe ciphertexts • Cause (partially) erroneous computation ENC • Observe faulty and correct ciphertext • Determine correct sub key guesses by verifying output pairs ⇒ Differential Fault Attack (DFA) CT 2

  6. Fault Attacks • Get device access: PT • Set plaintexts • Observe ciphertexts • Cause (partially) erroneous computation ENC • Observe faulty and correct ciphertext • Determine correct sub key guesses by verifying output pairs ⇒ Differential Fault Attack (DFA) CT* 2

  7. Fault Attacks • Get device access: PT • Set plaintexts • Observe ciphertexts • Cause (partially) erroneous computation ENC ENC • Observe faulty and correct ciphertext • Determine correct sub key guesses by verifying output pairs ⇒ Differential Fault Attack (DFA) CT* CT 2

  8. Fault Attacks • Get device access: • Set plaintexts • Observe ciphertexts CT* CT • Cause (partially) erroneous computation • Observe faulty and correct ciphertext • Determine correct sub key guesses by SUB KEY VERIFY verifying output pairs ⇒ Differential Fault Attack (DFA) 2

  9. Fault Attacks • Get device access: • Set plaintexts • Observe ciphertexts CT* CT • Cause (partially) erroneous computation • Observe faulty and correct ciphertext • Determine correct sub key guesses by SUB KEY VERIFY verifying output pairs ⇒ Differential Fault Attack (DFA) 2

  10. Fault Countermeasures - Detection PT • Use redundancy to detect faults ENC-DETECT ENC ENC • Fault detected → No ciphertext • 2 identical faults necessary for attack → More redundancy, Enc-Dec, masking, etc... CT CT CT 3

  11. Fault Countermeasures - Detection PT • Use redundancy to detect faults ENC-DETECT ENC ENC • Fault detected → No ciphertext • 2 identical faults necessary for attack → More redundancy, Enc-Dec, masking, etc... CT* CT ... 3

  12. Fault Countermeasures - Detection PT • Use redundancy to detect faults ENC-DETECT ENC ENC • Fault detected → No ciphertext • 2 identical faults necessary for attack → More redundancy, Enc-Dec, masking, etc... CT* CT* CT* 3

  13. Fault Countermeasures - Detection PT • Use redundancy to detect faults ENC-DETECT ENC ENC • Fault detected → No ciphertext • 2 identical faults necessary for attack → More redundancy, Enc-Dec, masking, etc... CT* CT* CT* 3

  14. Fault Countermeasures - Infection PT • Use redundancy, interleaved computation and dummy rounds ENC-INFECT • Faults are amplified s.t. ciphertext is not ENC ENC ENC related to the key anymore • Key recovery not possible • Attacks still possible but hard... CT 4

  15. Fault Countermeasures - Infection PT • Use redundancy, interleaved computation and dummy rounds ENC-INFECT • Faults are amplified s.t. ciphertext is not ENC ENC ENC related to the key anymore • Key recovery not possible • Attacks still possible but hard... %&$ 4

  16. Fault Countermeasures - Infection • Use redundancy, interleaved computation and %&$ CT dummy rounds • Faults are amplified s.t. ciphertext is not related to the key anymore SUB KEY • Key recovery not possible VERIFY • Attacks still possible but hard... 4

  17. Fault Countermeasures - Infection • Use redundancy, interleaved computation and %&$ CT dummy rounds • Faults are amplified s.t. ciphertext is not related to the key anymore SUB KEY • Key recovery not possible VERIFY • Attacks still possible but hard... 4

  18. Statistical Ineffective Fault Attacks (SIFA) Combines ... • Ineffective Fault Attacks (IFA) by Clavier et al. [Cla07] + Exploits only correct ciphertexts (similar to safe error attacks) − Requires precise faults with known effect • Statistical Fault Analysis (SFA) by Fuhr et al. [FJLT13] + Any fault, even if effect is unknown − Mitigated by detection/infection ⇒ Statistical Ineffective Fault Attacks (SIFA) + Exploits only correct ciphertexts + Any fault, even if effect is unknown 5

  19. Statistical Ineffective Fault Attacks (SIFA) Combines ... • Ineffective Fault Attacks (IFA) by Clavier et al. [Cla07] + Exploits only correct ciphertexts (similar to safe error attacks) − Requires precise faults with known effect • Statistical Fault Analysis (SFA) by Fuhr et al. [FJLT13] + Any fault, even if effect is unknown − Mitigated by detection/infection ⇒ Statistical Ineffective Fault Attacks (SIFA) + Exploits only correct ciphertexts + Any fault, even if effect is unknown 5

  20. Statistical Ineffective Fault Attacks (SIFA) Combines ... • Ineffective Fault Attacks (IFA) by Clavier et al. [Cla07] + Exploits only correct ciphertexts (similar to safe error attacks) − Requires precise faults with known effect • Statistical Fault Analysis (SFA) by Fuhr et al. [FJLT13] + Any fault, even if effect is unknown − Mitigated by detection/infection ⇒ Statistical Ineffective Fault Attacks (SIFA) + Exploits only correct ciphertexts + Any fault, even if effect is unknown 5

  21. SIFA on AES - Fault Injection Phase Example for AES... • Over multiple encryptions, state bytes are : ROUND 10 ROUND 9 ROUND 8 SHIFT ROWS uniformly distributed MIX COLUMNS • Fault somewhere between MC in round 8-9 KEY ADD 8 SUB BYTES • Goal is some non-uniform distribution SHIFT ROWS • Stuck-at fault, random fault, skips, flips... MIX COLUMNS • Fault Granularity: 1 bit → a few bytes KEY ADD 9 • Works even for ineffective faults SUB BYTES SHIFT ROWS • i.e. a fault was injected but the computation KEY ADD 10 is still correct • Attacker gets “access to subset of ciphertexts” Ciphertext 6

  22. SIFA on AES - Fault Injection Phase Example for AES... • Over multiple encryptions, state bytes are : ROUND 10 ROUND 9 ROUND 8 SHIFT ROWS uniformly distributed MIX COLUMNS • Fault somewhere between MC in round 8-9 KEY ADD 8 SUB BYTES • Goal is some non-uniform distribution SHIFT ROWS • Stuck-at fault, random fault, skips, flips... MIX COLUMNS • Fault Granularity: 1 bit → a few bytes KEY ADD 9 • Works even for ineffective faults SUB BYTES SHIFT ROWS • i.e. a fault was injected but the computation KEY ADD 10 is still correct • Attacker gets “access to subset of ciphertexts” Ciphertext Ciphertext Ciphertext Ciphertext Ciphertext 6

  23. SIFA on AES - Fault Injection Phase Example for AES... • Over multiple encryptions, state bytes are : ROUND 10 ROUND 9 ROUND 8 SHIFT ROWS uniformly distributed MIX COLUMNS • Fault somewhere between MC in round 8-9 KEY ADD 8 SUB BYTES • Goal is some non-uniform distribution SHIFT ROWS • Stuck-at fault, random fault, skips, flips... MIX COLUMNS • Fault Granularity: 1 bit → a few bytes KEY ADD 9 • Works even for ineffective faults SUB BYTES SHIFT ROWS • i.e. a fault was injected but the computation KEY ADD 10 is still correct • Attacker gets “access to subset of ciphertexts” Ciphertext Ciphertext Ciphertext Ciphertext Ciphertext 6

  24. SIFA on AES - Fault Injection Phase Example for AES... • Over multiple encryptions, state bytes are : ROUND 10 ROUND 9 ROUND 8 SHIFT ROWS uniformly distributed MIX COLUMNS • Fault somewhere between MC in round 8-9 KEY ADD 8 SUB BYTES • Goal is some non-uniform distribution SHIFT ROWS • Stuck-at fault, random fault, skips, flips... MIX COLUMNS • Fault Granularity: 1 bit → a few bytes KEY ADD 9 • Works even for ineffective faults SUB BYTES SHIFT ROWS • i.e. a fault was injected but the computation KEY ADD 10 is still correct • Attacker gets “access to subset of ciphertexts” Ciphertext Ciphertext Ciphertext Ciphertext Ciphertext 6

  25. SIFA on AES - Fault Injection Phase Example for AES... • Over multiple encryptions, state bytes are : ROUND 10 ROUND 9 ROUND 8 SHIFT ROWS uniformly distributed MIX COLUMNS • Fault somewhere between MC in round 8-9 KEY ADD 8 SUB BYTES • Goal is some non-uniform distribution SHIFT ROWS • Stuck-at fault, random fault, skips, flips... MIX COLUMNS • Fault Granularity: 1 bit → a few bytes KEY ADD 9 • Works even for ineffective faults SUB BYTES SHIFT ROWS • i.e. a fault was injected but the computation KEY ADD 10 is still correct • Attacker gets “access to subset of ciphertexts” Ciphertext Ciphertext Ciphertext Ciphertext Ciphertext 6

Recommend


More recommend