Fault Attacks on Embedded Software: Threats, Design, and Mitigation

Size: px
Start display at page:

Download "Fault Attacks on Embedded Software: Threats, Design, and Mitigation"

Transcription

1 Fault Attacks on Embedded Software: Threats, Design, and Mitigation Patrick Schaumont Professor Bradley Department of ECE Virginia Tech Acknowledgements FAME Project Team Supported through National Science Foundation Semiconductor Research Corporation 1

2 Objective The black box model Fault Injection input (Secure) SW???? output correct behavior output faulty behavior Fault Analysis 2

3 Objective The black box model Fault Injection input The grey box model (Secure) SW???? output correct behavior output faulty behavior Fault Analysis 3

4 Objective The black box model Fault Injection input (Secure) SW The grey box model (Secure) SW Fault Injection Microprocessor Manifestation Propagation output output Mem Hierarchy Observation Exploitation correct behavior faulty behavior Fault Analysis 4

5 Objective The black box model Fault Injection input (Secure) SW The grey box model (Secure) SW Fault Injection Microprocessor Manifestation Propagation output correct behavior Fault Analysis output faulty behavior Mem Hierarchy Observation Exploitation Make a systematic review of the fault attack process on embedded software 5

6 Outline 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors 6

7 Attacks on Embedded Software I/O MEM CPU Embedded Software assumes execution is correct (This presentation) Incorrect execution as starting point for attack Privilege Escalation Information Leakage 7

8 Privilege Escalation & Information Leakage Privilege Escalation = Adversarial Control of Critical Decisions if (! access_allowed ) abort( ); Information Leakage = Disclosure of Secret Data & Dependencies r1 if (key_bit) out = f(r1); else out = f(r0); key_bit leaks through out 8

9 Triggering Incorrect Execution I/O MEM CPU Attacker Attack Target Security Failure Input/Output Attacker Input/Output Data Software Bugs Memory Attacker Application/Task Image Lack of Mem Isolation Hardware Attacker Instruction Opcode Modification Instruction Execution Micro-Architecture Circuit Timing, Threshold Levels Environment Operating Conditions this talk 9

10 Outline 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors 10

11 Anatomy of a Fault Attack 1. Fault Attack Design Fault Target and Fault Model Fault Injection Method Fault Exploitation Method 2. Fault Attack Implementation Fault Injection Fault Manifestation Fault Propagation Fault Observation Fault Exploitation Defined by Security (Attack) Objective Constrained by Implementation 11

12 Anatomy of a Fault Attack electrical transient Physical Level Fault Injection 12

13 Anatomy of a Fault Attack faulty bits Circuit Level Fault Manifestation electrical transient Physical Level Fault Injection 13

14 Anatomy of a Fault Attack Hardware faulty micro op Micro Architecture Level I Fetch Decode Control Instruction Memory Boot ROM D Fetch Execute Datapath Status Regs Register File Data Mem Store Fault Propagation faulty bits Circuit Level Fault Manifestation electrical transient Physical Level Fault Injection 14

15 Anatomy of a Fault Attack Application OS Firmware int verify(s,p){ int r; if (S = P) r = 1; else r = 0; return r } P S 1 S,P r 5 r Faulty Control Flow and/or Data Flow Fault Observation Software Hardware faulty instruction Instruction Set Architecture faulty micro op Micro Architecture Level I Fetch Decode Control Instruction Memory Boot ROM D Fetch Execute Datapath Status Regs Register File Data Mem Store Fault Propagation faulty bits Circuit Level Fault Manifestation electrical transient Physical Level Fault Injection 15

16 Anatomy of a Fault Attack Application OS Firmware int verify(s,p){ int r; if (S = P) r = 1; else r = 0; return r } P S 1 S,P r 5 r Faulty Control Flow and/or Data Flow Fault Exploitation Fault Observation Software Hardware faulty instruction Instruction Set Architecture faulty micro op Micro Architecture Level I Fetch Decode Control Instruction Memory Boot ROM D Fetch Execute Datapath Status Regs Register File Data Mem Store Fault Propagation faulty bits Circuit Level Fault Manifestation electrical transient Physical Level Fault Injection 16

17 Outline 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors 17

18 Fault injection Control Hardware controlled Fault Injection Software controlled Fault Injection Fault Injection Hardware Software Tasks Fault Control Injector CTL/Injection Victim Timing Physical Stress Physical Stress I/O MEM CPU I/O MEM CPU 18

19 Timing Vdd Temp logic clk nominal clock period critical path + slack 19

20 Artificial Timing Faults Vdd Temp logic clk Overclocking Clock Glitching shortened clock period critical path Timing Violation Underfeeding Voltage Glitching Overheating slack nominal clock period increased critical path slack 20

21 Noise Injection EMFI clk Area A logic E Faraday s Law E = A. db dt Field B di dt 21

22 Noise Injection EMFI clk Area A logic E Faraday s Law E = A. db dt Field B di dt 22

23 Noise Injection Laser Faults Glitches Single Event Upset on Vdd Laser Beam 0 1 off Vss Photocurrent Flip Laser Beam 23

24 Software Controlled Faults DVFS Interface (CLKSCREW) Programming Interface PLL PMIC f1 f2 V1 V2 Core1 Core2 software controlled timing violation by modified (V2,f2) Memory Disturbance software controlled leak repeated word access row 0 row 1 row 2 word bit row buffer 24

25 Fault Injection Portfolio Fault Injection Spatial Precision Temporal Precision Cost Intensity Overclocking Low Low Low Clock f Clock Glitching Low High Low Glitch Width Underfeeding Low Low Low Voltage Voltage Glitching Low High Low Glitch V/W Overheating Low Low Low Temperature Light Pulse Medium Medium Low Pulse W/Enrgy Laser Pulse High High High Pulse W/Enrgy EM Pulse Medium High High Probe Current DVFS Interface Low Medium Zero V/f Memory Disturbance High Medium Zero Disturbance f 25

26 Outline 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors 26

27 Processor Micro architecture Programmer s Model Instruction Semantics & Syntax Memory Model Interrupt/Exception Interface Instruction Set Architecture Micro Architecture Instruction Memory Control Fetch Store Decode Datapath Load Data Mem RegFile Flags 27

28 Processor Micro architecture Faults Programmer s Model Instruction Semantics & Syntax Memory Model Interrupt/Exception Interface Instruction Set Architecture Faulty Instruction Propagation Micro Architecture Store Instruction Memory Fetch Control Decode Datapath Load Data Mem RegFile Flags Manifestation Fault Location Fault Effect Fault Duration Fault Size 28

29 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Operand fetch Execute Store Data memory Register File Status Flags 29

30 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Function Different instruction Operand Different source/dest Immediate Different value Operand fetch Execute Store Data memory Register File Status Flags 30

31 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Function Different instruction Operand Different source/dest Immediate Different value Operand fetch Execute Store Data memory Register File Status Flags Assume a one bit fault on ld [%i1 + 4], %g1 Resulting fault space includes 21 ld variants with different load address 6 ld variants with a different target 1 add variant 1 store variant 1 call variant 2 unknown variants (trap) 31

32 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Function Different instruction Operand Different source/dest Immediate Different value Operand fetch Execute Store Data memory Register File Status Flags Assume a one bit fault on add %l2, %l7, %g2 Resulting fault space includes 12 add variants with a different source 9 unknown variants (trap) 5 add variants with a different target 3 arithmetic variants (sub, addx, addcc) 2 logical variants (or, and) 1 ld variant 32

33 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Function Different instruction Operand Different source/dest Immediate Different value Operand fetch Execute Store Data memory Register File Status Flags Assume a one bit fault on be 0x Resulting fault space includes 23 be variants with a different target 5 branch targets with different condition 2 unknown variants (trap) 1 call variant 1 add variant 33

34 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Modifies the PC, can modify control flow Operand fetch Execute Store Data memory Register File Status Flags 34

35 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Operand fetch Execute Store Data memory Register File Status Flags Modifies the value of the source operands ld [r1 + r2], r3 faulty r3 cmp r1, r2 faulty flags be dest no effect 35

36 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Operand fetch Execute Store Data memory Register File Status Flags Modifies the value of the computation ld [r1 + r2], r3 faulty r3 cmp r1, r2 faulty flags be dest faulty jump address 36

37 Processor Micro architecture Faults Micro architecture Element Instruction memory Instruction fetch Instruction decode Operand fetch Execute Store Data memory Register File Status Flags Fault effects on a microarchitecture are highly nonlinear + For a given fault effect, analysis is possible 37

38 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors Intermezzo: Fault Exploitation Outline Cryptanalysis Fault Aided SCA Fault Enabled Logical Attacks DFA Biased Fault Analysis Safe Error Analysis 38

39 Bit flip Attack on AES Last round of the Advanced Encryption Standard Secret state v 9 th round SubBytes S S S S S S S S S S S S S S S S ShiftRows AddRoundKey Ciphertext C

40 Bit flip Attack on AES Fault Model: Bit flip on a secret state bit SubBytes S S S S S S S S S S S S S S S S ShiftRows AddRoundKey A bit flip results in a faulty ciphertext byte

41 Bit flip Attack on AES Fault Differential c = sbox(v) k c' = sbox(v') k Hence = c c' = sbox(v) sbox(v') Fault Analysis Reconstruct v by analyzing Once we know v, we find the last round key as: k = sbox(v) c c c' v, v' S 32 bit flip faults in round 10 disclose entire key

42 Classic Differential Fault Analysis Cryptographic Algorithm Fault Model Random Byte Random Bit Chosen Bit DFA C, C, C,.. K [TM 2010] Single random byte fault at 8 th round of AES-128: Key [SL+ 2012] Two seq. byte fault at 9 th, 10 th round of AES-192: Key Current DFA methods are optimal IF the fault model can be realized 42

43 Implementations and Actual Faults Cryptographic Algorithm Fault Model Random Byte Random Bit Chosen Bit DFA C, C, C,.. K Implementation Fault Injection Cryptographic Architecture Fault 43

44 Biased Fault Attacks Cryptographic Algorithm Fault Model Random Byte Random Bit Chosen Bit DFA C, C, C,.. K Implementation Fault Injection Variable Fault Intensity Cryptographic Architecture Fault Fault Bias 1-bit, 2-bit,.. FSA [2010] NUEVA [2012] NUFVA [2013] DFIA [2014] DERA [2015]... 44

45 Biased Faults as a Side Channel S Biased Fault Injection 8 SBOX correct S faulty S (8-dimensional space) RK C C 45

46 Biased Faults as a Side Channel S Biased Fault Injection 8 Under Correct Key Hypothesis correct S faulty S Under Wrong Key Hypothesis 4 SBOX RK SBOX -1 (C RK hyp ) SBOX -1 (C RK hyp ) C C C 46

47 Differential Fault Intensity Analysis RK S Biased Fault Injection 8 SBOX Differential Fault Intensity Analysis 1. Inject Faults at different Fault Intensities HW(S S ) < 2. Collect Fault Ciphertext C 3. For all Key hypothesis RK hyp compute S i,rk = SBOX 1 (C RK hyp ) 4. Select RK for which RK = ArgMin( i j HD(S i,rk, S j,rk )) C 47

48 DFIA versus DFA DFA DFIA makes a precise assumption on the injected fault needs a system of equations to resolve key guess makes an approximate model of the injected fault uses max likelihood testing to resolve key guess DFIA relaxes the fault model requirements and is more suitable when fault injection is hard to control 48

49 Outline 1. Introducing the Fault Attack 2. Anatomy of a Fault Attack 3. Fault Injection Techniques 4. Manifestation and Propagation in the ISA 5. FAME A Mitigation Technique for Microprocessors 49

50 Mitigating Fault Attacks on Embedded SW Redundant Execution in SW Sensors and Checkpoint 50

51 Mitigating Fault Attacks on Embedded SW Detection Strategy 1: Redundant Execution in SW Verify redundant copies Strategy 2: HW Sensors and Checkpoint Dedicated HW sensor (Timing, EM, Voltage,..) Response Correct fault using redundancy Recover from checkpoint Overhead Redundant execution Checkpoint storage Risk Redundant Fault False pos/neg on sensor

52 Mitigating Fault Attacks on Embedded SW Detection Strategy 1: Redundant Execution in SW Verify redundant copies FAME Fault attack Aware Microprocessor Extension Strategy 2: HW Sensors and Checkpoint Dedicated HW sensor (Timing, EM, Voltage,..) Response Correct fault using redundancy Recover from checkpoint Overhead Redundant execution Checkpoint storage Risk Redundant Fault False pos/neg on sensor

53 FAME Operation [HASP 16] Protected Software Application Software 3. transfer the control to the trap handler Secure Trap Handler (STH) 1. fault injection 4. access and restore fault free checkpoint Vdd clk Fault Detection Unit (FDU) 2. alarm Fault Control Unit (FCU) 3. fault recovery info Fault Response Registers (FRR) Baseline Processor FAME Processor Fault attack Aware Microprocessor Extensions 53

54 All digital Fault Sensors in FAME Glitch Timing Sensor configurable delay stage (20x) c[i] T flop q d D flop q clk clk alarm d D flop q In situ EM Sensor clk 54

55 Single cycle Checkpointing Hardware Fault Response Registers (FRR) for critical processor state, including PC, PSR and last two pipeline stages 55

56 FAME Chip 1 Block Diagram FAME Core Functionality FAME ASIC I$ (1KB) D$ (2KB) FAME Core APB AHB LEON3 Core (w FRR) Reset Management Sensor (FDU) Recovery (FCU) 56

57 FAME Chip 1 Block Diagram Download and Debug Software debugger FAME ASIC I$ (1KB) D$ (2KB) FAME Core Debug Support Unit APB AHB Debug UART2 LEON3 Core (w FRR) Debug UART1 Reset Management Sensor (FDU) Recovery (FCU) SRAM 64KB ROM 1KB 57

58 FAME Chip 1 Block Diagram User Applications debugger user I/O FAME ASIC I$ (1KB) D$ (2KB) FAME Core Debug Support Unit APB AHB Debug UART2 GPIO LEON3 Core (w FRR) Debug UART1 User UART Reset Management Sensor (FDU) Recovery (FCU) SRAM 64KB Interrupt Controller ROM 1KB 58

59 FAME Chip 1 Block Diagram fault injection controller Fault Injection and Fault Diagnosis debugger user I/O FAME ASIC I$ (1KB) D$ (2KB) FAME Core Debug Support Unit APB AHB Debug UART2 GPIO Fault injector (FPGA) Reset Management Observe Trigger Sensor (FDU) LEON3 Core (w FRR) Recovery (FCU) Debug UART1 SRAM 64KB User UART Interrupt Controller ROM 1KB 59

60 FAME Chip 1 Block Diagram fault injection controller debugger user I/O FAME ASIC I$ (1KB) D$ (2KB) FAME Core Debug Support Unit APB AHB Debug UART2 GPIO Fault injector (FPGA) Reset Management Observe Trigger Sensor (FDU) LEON3 Core (w FRR) Recovery (FCU) Debug UART1 SRAM 64KB User UART Interrupt Controller ROM 1KB 60

61 FAME Chip 1 Micrograph 180nm 6LM TSMC 25 mm2 die area Active area LEON3: 6.217mm2 w FAME: mm2 w FAME+Diag: mm2 FAME extensions overhead 1.35% (of active area) 80 MHz clock 54 I/O Clock, reset 8 I/O, 16 Core Power 3x UART 4 GPIO 4 Trigger Sensor alarm monitor Scan and test pins 108-pin PGA package 61

62 FAME Chip 1 Test PCB Debug/User USB-UART Power Measurement Power/ Clock Glitcher FPGA Interface: GPIO, Trigger, Scan, Alarm SAKURA-G FPGA w glitch generator 62

63 FAME Chip 1 Test Setup FAME Application Monitor Glitch Control Software 63

64 FAME Chip 1 Fault Sensor configurable delay stage (20x) c[i] T flop q d D flop q clk clk alarm d D flop q clk 64

65 Secure Trap Handler Development ptc--; falls through 65

66 Traditional Redundancy Based Design int ptc = 3; int ptc = 3; //Pin Try Counter char devicepin[5] = ; Algorithm-level redundancy Instruction-level redundancy int VerifyPin(userPIN) { ptc--; if (ptc > 0) if (ptc > 0) if (Cmp(userPIN,devicePIN)) if (Cmp(userPIN,devicePIN)) result = 1; ptc++; else result = 0; else result = 0; else result = 0; else result = 0; return result; } hardened if 66

67 Traditional Redundancy Based Design int ptc = 3; int ptc = 3; //Pin Try Counter char devicepin[5] = ; Algorithm-level redundancy Instruction-level redundancy int VerifyPin(userPIN) { ptc--; if (ptc > 0) if (ptc > 0) if (Cmp(userPIN,devicePIN)) if (Cmp(userPIN,devicePIN)) result = 1; ptc++; } else result = 0; else result = 0; else result = 0; else result = 0; return result; Disadvantage - performance overhead - Fails under redundant fault injection 67

68 FAME Based Design int ptc = 3; //Pin Try Counter char devicepin[5] = ; int nofault = 1; int VerifyPin(userPIN) { if (ptc > 0) if (Cmp(userPIN,devicePIN)) result = nofault; else result = 0; ptc--; else result = 0; return result; } SecureTrapHandler() { if (ptc > 0) ptc--; nofault = 0; } No redundancy needed: FAME FRR Hardware Checkpoint prevents fault propagation No overhead without fault Secure trap handler enables user-defined fault response 68

69 EMFI on FAME Clock Tree Leaves Clock Tree Root FAME Flip flop [DAC2018] 69

70 EMFI on FAME Global Effect of EMFI Injection at clock tree root Local Effect of EMFI Injection at clock tree leaves 146 Faulty Flip Flop 24 Faulty Flip Flop [DAC2018] 70

71 References 1. B. Yuce, M. Witteman, P. Schaumont, Fault Attacks on Secure Embedded Software: Threats, Design and Evaluation, Journal of Hardware and Systems Security, (preprint). 2. B. Yuce, C. Deshpande, M. Ghodrati, A. Bendre, L. Nazhandali, P. Schaumont, "A Secure Exception Mode for Fault Attack Resistant Processing" IEEE Transactions on Dependable and Secure Computing, (preprint). 3. M. Ghodrati, B. Yuce, S. Gujar, C. Deshpande, L. Nazhandali, P. Schaumont, Inducing Local Timing Fault through EM Injection, DAC FAME Fault Awareness using Microprocessor Enhancements. 71

72 Thank You! Questions? Patrick Schaumont 72

Electromagnetic Transient Fault Injection on AES

Electromagnetic Transient Fault Injection on AES Electromagnetic Transient Fault Injection on AES Amine DEHBAOUI ¹, Jean-Max DUTERTRE ², Bruno ROBISSON ¹, Assia TRIA ¹ Fault Diagnosis and Tolerance in Cryptography Leuven, Belgium Sunday, September 9,

More information

Fault Attacks on Cryptosystems: Novel Threat Models, Countermeasures and Evaluation Metrics

Fault Attacks on Cryptosystems: Novel Threat Models, Countermeasures and Evaluation Metrics Fault Attacks on Cryptosystems: Novel Threat Models, Countermeasures and Evaluation Metrics Nahid Farhady Ghalaty Dissertation submitted to the Faculty of the Virginia Polytechnic Institute and State University

More information

Fault Injection Attacks and Countermeasures

Fault Injection Attacks and Countermeasures Fault Injection Attacks and Countermeasures Brněnské bezpečnostní setkávání, FEKT VUT Brno Jakub Breier 28 March 2018 Physical Analysis and Cryptographic Engineering Nanyang Technological University Singapore

More information

FPGAhammer: Remote Voltage Fault Attacks on Shared FPGAs, suitable for DFA on AES

FPGAhammer: Remote Voltage Fault Attacks on Shared FPGAs, suitable for DFA on AES , suitable for DFA on AES Jonas Krautter, Dennis R.E. Gnad, Mehdi B. Tahoori 10.09.2018 INSTITUTE OF COMPUTER ENGINEERING CHAIR OF DEPENDABLE NANO COMPUTING KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft

More information

Fault-based Cryptanalysis on Block Ciphers

Fault-based Cryptanalysis on Block Ciphers LIRMM / university of Montpellier COSADE 2017, Thursday April 13 2017, Paris, France 1/ 62 Outline 1 2 Fault Model Safe Error Attack DFA Statistical Fault Attack 3 Analog Level Digital Level Application

More information

Secure Smartcard Design against Laser Fault Injection. FDTC 2007, September 10 th Odile DEROUET

Secure Smartcard Design against Laser Fault Injection. FDTC 2007, September 10 th Odile DEROUET Secure Smartcard Design against Laser Fault Injection FDTC 2007, September 10 th Odile DEROUET Agenda Fault Attacks on Smartcard Laser Fault Injection Our experiment Background on secure hardware design

More information

PARAMETRIC TROJANS FOR FAULT-BASED ATTACKS ON CRYPTOGRAPHIC HARDWARE

PARAMETRIC TROJANS FOR FAULT-BASED ATTACKS ON CRYPTOGRAPHIC HARDWARE PARAMETRIC TROJANS FOR FAULT-BASED ATTACKS ON CRYPTOGRAPHIC HARDWARE Raghavan Kumar, University of Massachusetts Amherst Contributions by: Philipp Jovanovic, University of Passau Wayne P. Burleson, University

More information

HOST Differential Power Attacks ECE 525

HOST Differential Power Attacks ECE 525 Side-Channel Attacks Cryptographic algorithms assume that secret keys are utilized by implementations of the algorithm in a secure fashion, with access only allowed through the I/Os Unfortunately, cryptographic

More information

Using Error Detection Codes to detect fault attacks on Symmetric Key Ciphers

Using Error Detection Codes to detect fault attacks on Symmetric Key Ciphers Using Error Detection Codes to detect fault attacks on Symmetric Key Ciphers Israel Koren Department of Electrical and Computer Engineering Univ. of Massachusetts, Amherst, MA collaborating with Luca Breveglieri,

More information

SIDE CHANNEL ATTACKS AGAINST IOS CRYPTO LIBRARIES AND MORE DR. NAJWA AARAJ HACK IN THE BOX 13 APRIL 2017

SIDE CHANNEL ATTACKS AGAINST IOS CRYPTO LIBRARIES AND MORE DR. NAJWA AARAJ HACK IN THE BOX 13 APRIL 2017 SIDE CHANNEL ATTACKS AGAINST IOS CRYPTO LIBRARIES AND MORE DR. NAJWA AARAJ HACK IN THE BOX 13 APRIL 2017 WHAT WE DO What we do Robust and Efficient Cryptographic Protocols Research in Cryptography and

More information

Control unit. Input/output devices provide a means for us to make use of a computer system. Computer System. Computer.

Control unit. Input/output devices provide a means for us to make use of a computer system. Computer System. Computer. Lecture 6: I/O and Control I/O operations Control unit Microprogramming Zebo Peng, IDA, LiTH 1 Input/Output Devices Input/output devices provide a means for us to make use of a computer system. Computer

More information

How multi-fault injection. of smart cards. Marc Witteman Riscure. Session ID: RR-201 Session Classification: Advanced

How multi-fault injection. of smart cards. Marc Witteman Riscure. Session ID: RR-201 Session Classification: Advanced How multi-fault injection breaks Title the of Presentation security of smart cards Marc Witteman Riscure Session ID: RR-201 Session Classification: Advanced Imagine you could turn your BART EZ Rider fare

More information

Clock Glitch Fault Injection Attacks on an FPGA AES Implementation

Clock Glitch Fault Injection Attacks on an FPGA AES Implementation Journal of Electrotechnology, Electrical Engineering and Management (2017) Vol. 1, Number 1 Clausius Scientific Press, Canada Clock Glitch Fault Injection Attacks on an FPGA AES Implementation Yifei Qiao1,a,

More information

Synthesis of Fault-Attack Countermeasures for Cryptographic Circuits

Synthesis of Fault-Attack Countermeasures for Cryptographic Circuits Synthesis of Fault-Attack Countermeasures for Cryptographic Circuits Hassan Eldib, Meng Wu, and Chao Wang CAV, July 23, 2016 Cryptographic Algorithm: an example Plaintext Chip Ciphertext 0110 1001 1011

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS

CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS CS6303 Computer Architecture Regulation 2013 BE-Computer Science and Engineering III semester 2 MARKS UNIT-I OVERVIEW & INSTRUCTIONS 1. What are the eight great ideas in computer architecture? The eight

More information

Sho Endo1, Naofumi Homma1, Yu-ichi Hayashi1, Junko Takahashi2, Hitoshi Fuji2 and Takafumi Aoki1

Sho Endo1, Naofumi Homma1, Yu-ichi Hayashi1, Junko Takahashi2, Hitoshi Fuji2 and Takafumi Aoki1 April 15, 2014 COSADE2014 A Multiple-fault Injection Attack by Adaptiv e Timing Control under Black-box Conditi ons and a Countermeasure Sho Endo1, Naofumi Homma1, Yu-ichi Hayashi1, Junko Takahashi2, Hitoshi

More information

JUST ONE FAULT Persistent Fault Analysis on Block Ciphers

JUST ONE FAULT Persistent Fault Analysis on Block Ciphers JUST ONE FAULT Persistent Fault Analysis on Block Ciphers Shivam Bhasin Temasek Labs @ NTU ASK 2018, Kolkata, India 15 Nov 2018 Table of Contents 1. 2. 3. 4. Introduction to Fault Attacks Persistent Fault

More information

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design

CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design CS 152 Computer Architecture and Engineering Lecture 1 Single Cycle Design 2014-1-21 John Lazzaro (not a prof - John is always OK) TA: Eric Love www-inst.eecs.berkeley.edu/~cs152/ Play: 1 Today s lecture

More information

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5. DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6502- MICROPROCESSORS AND MICROCONTROLLERS UNIT I: 8085 PROCESSOR PART A 1. What is the need for ALE signal in

More information

Fault-Based Attack of RSA Authentication

Fault-Based Attack of RSA Authentication Fault-Based Attack of RSA Authentication, Valeria Bertacco and Todd Austin 1 Cryptography: Applications 2 Value of Cryptography $2.1 billions 1,300 employees $1.5 billions 4,000 employees $8.7 billions

More information

Multi-Stage Fault Attacks

Multi-Stage Fault Attacks Multi-Stage Fault Attacks Applications to the Block Cipher PRINCE Philipp Jovanovic Department of Informatics and Mathematics University of Passau March 27, 2013 Outline 1. Motivation 2. The PRINCE Block

More information

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com

More information

OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions

OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions 04/15/14 1 Introduction: Low Power Technology Process Hardware Architecture Software Multi VTH Low-power circuits Parallelism

More information

Chapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware

More information

ECE 250 / CPS 250 Computer Architecture. Processor Design Datapath and Control

ECE 250 / CPS 250 Computer Architecture. Processor Design Datapath and Control ECE 250 / CPS 250 Computer Architecture Processor Design Datapath and Control Benjamin Lee Slides based on those from Andrew Hilton (Duke), Alvy Lebeck (Duke) Benjamin Lee (Duke), and Amir Roth (Penn)

More information

Microprocessor Architecture

Microprocessor Architecture Microprocessor - 8085 Architecture 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration

More information

FAULT TOLERANT SYSTEMS

FAULT TOLERANT SYSTEMS FAULT TOLERANT SYSTEMS http://www.ecs.umass.edu/ece/koren/faulttolerantsystems Part 18 Chapter 7 Case Studies Part.18.1 Introduction Illustrate practical use of methods described previously Highlight fault-tolerance

More information

The embedded security challenge: Protecting bits at rest

The embedded security challenge: Protecting bits at rest The embedded security challenge: Protecting bits at rest Patrick Schaumont schaum@vt.edu Acknowledgements: Eric Simpson, Pengyuan Yu Secure Embedded Systems Group ECE Department Secret bits-at-rest Hi-Res

More information

Secure Design Methodology and The Tree of Trust

Secure Design Methodology and The Tree of Trust Secure Design Methodology and The Tree of Trust Secure Embedded Systems Group ECE Department Virginia Tech The new Cool: Reverse Engineering... Microsoft Zune (http://bunniestudios.com) Under the Hood

More information

Design methods and tools for side channel attack resistant circuits

Design methods and tools for side channel attack resistant circuits Design methods and tools for side channel attack resistant circuits Ingrid Verbauwhede ingrid.verbauwhede-at-esat.kuleuven.be K.U.Leuven, COSIC Computer Security and Industrial Cryptography www.esat.kuleuven.be/cosic

More information

Side channel attack: Power Analysis. Chujiao Ma, Z. Jerry Shi CSE, University of Connecticut

Side channel attack: Power Analysis. Chujiao Ma, Z. Jerry Shi CSE, University of Connecticut Side channel attack: Power Analysis Chujiao Ma, Z. Jerry Shi CSE, University of Connecticut Conventional Cryptanalysis Conventional cryptanalysis considers crypto systems as mathematical objects Assumptions:

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

WhoamI. Attacking WBC Implementations No con Name 2017

WhoamI. Attacking WBC Implementations No con Name 2017 Attacking WBC Implementations No con Name 2017 1 WHO I AM EDUCATION: Computer Science MSc in IT security COMPANY & ROLES: HCE Security Evaluator R&D Engineer WBC project Responsible of Android security

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing Announcements and Outline Check webct grades, make sure everything is there and is correct Pick up graded d homework at

More information

Fault Sensitivity Analysis

Fault Sensitivity Analysis Fault Sensitivity Analysis Yang Li, Kazuo Sakiyama, Shigeto Gomisawa, Kazuo Ohta The University of Electro-Communications liyang@ice.uec.ac.jp Toshinori Fukunaga, Junko Takahashi NTT Information Sharing

More information

Spectre and Meltdown. Clifford Wolf q/talk

Spectre and Meltdown. Clifford Wolf q/talk Spectre and Meltdown Clifford Wolf q/talk 2018-01-30 Spectre and Meltdown Spectre (CVE-2017-5753 and CVE-2017-5715) Is an architectural security bug that effects most modern processors with speculative

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

Fault injection attacks on cryptographic devices and countermeasures Part 1

Fault injection attacks on cryptographic devices and countermeasures Part 1 Fault injection attacks on cryptographic devices and countermeasures Part 1 Israel Koren Department of Electrical and Computer Engineering University of Massachusetts Amherst, MA Outline Introduction -

More information

SEE Tolerant Self-Calibrating Simple Fractional-N PLL

SEE Tolerant Self-Calibrating Simple Fractional-N PLL SEE Tolerant Self-Calibrating Simple Fractional-N PLL Robert L. Shuler, Avionic Systems Division, NASA Johnson Space Center, Houston, TX 77058 Li Chen, Department of Electrical Engineering, University

More information

Blog -

Blog - . Instruction Codes Every different processor type has its own design (different registers, buses, microoperations, machine instructions, etc) Modern processor is a very complex device It contains Many

More information

COMPUTER ORGANIZATION AND DESI

COMPUTER ORGANIZATION AND DESI COMPUTER ORGANIZATION AND DESIGN 5 Edition th The Hardware/Software Interface Chapter 4 The Processor 4.1 Introduction Introduction CPU performance factors Instruction count Determined by ISA and compiler

More information

Getting Started With the Stellaris EK-LM4F120XL LaunchPad Workshop. Version 1.05

Getting Started With the Stellaris EK-LM4F120XL LaunchPad Workshop. Version 1.05 Getting Started With the Stellaris EK-LM4F120XL LaunchPad Workshop Version 1.05 Agenda Introduction to ARM Cortex Cortex -M4F M4F and Peripherals Code Composer Studio Introduction to StellarisWare, I iti

More information

What are Exceptions? EE 457 Unit 8. Exception Processing. Exception Examples 1. Exceptions What Happens When Things Go Wrong

What are Exceptions? EE 457 Unit 8. Exception Processing. Exception Examples 1. Exceptions What Happens When Things Go Wrong 8. 8.2 What are Exceptions? EE 457 Unit 8 Exceptions What Happens When Things Go Wrong Exceptions are rare events triggered by the hardware and forcing the processor to execute a software handler Similar

More information

Chapter 12. CPU Structure and Function. Yonsei University

Chapter 12. CPU Structure and Function. Yonsei University Chapter 12 CPU Structure and Function Contents Processor organization Register organization Instruction cycle Instruction pipelining The Pentium processor The PowerPC processor 12-2 CPU Structures Processor

More information

Software Engineering Aspects of Elliptic Curve Cryptography. Joppe W. Bos Real World Crypto 2017

Software Engineering Aspects of Elliptic Curve Cryptography. Joppe W. Bos Real World Crypto 2017 Software Engineering Aspects of Elliptic Curve Cryptography Joppe W. Bos Real World Crypto 2017 1. NXP Semiconductors Operations in > 35 countries, more than 130 facilities 45,000 employees Research &

More information

Interface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors

Interface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors Interface DAC to a PC Engineering 4862 Microprocessors Lecture 22 Cheng Li EN-4012 licheng@engr.mun.ca DAC (Digital-to-Analog Converter) Device used to convert digital pulses to analog signals Two methods

More information

Countermeasures against EM Analysis

Countermeasures against EM Analysis Countermeasures against EM Analysis Paolo Maistri 1, SebastienTiran 2, Amine Dehbaoui 3, Philippe Maurine 2, Jean-Max Dutertre 4 (1) (2) (3) (4) Context Side channel analysis is a major threat against

More information

Meltdown or "Holy Crap: How did we do this to ourselves" Meltdown exploits side effects of out-of-order execution to read arbitrary kernelmemory

Meltdown or Holy Crap: How did we do this to ourselves Meltdown exploits side effects of out-of-order execution to read arbitrary kernelmemory Meltdown or "Holy Crap: How did we do this to ourselves" Abstract Meltdown exploits side effects of out-of-order execution to read arbitrary kernelmemory locations Breaks all security assumptions given

More information

CS 252 Graduate Computer Architecture. Lecture 4: Instruction-Level Parallelism

CS 252 Graduate Computer Architecture. Lecture 4: Instruction-Level Parallelism CS 252 Graduate Computer Architecture Lecture 4: Instruction-Level Parallelism Krste Asanovic Electrical Engineering and Computer Sciences University of California, Berkeley http://wwweecsberkeleyedu/~krste

More information

ELECTROMAGNETIC GLITCH ON THE AES ROUND COUNTER

ELECTROMAGNETIC GLITCH ON THE AES ROUND COUNTER ELECTROMAGNETIC GLITCH ON THE AES ROUND COUNTER Amine DEHBAOUI ¹, Amir-Pasha Mirbaha ², Nicolas MORO¹, Jean-Max DUTERTRE ², Assia TRIA ¹ COSADE 2013 Paris, France (1) (2) OUTLINE! Context! Round Modification

More information

System-level threats: Dangerous assumptions in modern Product Security. Cristofaro

System-level threats: Dangerous assumptions in modern Product Security. Cristofaro System-level threats: Dangerous assumptions in modern Product Security Cristofaro Mune (c.mune@pulse-sec.com) @pulsoid Me Cristofaro Mune (@pulsoid) - Product Security Consultant/Researcher - Keywords:

More information

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks)

QUESTION BANK. EE 6502 / Microprocessor and Microcontroller. Unit I Processor. PART-A (2-Marks) QUESTION BANK EE 6502 / Microprocessor and Microcontroller Unit I- 8085 Processor PART-A (2-Marks) YEAR/SEM : III/V 1. What is meant by Level triggered interrupt? Which are the interrupts in 8085 level

More information

System Architecture Directions for Networked Sensors[1]

System Architecture Directions for Networked Sensors[1] System Architecture Directions for Networked Sensors[1] Secure Sensor Networks Seminar presentation Eric Anderson System Architecture Directions for Networked Sensors[1] p. 1 Outline Sensor Network Characteristics

More information

EE 457 Unit 8. Exceptions What Happens When Things Go Wrong

EE 457 Unit 8. Exceptions What Happens When Things Go Wrong 1 EE 457 Unit 8 Exceptions What Happens When Things Go Wrong 2 What are Exceptions? Exceptions are rare events triggered by the hardware and forcing the processor to execute a software handler HW Interrupts

More information

Digital Control for Space Power Management Devices

Digital Control for Space Power Management Devices Template reference : 100182079N-EN Digital Control for Space Power Management Devices Work conducted under ESA Contract nr.21826/08/nl/lvh DIGITAL POWER CONTROL Management of power devices via digital

More information

ARM Processors for Embedded Applications

ARM Processors for Embedded Applications ARM Processors for Embedded Applications Roadmap for ARM Processors ARM Architecture Basics ARM Families AMBA Architecture 1 Current ARM Core Families ARM7: Hard cores and Soft cores Cache with MPU or

More information

CREATED BY M BILAL & Arslan Ahmad Shaad Visit:

CREATED BY M BILAL & Arslan Ahmad Shaad Visit: CREATED BY M BILAL & Arslan Ahmad Shaad Visit: www.techo786.wordpress.com Q1: Define microprocessor? Short Questions Chapter No 01 Fundamental Concepts Microprocessor is a program-controlled and semiconductor

More information

Titan silicon root of trust for Google Cloud

Titan silicon root of trust for Google Cloud Scott Johnson Dominic Rizzo Secure Enclaves Workshop 8/29/2018 Titan silicon root of trust for Google Cloud 1 Cloud Perspective: We need a silicon root of trust Software infrastructure Datacenter equipment

More information

Connecting Securely to the Cloud

Connecting Securely to the Cloud Connecting Securely to the Cloud Security Primer Presented by Enrico Gregoratto Andrew Marsh Agenda 2 Presentation Speaker Trusting The Connection Transport Layer Security Connecting to the Cloud Enrico

More information

Chapter 4. The Processor

Chapter 4. The Processor Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified

More information

Controlled Fault Injection: Wishful Thinking, Thoughtful Engineering,

Controlled Fault Injection: Wishful Thinking, Thoughtful Engineering, Controlled Fault Injection: Wishful Thinking, Thoughtful Engineering, or just LUCK? FDTC 2017 Panelists: Ilia Polian, Marc Joye, Ingrid Verbauwhede Marc Witteman, Johann Heyszl The Fault Attack Process

More information

Canon MFP Security Chip. ISO/IEC Security Policy

Canon MFP Security Chip. ISO/IEC Security Policy Canon MFP Security Chip ISO/IEC 19790 Security Policy Version 1.07 2016/12/26 Canon Inc. 1 Table of Contents 2 List of Figures Date of Issue: 2016/12/26 Figure 1 Exterior of Canon MFP Security Chip (FK4-1731A)...

More information

CPU Structure and Function

CPU Structure and Function Computer Architecture Computer Architecture Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr nizamettinaydin@gmail.com http://www.yildiz.edu.tr/~naydin CPU Structure and Function 1 2 CPU Structure Registers

More information

CSCI 4974 / 6974 Hardware Reverse Engineering. Lecture 12: Non-invasive attacks

CSCI 4974 / 6974 Hardware Reverse Engineering. Lecture 12: Non-invasive attacks CSCI 4974 / 6974 Hardware Reverse Engineering Lecture 12: Non-invasive attacks Memory technologies Quiz Attack types Non-invasive Any attack which does not damage the package Non-invasive attacks Program/debug

More information

Microprocessors/Microcontrollers

Microprocessors/Microcontrollers Microprocessors/Microcontrollers A central processing unit (CPU) fabricated on one or more chips, containing the basic arithmetic, logic, and control elements of a computer that are required for processing

More information

«Safe (hardware) design methodologies against fault attacks»

«Safe (hardware) design methodologies against fault attacks» «Safe (hardware) design methodologies against fault attacks» Bruno ROBISSON Assia TRIA SESAM Laboratory (joint R&D team CEA-LETI/EMSE), Centre Microélectronique de Provence Avenue des Anémones, 13541 Gardanne,

More information

Chapter 1: Basics of Microprocessor [08 M]

Chapter 1: Basics of Microprocessor [08 M] Microprocessor: Chapter 1: Basics of Microprocessor [08 M] It is a semiconductor device consisting of electronic logic circuits manufactured by using either a Large scale (LSI) or Very Large Scale (VLSI)

More information

Overview of Microcontroller and Embedded Systems

Overview of Microcontroller and Embedded Systems UNIT-III Overview of Microcontroller and Embedded Systems Embedded Hardware and Various Building Blocks: The basic hardware components of an embedded system shown in a block diagram in below figure. These

More information

External Encodings Do not Prevent Transient Fault Analysis

External Encodings Do not Prevent Transient Fault Analysis External Encodings Do not Prevent Transient Fault Analysis Christophe Clavier Gemalto, Security Labs CHES 2007 Vienna - September 12, 2007 Christophe Clavier CHES 2007 Vienna September 12, 2007 1 / 20

More information

Interconnects, Memory, GPIO

Interconnects, Memory, GPIO Interconnects, Memory, GPIO Dr. Francesco Conti f.conti@unibo.it Slide contributions adapted from STMicroelectronics and from Dr. Michele Magno, others Processor vs. MCU Pipeline Harvard architecture Separate

More information

Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core

Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core TKT-3500 Microcontroller systems Lec 2 PIC18LF8722 Microcontroller s s core Erno Salminen Copyright notice Some figures by Robert Reese, from supplementary CD of the course book from PIC18F8722 Family

More information

A Reliable Architecture for Substitution Boxes in Integrated Cryptographic Devices

A Reliable Architecture for Substitution Boxes in Integrated Cryptographic Devices Author manuscript, published in "DCIS'08: Conference on Design of Circuits and Integrated Systems, (2008)" A Reliable Architecture for Substitution Boxes in Integrated Cryptographic Devices G. Di Natale,

More information

On-Line Self-Test of AES Hardware Implementations

On-Line Self-Test of AES Hardware Implementations On-Line Self-Test of AES Hardware Implementations G. Di Natale, M. L. Flottes, B. Rouzeyre Laboratoire d Informatique, de Robotique et de Microélectronique de Montpellier Université Montpellier II / CNRS

More information

Basics of Microprocessor

Basics of Microprocessor Unit 1 Basics of Microprocessor 1. Microprocessor Microprocessor is a multipurpose programmable integrated device that has computing and decision making capability. This semiconductor IC is manufactured

More information

EITF20: Computer Architecture Part2.2.1: Pipeline-1

EITF20: Computer Architecture Part2.2.1: Pipeline-1 EITF20: Computer Architecture Part2.2.1: Pipeline-1 Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Pipelining Harzards Structural hazards Data hazards Control hazards Implementation issues Multi-cycle

More information

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control

ENGG3380: Computer Organization and Design Lab5: Microprogrammed Control ENGG330: Computer Organization and Design Lab5: Microprogrammed Control School of Engineering, University of Guelph Winter 201 1 Objectives: The objectives of this lab are to: Start Date: Week #5 201 Due

More information

Breaking Kernel Address Space Layout Randomization (KASLR) with Intel TSX. Yeongjin Jang, Sangho Lee, and Taesoo Kim Georgia Institute of Technology

Breaking Kernel Address Space Layout Randomization (KASLR) with Intel TSX. Yeongjin Jang, Sangho Lee, and Taesoo Kim Georgia Institute of Technology Breaking Kernel Address Space Layout Randomization (KASLR) with Intel TSX Yeongjin Jang, Sangho Lee, and Taesoo Kim Georgia Institute of Technology Kernel Address Space Layout Randomization (KASLR) A statistical

More information

What Are The Main Differences Between Program Counter Pc And Instruction Register Ir

What Are The Main Differences Between Program Counter Pc And Instruction Register Ir What Are The Main Differences Between Program Counter Pc And Instruction Register Ir and register-based instructions - Anatomy on a CPU - Program Counter (PC): holds memory address of next instruction

More information

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006

Product Technical Brief S3C2412 Rev 2.2, Apr. 2006 Product Technical Brief S3C2412 Rev 2.2, Apr. 2006 Overview SAMSUNG's S3C2412 is a Derivative product of S3C2410A. S3C2412 is designed to provide hand-held devices and general applications with cost-effective,

More information

Breaking the Bitstream Decryption of FPGAs

Breaking the Bitstream Decryption of FPGAs Breaking the Bitstream Decryption of FPGAs 05. Sep. 2012 Amir Moradi Embedded Security Group, Ruhr University Bochum, Germany Acknowledgment Christof Paar Markus Kasper Timo Kasper Alessandro Barenghi

More information

Processor (I) - datapath & control. Hwansoo Han

Processor (I) - datapath & control. Hwansoo Han Processor (I) - datapath & control Hwansoo Han Introduction CPU performance factors Instruction count - Determined by ISA and compiler CPI and Cycle time - Determined by CPU hardware We will examine two

More information

Microcomputer Architecture and Programming

Microcomputer Architecture and Programming IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller

More information

CSE 141L Computer Architecture Lab Fall Lecture 3

CSE 141L Computer Architecture Lab Fall Lecture 3 CSE 141L Computer Architecture Lab Fall 2005 Lecture 3 Pramod V. Argade November 1, 2005 Fall 2005 CSE 141L Course Schedule Lecture # Date Day Lecture Topic Lab Due 1 9/27 Tuesday No Class 2 10/4 Tuesday

More information

Interfacing a High Speed Crypto Accelerator to an Embedded CPU

Interfacing a High Speed Crypto Accelerator to an Embedded CPU Interfacing a High Speed Crypto Accelerator to an Embedded CPU Alireza Hodjat ahodjat @ee.ucla.edu Electrical Engineering Department University of California, Los Angeles Ingrid Verbauwhede ingrid @ee.ucla.edu

More information

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems Job Posting (Aug. 19) ECE 425 Microprocessor Systems TECHNICAL SKILLS: Use software development tools for microcontrollers. Must have experience with verification test languages such as Vera, Specman,

More information

SiFive FE310-G000 Manual c SiFive, Inc.

SiFive FE310-G000 Manual c SiFive, Inc. SiFive FE310-G000 Manual 1.0.3 c SiFive, Inc. 2 SiFive FE310-G000 Manual 1.0.3 SiFive FE310-G000 Manual Proprietary Notice Copyright c 2016-2017, SiFive Inc. All rights reserved. Information in this document

More information

COEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University

COEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University COEN-4720 Embedded Systems Design Lecture 4 Interrupts (Part 1) Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University Outline Introduction NVIC and Interrupt Control Interrupt

More information

On the Simplicity of Converting Leakages from Multivariate to Univariate

On the Simplicity of Converting Leakages from Multivariate to Univariate On the Simplicity of Converting Leakages from Multivariate to Univariate 21. Aug. 2013, Oliver Mischke Embedded Security Group + Hardware Security Group Ruhr University Bochum, Germany Outline Definitions,

More information

Software Protection Against Fault and Side Channel Attacks

Software Protection Against Fault and Side Channel Attacks Software Protection Against Fault and Side Channel Attacks Conor P. Patrick Thesis submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements

More information

Rad-Hard Microcontroller For Space Applications

Rad-Hard Microcontroller For Space Applications The most important thing we build is trust ADVANCED ELECTRONIC SOLUTIONS AVIATION SERVICES COMMUNICATIONS AND CONNECTIVITY MISSION SYSTEMS Rad-Hard Microcontroller For Space Applications Fredrik Johansson

More information

SRAMs to Memory. Memory Hierarchy. Locality. Low Power VLSI System Design Lecture 10: Low Power Memory Design

SRAMs to Memory. Memory Hierarchy. Locality. Low Power VLSI System Design Lecture 10: Low Power Memory Design SRAMs to Memory Low Power VLSI System Design Lecture 0: Low Power Memory Design Prof. R. Iris Bahar October, 07 Last lecture focused on the SRAM cell and the D or D memory architecture built from these

More information

The purpose of this course is to provide an introduction to the RL78's flash features and archectecture including security features, code and data

The purpose of this course is to provide an introduction to the RL78's flash features and archectecture including security features, code and data 1 The purpose of this course is to provide an introduction to the RL78's flash features and archectecture including security features, code and data flash organization as well as self and external programming

More information

Masking as a Side-Channel Countermeasure in Hardware

Masking as a Side-Channel Countermeasure in Hardware Masking as a Side-Channel Countermeasure in Hardware 6. September 2016 Ruhr-Universität Bochum 1 Agenda Physical Attacks and Side Channel Analysis Attacks Measurement setup Power Analysis Attacks Countermeasures

More information

Chapter 4. The Processor

Chapter 4. The Processor Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware 4.1 Introduction We will examine two MIPS implementations

More information

Chapter 4. Enhancing ARM7 architecture by embedding RTOS

Chapter 4. Enhancing ARM7 architecture by embedding RTOS Chapter 4 Enhancing ARM7 architecture by embedding RTOS 4.1 ARM7 architecture 4.2 ARM7TDMI processor core 4.3 Embedding RTOS on ARM7TDMI architecture 4.4 Block diagram of the Design 4.5 Hardware Design

More information

CHAPTER 4 MARIE: An Introduction to a Simple Computer

CHAPTER 4 MARIE: An Introduction to a Simple Computer CHAPTER 4 MARIE: An Introduction to a Simple Computer 4.1 Introduction 177 4.2 CPU Basics and Organization 177 4.2.1 The Registers 178 4.2.2 The ALU 179 4.2.3 The Control Unit 179 4.3 The Bus 179 4.4 Clocks

More information

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor

COMPUTER ORGANIZATION AND DESIGN. 5 th Edition. The Hardware/Software Interface. Chapter 4. The Processor COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface 5 th Edition Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle

More information

Single Cycle Datapath

Single Cycle Datapath Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.-4.4 Appendices B.7, B.8, B.,.2 Practice Problems:, 4, 6, 9 ing (2) Introduction We will examine two MIPS implementations

More information

3.1 Description of Microprocessor. 3.2 History of Microprocessor

3.1 Description of Microprocessor. 3.2 History of Microprocessor 3.0 MAIN CONTENT 3.1 Description of Microprocessor The brain or engine of the PC is the processor (sometimes called microprocessor), or central processing unit (CPU). The CPU performs the system s calculating

More information