ELEC 528 Lecture Farinaz Koushanfar, Spring 2009 ECE and CS Depts., Rice University.

Slides:



Advertisements
Similar presentations
Side-Channel Attacks on RSA with CRT Weakness of RSA Alexander Kozak Jared Vanderbeck.
Advertisements

Programmable FIR Filter Design
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
8085 processor. Bus system in microprocessor.
1 Counter with Parallel Load Up-counter that can be loaded with external value –Designed using 2x1 mux – ld input selects incremented value or external.
Is there Safety in Numbers against Side Channel Leakage? Colin D. Walter UMIST, Manchester, UK
1 Lecture 20 Sequential Circuits: Latches. 2 Overview °Circuits require memory to store intermediate data °Sequential circuits use a periodic signal to.
The 8085 Microprocessor Architecture
Linear Obfuscation to Combat Symbolic Execution Zhi Wang 1, Jiang Ming 2, Chunfu Jia 1 and Debin Gao 3 1 Nankai University 2 Pennsylvania State University.
Synchronous Digital Design Methodology and Guidelines
UNIVERSITY OF MASSACHUSETTS Dept
1 Foundations of Software Design Lecture 3: How Computers Work Marti Hearst Fall 2002.
Processor Technology and Architecture
Chapter 4 Processor Technology and Architecture. Chapter goals Describe CPU instruction and execution cycles Explain how primitive CPU instructions are.
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ input/output and clock inputs Sequence of control signal combinations.
Logic and Computer Design Fundamentals Registers and Counters
1 Lecture-2 CS-120 Fall 2000 Revision of Lecture-1 Introducing Computer Architecture The FOUR Main Elements Fetch-Execute Cycle A Look Under the Hood.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 3 – Combinational Logic Design Part 1 –
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Number Systems Lecture 02.
Spread Spectrum Techniques
PULSE MODULATION.
Advanced FPGA Based System Design Lecture-9 & 10 VHDL Sequential Code By: Dr Imtiaz Hussain 1.
Some Useful Circuits Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
March 8, 2006Spectral RTL ATPG1 High-Level Spectral ATPG for Gate-level Circuits Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE.
Practical PC, 7th Edition Chapter 17: Looking Under the Hood
ECE 2372 Modern Digital System Design
Part.7.1 Copyright 2007 Koren & Krishna, Morgan-Kaufman FAULT TOLERANT SYSTEMS Part 7 - Coding.
CS1Q Computer Systems Lecture 11 Simon Gay. Lecture 11CS1Q Computer Systems - Simon Gay2 The D FlipFlop A 1-bit register is called a D flipflop. When.
9th IMA Conference on Cryptography & Coding Dec 2003 More Detail for a Combined Timing and Power Attack against Implementations of RSA Werner Schindler.
P. 4.1 Digital Technology and Computer Fundamentals Chapter 4 Digital Components.
ECE Advanced Digital Systems Design Lecture 12 – Timing Analysis Capt Michael Tanner Room 2F46A HQ U.S. Air Force Academy I n t e g r i.
Introduction to Computing Systems from bits & gates to C & beyond The Von Neumann Model Basic components Instruction processing.
Disclosure risk when responding to queries with deterministic guarantees Krish Muralidhar University of Kentucky Rathindra Sarathy Oklahoma State University.
EEE2243 Digital System Design Chapter 7: Advanced Design Considerations by Muhazam Mustapha, extracted from Intel Training Slides, April 2012.
1 Lecture 22 Sequential Circuits Analysis. 2 Combinational vs. Sequential  Combinational Logic Circuit  Output is a function only of the present inputs.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 11 Binary Adder/Subtractor.
Important Components, Blocks and Methodologies. To remember 1.EXORS 2.Counters and Generalized Counters 3.State Machines (Moore, Mealy, Rabin-Scott) 4.Controllers.
Cis303a_chapt04.ppt Chapter 4 Processor Technology and Architecture Internal Components CPU Operation (internal components) Control Unit Move data and.
Introduction to State Machine
Sliding Windows Succumbs to Big Mac Attack Colin D. Walter
Precise Bounds for Montgomery Modular Multiplication and Some Potentially Insecure RSA Moduli Colin D. Walter formerly: (Manchester,
A paper by: Paul Kocher, Joshua Jaffe, and Benjamin Jun Presentation by: Michelle Dickson.
Synthesizing Natural Textures Michael Ashikhmin University of Utah.
Confidentiality/date line: 13pt Arial Regular, white Maximum length: 1 line Information separated by vertical strokes, with two spaces on either side Disclaimer.
Computer simulation Sep. 9, QUIZ 2 Determine whether the following experiments have discrete or continuous out comes A fair die is tossed and the.
Precise Bounds for Montgomery Modular Multiplication and Some Potentially Insecure RSA Moduli Colin D. Walter formerly: (Manchester,
Introduction to Microprocessors - chapter3 1 Chapter 3 The 8085 Microprocessor Architecture.
1 Fundamentals of Computer Science Combinational Circuits.
1 Information Security – Theory vs. Reality , Winter Lecture 3: Power analysis, correlation power analysis Lecturer: Eran Tromer.
Lecture7 –More on Attacks Rice ELEC 528/ COMP 538 Farinaz Koushanfar Spring 2009.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 22 Memory Definitions Memory ─ A collection of storage cells together with the necessary.
Elements of Datapath for the fetch and increment The first element we need: a memory unit to store the instructions of a program and supply instructions.
LECTURE 4 Logic Design. LOGIC DESIGN We already know that the language of the machine is binary – that is, sequences of 1’s and 0’s. But why is this?
CS151 Introduction to Digital Design Chapter 5: Sequential Circuits 5-1 : Sequential Circuit Definition 5-2: Latches 1Created by: Ms.Amany AlSaleh.
ECE DIGITAL LOGIC LECTURE 15: COMBINATIONAL CIRCUITS Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 10/20/2015.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
Gunjeet Kaur Dronacharya Group of Institutions. Outline I Random-Access Memory Memory Decoding Error Detection and Correction Read-Only Memory Programmable.
Stats Methods at IC Lecture 3: Regression.
COMP541 Memories II: DRAMs
The 8085 Microprocessor Architecture
UNIVERSITY OF MASSACHUSETTS Dept
Interfacing Memory Interfacing.
Timing Analysis 11/21/2018.
The Von Neumann Model Basic components Instruction processing
The 8085 Microprocessor Architecture
8.5 Modulation of Signals basic idea and goals
Binary Adder/Subtractor
Recent from Dr. Dan Lo regarding 12/11/17 Dept Exam
Presentation transcript:

ELEC 528 Lecture Farinaz Koushanfar, Spring 2009 ECE and CS Depts., Rice University

Introduction Outsourcing of IC manufacturing Threat: addition of Trojan horse (TH) circuitry –Hard (or impossible) to detect by functional tests –It may be triggerable, not always active – hidden –General circuit obfuscation – to make it hard to insert TH at the foundry is almost impossible They propose a side-channel based approach The techniques requires destructive testing of a few ICs The rest of the ICs will be nondestructively validated by side-channel analysis for the absence of any significantly sized Trojans

Side-channel analysis (SCA) techniques These techniques are effective even when the information present within the side channel is masked with noise More sophisticated techniques build statistical models for noise and remove it Their side-channel approach does not require changes to the current process and practices for design and fab The technique requires additional IC fingerprint generation and validation step to be carried out by a trustworthy fab facility

Fingerprinting methodology 1.Select a few ICs at random from a family of ICs (i.e.,ICs with the same mask and manufactured in the same fab). 2.Run sufficient I/O tests multiple times on the selected ICs so as to exercise all of their expected circuitry and collect one or more side- channel signals (power, EM, thermal emissions etc.) from the ICs during these tests. 3.Use these side-channel signals to build a “side-channel fingerprint” for the IC family. 4.Destructively test the selected ICs to validate that they are compliant to the original specifications. 5.All other ICs from the same family are nondestructively validated by subjecting them to the same I/O tests and validating that their side- channel signals are consistent with the “side-channel fingerprint” of the family.

Trojans and their side-channel leakage TH circuits need to be stealthy TH ICs needs to have the same physical form factor, pin-out and very similar I/O behavior TH should wait for a trigger condition that happens rarely and is hidden to testing, but is easily triggerable by an attacker In nondeterministic ICs, it can be more easily encoded, but still needs to be selective Modern complex IC manufacturing leaves a lot of room for TH insertion

TH Detection via simple SCA The total power consumption differs, when a sizeable component is added Run the IC at a low frequency Since the dynamic power is linearly dependent on the clock freq. and the switching and leakage is dependent on the area Small Trojan horses survive this test

SCA The details of the power signals from a non-Trojan AES circuit (green or grey) with an equivalent area of input NAND gates and a Trojan AES circuit (blue or black) with a 10-bit counter as the Trojan which has an equivalent area of input NAND gates. The left circuit is clocked at 100MHz and sampled at 1 ns intervals and on the right the circuit is clocked at 500 KHz and sampled at 200 ns intervals. The Trojan in this case is roughly 5.6% of the total circuit size.

Statistical PA Even small THs can be distinguished by statistical analysis. A simulation of how an average power signal would look like for the Trojan and genuine AES circuits running at 100MHz. The signal from the genuine AES circuit is shown in green (or grey) and the additional signal introduced by the Trojan circuit is shown in black. Limited by the process noise and statistical variations

TH detection theory Consider an IC I, that executes a calculation C. Consider a power measurement M done on I when it is executing the computation C. The power trace obtained in this measurement, r(t; I;C;M), can be modeled as consisting of four components: –(a) the mean power consumption p(t;C) (the mean is computed over several measurements done on several ICs from the same family during multiple executions of the calculation C), –(b) process noise n p (t; I;C), –(c) measurement noise n m (t;M), and –d) possibly an extra power leakage τ (t; I;C) due to a Trojan circuit in I.

TH detection theory (Cont’d) The power trace of a genuine IC is r G (t; I;C;M) = p(t;C) + n p (t; I;C) + n m (t;M) The Trojan IC adds an additional component to give r T (t; I;C;M) = p(t;C) + n p (t; I;C) + n m (t;M) + τ (t; I;C) They ignore measurement noise

TH Detection model Definition 1 Trojan Detection Problem. –Given K genuine ICs I 1, I 2,..., I K and the process noise signals n p (t; I 1 ;C), n p (t; I 2 ;C),..., n p (t; I K ;C) generated by the ICs respectively, during the execution of the calculation C –Given an IC I K+1 with a mean power trace r(t; I K+1 ;C) (mean taken over multiple executions of calculation C with the average p(t;C) subtracted), how can we determine if the IC I K+1 contains a Trojan circuit?

Hypothesis testing Is the IC genuine or TH? 1.H G : r(t; I K+1 ;C) = n p (t; I K+1 ;C) 2.H T : r(t; I K+1 ;C) = n p (t; I K+1 ;C)+τ (t; I K+1 ;C) The problem is viewed as a signal characterization problem Characterize the process noise and check if the signal under hypothesis differs from it!

Characteristics of noise – Subspace projection Subspace projection, where the signal r(t; I K+1 ;C) and the process noise signals n p (t; I 1 ;C), np(t; I 2 ;C),..., np(t; I K ;C) from known genuine ICs are projected in a signal subspace where signals from Trojan and genuine ICs are likely to have different characteristics The main obstacle in this analysis is that we do not know the Trojan circuit or what precisely it may be trying to accomplish. The Trojan IC may be monitoring the clock, contents of a register, or transitions on a bus. The power consumed by the Trojan may be correlated with the clock, input or output data, result of some intermediate calculation, etc. In absence of this knowledge apriori, it may seem that nothing short of a full characterization of the process noise would work.

Can subspace projection help? In their initial experiments, they could easily find subspaces that distinguish b/w signal and noise w/o full characterization Example: a simple TH circuit whose power consumption does not fall when the genuine power consumption falls An RSA computation (in green or gray) with the process noise (in red or dark grey) and the Trojan signal (in black) simulated via a ±5% random variation in cell libraries across processes.

Trojan vs. process noise Trojan power signature and process noise in one such region of low activity in between two modular multiplications in such regions, with its relatively much larger magnitude the Trojan contribution to the signal (black) stands out compared to the process noise (green or grey). Even when the IC’s power consumption, and therefore the correlated process noise, does not fall relative to the Trojan at any point in the computation, the Trojan ICs can be detected by using advanced signal processing techniques. They will demonstrate the use of Karhunen-Lo`eve (KL) expansion

KL expansion

The KL expansion provides a separation of randomness and the time variations of a random signal The sequence Z k (t) is referred to as the eigen value spectrum of a sample that varies from a sample to sample and has no time dependency The is the eigen vector and fixed from a sample to sample but varies with time

Experiment setup – RSA circuit RSA circuits, the TH is a comparator or a counter Their RSA design employs the left-to-right binary square and multiply exponentiation algorithm. Has a scalable, pipelined and high radix Montgomery Multiplier (MM) architecture to realize square or multiply operations. Operand length, word size, pipeline depth in MM circuit are parameterized. All simulation results in this paper were obtained for a pipeline depth of 8 and word size of 8 bits. The memories to hold operands, exponent and modulus, and the FIFO memory necessary for the pipeline structure are omitted from the synthesized RSA circuit.

Trojan circuit description The first TH was a 16-bit counter with an equivalent area of input NAND gates which occupies roughly 1.4% of the total circuit area of the RSA circuits described earlier. The second Trojan circuit was a simple 8-bit sequential comparator with an equivalent area of 33 2-input NAND gates. An even simpler 3-bit combinational comparator with an equivalent area of only 3 2-input NAND gates. Note that the area of Trojan circuits used in our experiments goes from 406 gates to 33 gates to 3 gates, roughly an order of magnitude decrease at each step.

Exp -1 Experiment 1: 512-Bit RSA Circuit with a 16- Bit Counter Based Trojan and with ±2% Parameter Variations

Exp -2 Experiment 2: 256-Bit RSA Circuit with the 16-Bit Counter Based Trojan and with ±5% Parameter Variations

Exp - 3 Experiment 3: 256-bit RSA Circuit with the 8-bit Sequential Comparator Based TH and with ±5% Parameter Variations Trojan signals (blue or black) inside (top figure) and outside (bottom figure) the process noise envelopes (green or grey), Experiment 3.

Exp - 4 Experiment 4: 256-bit RSA Circuit with 3-bit Combinational Comparator Based TH and ±7.5% Parameter Variations

More experiments

Conclusion Demonstrated the feasibility of building effective fingerprints for an IC family to detect Trojan ICs. Designed and synthesized an RSA circuit and three different Trojan circuits. The power traces obtained from the simulations of these circuits to built the IC fingerprints. They modeled three sets of process variations by creating random variations (up to ±2%, ±5% and ±7.5%) in the cell libraries that were used to synthesize the designs. In all cases, fairly simple analysis of the power signals could distinguish genuine ICs from those containing Trojan circuits down to 0.01% of the size of the main circuit. In general it is difficult to hide signal distortions introduced by a Trojan circuit as a Trojan circuit leaks signal in signal subspaces that are not present in genuine ICs.