HaTCh: State-of-the-Art in Hardware Trojan Detection

Similar documents
Architectural Primitives for Secure Computation Platforms

A Score-Based Classification Method for Identifying Hardware-Trojans at Gate-Level Netlists

Efficient Control-Flow Subgraph Matching for Detecting Hardware Trojans in RTL Models

Preventive Techniques for Hardware Trojans

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog

What is Verilog HDL? Lecture 1: Verilog HDL Introduction. Basic Design Methodology. What is VHDL? Requirements

Outline. Proof Carrying Code. Hardware Trojan Threat. Why Compromise HDL Code?

Lecture 3: Modeling in VHDL. EE 3610 Digital Systems

Ascend: Architecture for Secure Computation on Encrypted Data Oblivious RAM (ORAM)

Computer Architecture (TT 2012)

Overview. Design flow. Principles of logic synthesis. Logic Synthesis with the common tools. Conclusions

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis

ECE 459/559 Secure & Trustworthy Computer Hardware Design

VLSI Test Technology and Reliability (ET4076)

Spiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.

ECE U530 Digital Hardware Synthesis. Course Accounts and Tools

Marten van Dijk Syed Kamran Haider, Chenglu Jin, Phuong Ha Nguyen. Department of Electrical & Computer Engineering University of Connecticut

PARAMETRIC TROJANS FOR FAULT-BASED ATTACKS ON CRYPTOGRAPHIC HARDWARE

Lecture 3 Introduction to VHDL

Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

COE 561 Digital System Design & Synthesis Introduction

EE595. Part VII VHDL Synthesis Techniques and Recommendations. EE 595 EDA / ASIC Design Lab

Hardware Modelling. Design Flow Overview. ECS Group, TU Wien

Improving Logic Obfuscation via Logic Cone Analysis

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

Technology Dependent Logic Optimization Prof. Kurt Keutzer EECS University of California Berkeley, CA Thanks to S. Devadas

Programmable Logic Devices HDL-Based Design Flows CMPE 415

SGX Enclave Life Cycle Tracking TLB Flushes Security Guarantees

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8)

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool

structure syntax different levels of abstraction

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Topics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1)

Lecture 12 VHDL Synthesis

Hardware Modeling. Hardware Description. ECS Group, TU Wien

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

Crypto Background & Concepts SGX Software Attestation

Design and Implementation of the Ascend Secure Processor. Ling Ren, Christopher W. Fletcher, Albert Kwon, Marten van Dijk, Srinivas Devadas

Revolutioni W zi h Wn e hgn e n F a Mi i s liu lsir u e ro e Cri I ti s Ic N al o t V A e n ri n O fi p c ti a o ti n oo

Where we are in the Course

Verilog 1 - Fundamentals

Synthesizable Verilog

3. Formal Equivalence Checking

Hardware Design Verification: Simulation and Formal Method-Based Approaches William K Lam Prentice Hall Modern Semiconductor Design Series

FPGA Design Flow 1. All About FPGA

VLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore

Task Based Programming Revisited Real Time Operating Systems

Advanced FPGA Design. Jan Pospíšil, CERN BE-BI-BP ISOTDAQ 2018, Vienna

Assignment. Last time. Last time. ECE 4514 Digital Design II. Back to the big picture. Back to the big picture

Chapter 2 Using Hardware Description Language Verilog. Overview

Programmable Logic Devices II

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,

EECS150 - Digital Design Lecture 4 - Verilog Introduction. Outline

Spiral 2-8. Cell Layout

Computer Architecture Background

VLSI System Testing. Fault Simulation

ECE 545 Lecture 5. Data Flow Modeling in VHDL. George Mason University

Outline. EECS Components and Design Techniques for Digital Systems. Lec 11 Putting it all together Where are we now?

(ii) Simplify and implement the following SOP function using NOR gates:

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES

Functional Programming in Hardware Design

Don t expect to be able to write and debug your code during the lab session.

Quick Introduction to SystemVerilog: Sequental Logic

Sequential Circuit Design: Principle

Introduction to Verilog/System Verilog

UVM for VHDL. Fast-track Verilog for VHDL Users. Cont.

Sequential Circuit Design: Principle

Introduction to Verilog HDL

Testing & Verification of Digital Circuits ECE/CS 5745/6745. Hardware Verification using Symbolic Computation

ECE 353 Lab 4. Verilog Review. Professor Daniel Holcomb With material by Professor Moritz and Kundu UMass Amherst Fall 2016

Hardware Modeling. VHDL Architectures. Vienna University of Technology Department of Computer Engineering ECS Group

Evolution of CAD Tools & Verilog HDL Definition

IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 23, NO. 5, MAY

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28

Formal Equivalence Checking. Logic Verification

EECS150 - Digital Design Lecture 7 - Computer Aided Design (CAD) - Part II (Logic Simulation) Finite State Machine Review

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation

Writing Circuit Descriptions 8

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic

Speaker: Kayting Adviser: Prof. An-Yeu Wu Date: 2009/11/23

Synthesis of Combinational and Sequential Circuits with Verilog

Lecture 2 Hardware Description Language (HDL): VHSIC HDL (VHDL)

Introduction to Field Programmable Gate Arrays

RTL Coding General Concepts

CS211 Digital Systems/Lab. Introduction to VHDL. Hyotaek Shim, Computer Architecture Laboratory

EE 434 ASIC & Digital Systems

Design and Implementation of Low-Complexity Redundant Multiplier Architecture for Finite Field

Hardware Description Languages: Verilog. Quick History of HDLs. Verilog/VHDL. Design Methodology. Verilog Introduction. Verilog.

Advanced FPGA Design Methodologies with Xilinx Vivado

University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering

Hardware Description Languages: Verilog

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date:

Introduction to Verilog. Mitch Trope EECS 240 Spring 2004

A comprehensive metering scheme for intellectual property protection during both after-sale and evaluation periods of IC design

Introduction to Verilog HDL. Verilog 1

FT-UNSHADES credits. UNiversity of Sevilla HArdware DEbugging System.

PlanAhead Release Notes

Transcription:

CSE 5095 & ECE 4451 & ECE 5451 Spring 2017 Lecture 9a HaTCh follows http://arxiv.org/abs/1605.08413 and https://eprint.iacr.org/2014/943.pdf HaTCh: State-of-the-Art in Hardware Trojan Detection Marten van Dijk Syed Kamran Haider, Chenglu Jin, Phuong Ha Nguyen Department of Electrical & Computer Engineering University of Connecticut

HaTCh: Advancing the State-of-the-Art in Hardware Trojan Detection Syed Kamran Haider, Chenglu Jin, Masab Ahmed, Devu Manikantan Shila, Omer Khan and Marten van Dijk University of Connecticut United Technologies Research Center http://scl.uconn.edu/

Outline Hardware Trojans and Problem Statement Existing Hardware Trojan Detection Techniques Characterization of Hardware Trojans Advanced Properties HaTCh: Hardware Trojan Catcher Algorithm Comparisons with other schemes Evaluation Conclusion 3

What is a Hardware Trojan? A malicious logic embedded inside a larger circuit resulting in data leakage or harm to the normal functionality Hardware Trojans have two major classes Trigger Activated: Activates upon some special internal/external event Always Active: Remain always active to deliver the payload Several possible payloads Denial of Service Leakage of Sensitive Information Reducing the battery life of the device Weakening of Security mechanisms E.g. bypassing protection circuitry, discard counter measures etc. 4

Hardware Trojans Examples [1][2] Types of Trojan Trigger Activated Trigger Actor Action Input Channel Attacker with physical access to the device Legitimate User Particular legitimate input sequence Particular illegitimate input sequence Taking control through unused functional units or interfaces Normal operation for certain n>n Particular legitimate input sequence Illegitimate input sequence by mistake Certain time interval between two legal inputs Standard Input I/O pins Keyboard Serial/Parallel protocols Unused Inputs I/O pins Serial/Parallel protocols Standard Input I/O pins Keyboard Serial/Parallel protocols Actors Output/Leaking channel Standard / Unused Outputs I/O pins LCD LEDs Serial/Parallel protocols Side Channels EM Waves Hidden in standard output Payload / Consequence of attack Leaking sensitive information Encryption Key Plain text Denial of service Generating incorrect results Make the device stop working Reduce the reliability of the device Drain the battery Always Active N/A N/A Internal IP Core [1] Y. Jin, Experiences in Hardware Trojans Design and Implementation [2] G. Becker, Implementing Hardware Trojans Side Channels EM Waves Leak the Encryption Key 5

FPGA Design Flow IP Core Design Steps 1) System level design is modeled in C/C++, MATLAB etc. 2) RTL design is modeled in some HDL e.g. Verlilog, VHDL 3) Xilinx FPGA Design Flow takes HDL Design entry a) Synthesis: Creates Xilinx-specific Netlist NGC file b) Translate: Reduces logical design to Xilinx primitives c) Map: Maps the design on target FPGA d) Place & Route: Places & routes the design to meet timing e) BitGen: Produces a BIT file to program the FPGA In practice the NGC netlist of the IP Core is provided to the customer It still hides the source code Possibility to include the NGC netlist in a larger design Note: This means that rest of the Toolchain is in control of the customer and can therefore be trusted We define access to a Closed Source IP Core as access to the NGC netlist only We assume in the remainder that the customer has access to Closed Source IP Core Hardware Trojans can be embedded in the IP Core Specifications Behavioral/ Functional Specification Behavioral (RTL) Synthesis Translate Map Place & Route BitGen Program FPGA.V.NGC.NGD.NCD.NCD.BIT

ASIC Design Flow Generalized ASIC Design FLow High Level Design Specification Capture Design Capture in C, C++, SystemC or SystemVerilog RTL Design Verilog/VHDL System, Timing and Logic Verification Is the logic working correctly? Physical Design Floorplanning, Place and Route, Clock insertion Performance and Manufacturability Verification Extraction of Physical View Verification of timing and signal integrity Design Rule Checking/ LVS In practice the RTL Synthesized netlist of the IP Core is provided to the customer Similar to FPGAs, Hardware Trojans can be embedded in the IP Cores Specifications Behavioral/ Functional Specification Behavioral (RTL) Synthesis Structural Specification Physical Synthesis Physical Specification To CMOS Fab. Check Check Check 7

Design Flow Vulnerabilities Untrusted Source Code: Third party only provides netlist file (e.g. NGC) of the IP Core A Trojan could have been implanted in the source code Netlist file obfuscates HDL source code Hard to detect an embedded Trojan Untrusted Toolchain: Toolchain used to generate Netlists could be malicious User trusts only a finite set of trustworthy Tools E.g. Cadence, Synopsis, Xilinx etc IP Core provider may not use these trustworthy tools TURING AWARD LECTURE Reflections on Trusting Trust by Ken Thompson Specifications Behavioral/ Functional Specification Behavioral (RTL) Synthesis Structural Specification Physical Synthesis Physical Specification To CMOS Fab. Check Check Check

Problem Statement & Motivation IP cores are heavily used in modern systems IP cores are vulnerable to insertion of Hardware Trojans (HTs) State of the art HT detection schemes have either of the following two limitations 1. They can be defeated by new sophisticated HTs. 2. They have infeasibly high computational complexity. This leads to the following two questions: 1. Which exponentially large class of HTs a tool can detect with negligible false negative rate? 2. How to design an efficient detection tool with controlled false positive rate which is computationally feasible for this large class of HTs? 9

Complexity (time units) The Big Picture Hardware Trojan Coverage XOR-LFSR HaTCh VeriTrust FANCI TrustHub Benchmarks Unknown Characterization 1.0E+80 1.0E+72 1.0E+64 1.0E+56 1.0E+48 1.0E+40 1.0E+32 1.0E+24 1.0E+16 1.0E+08 1.0E+00 Pre-Silicon Phase Computational Complexities a 1 a 2 a m 1 a m log 2 (m) levels O 2 4 8 16 32 64 128 256 # of Inputs of the circuit VeriTrust FANCI HaTCh False Positives Uncontrollable Controllable ρ False Negatives Unknown Characterization Controllable 2 λ for H d,t,α VeriTrustX FANCIX HaTCh 10

Outline Hardware Trojans and Problem Statement Existing Hardware Trojan Detection Techniques Characterization of Hardware Trojans Advanced Properties HaTCh: Hardware Trojan Catcher Algorithm Comparisons with other schemes Evaluation Conclusion 11

Existing Trojan Detection Schemes Unused Circuit Identification (UCI) Distinguishes minimally used logic from the other parts of the circuit. Intuition that a HT almost always remains inactive in the circuit to pass the functional verification. VeriTrust Detects HTs by identifying redundant inputs for the normal functionality of the output wire. First the activation history of the inputs is recorded in SOP and POS form. Further analysis of SOPs and POSs yields the redundant inputs. FANCI Applies Boolean function analysis. Flags suspicious wires which have weak input-to-output dependency determined by Control Value. 12

Extended VeriTrust & FANCI DeTrust introduces a new HT design methodology that defeats VeriTrust & FANCI [CCS 14] Problem 1: Current schemes can be bypassed by Sophisticated Trojans DeTrust also proposes extensions to VeriTrust & FANCI to detect the new HTs Extended VeriTrust (VeriTrustX) & Extended FANCI (FANCIX) Key idea: The circuits should be monitored up to multiple sequential stages at a time, while ignoring any FFs in between. Problem 2: Current schemes can have infeasibly High Computational Complexity 13

Outline Hardware Trojans and Problem Statement Existing Hardware Trojan Detection Techniques Characterization of Hardware Trojans Advanced Properties HaTCh: Hardware Trojan Catcher Algorithm Comparisons with other schemes Evaluation Conclusion 14

Characterization of Hardware Trojans A detailed characterization of Hardware Trojans that defines the scope of HaTCh at the huge landscape of Hardware Trojans. Hardware Trojans Use Standard I/O Channels (St) Deterministic Core & Spec (St-D) d, α, t, l H D Use Side Channels (Si) Non-Deterministic Core & Spec (St-ND) 15

Explicit vs. Implicit Malicious Behavior Explicit malicious behavior refers to a behavior of a HT where the HT generated output is distinguishable from a normal output. A = 1, B = 1 Sum = B = 1 0 B A A B B A+B Sel 1 0 D Q Sum Implicit malicious behavior refers to a behavior of a HT where the HT generated output is indistinguishable from a normal output. A = 0, B = 0 Sum = B = 0 = 0 Trigger: A=B Payload: Sum=B when A=B D Q Carry Implicit Malicious behavior can be exploited to bypass the countermeasure!!! 16

Properties of Deterministic HTs Group H D Trigger Signal Dimension d: Number of Trigger Signal Wires E.g. 1 bit trigger signal Sel Payload Propagation Delay t: Cycles taken to propagate malicious behavior to the output port after Trigger E.g. 1 cycle taken by Sum after Sel = 1 B A A B B A+B Sel 1 0 D Q Sum Implicit Behavior Factor α: Probability of Implicit Malicious Behavior given that the Trojan is triggered. 50% for the example Trojan, since A = B = 0 Sum = B = 0 = 0 and A = B = 1 Sum = B = 1 0 Trigger: A=B Payload: Sum=B when A=B D Q Carry 17

Properties of Deterministic HTs Group H D A set T of trigger states represents a HT if the HT always passes through one of the states in T in order to express implicit of explicit malicious behavior. Trigger Signal Dimension d(t) of a HT is defined as d(t) = max Trig T Trig Payload Propagation Delay t(t) of a HT represented by a set of trigger states T is defined as the maximum number of clock cycles taken to propagate the malicious behavior after entering a trigger state in T. Implicit Behavior Factor α(t) of a HT represented by the set of trigger states T is defined as α(t) = max α(trig) where α(trig) shows the probability that, Trig T given the trigger state Trig occurs, it will lead to implicit malicious behavior. H d,t,α is the set of all H D type Trojans which can be represented by a set of trigger states T with d T d, t(t) t, and α T α. 18

k-xor-lfsr Hardware Trojan A counter based trojan with the counter implemented as an LFSR Feedback Logic Let r i 0, 1 k denote its register content at clock cycle i represented as a binary vector of length k. LFSR rk r3 r2 r1 Suppose that u is the maximum index for which the linear space L generated by vectors r 0,..., r u 1 (modulo 2) has dimension k 1 A 1 Selective Connections Since dim(l) = k 1 < k = dim( 0, 1 k ), there exists a vector v 0, 1 k such that A 2 O v, r i = 0 (modulo 2) for all 0 i u 1 and A k v, r u = 0 (modulo 2) Only the register cells corresponding to v j = 1 are being XORed with inputs A j. 19

k-xor-lfsr Hardware Trojan Since the A j are all XORed together in the specified logical functionality to produce the sum j A j the Trojan changes this sum to j A j j:v j =1 r j i = j A j v, r i I.e., the sum remains unchanged until the u-th clock cycle when it is maliciously inverted LFSR Feedback Logic rk r3 r2 r1 Selective Connections Notice that the dimension d of this Trojan is independent of the inputs A j Therefore in this sense, the k-xor-lfsr trojan is universally applicable to cores that implement an XOR over k inputs. A 1 A 2 O Suppose that all vectors r i behave like random vectors from a uniform distribution. Then k-xor-lfsr has register size k and triggers after u k LFSR transitions (can be clocked at slow rate). Furthermore, if k-xorlfsr is in H d,t,α then α = 0 and with significant probability d log k t log(log k t log k). A k 20

Outline Hardware Trojans and Problem Statement Existing Hardware Trojan Detection Techniques Characterization of Hardware Trojans Advanced Properties HaTCh: Hardware Trojan Catcher Algorithm Comparisons with other schemes Evaluation Conclusion 21

HaTCh: Hardware Trojan Catcher Hardware Trojan Catcher (HaTCh) processes an IP Core in two phases; Learning Phase puts the core (represented by a netlist) through functional testing and returns a blacklist B of unused wire combinations. If no malicious behavior is observed during the learning phase, then the tagging phase starts Otherwise the IP core potentially contains a hardware Trojan and is rejected straightaway Tagging Phase adds extra logic for each entry in the blacklist for runtime detection Whenever any of the blacklisted wires is activated, an exception is raised to indicate the activation of a Trojan. 22

Learning Phase HaTCh Algorithm Learning Phase A simulator is used to produce expected outputs An emulator runs actual IP core circuit k independent blacklists are created Final blacklist is a union of k blacklists Tagging Phase Additional circuitry is added Blacklisted wires are tracked Run-time detection Complexity O λ log 2 1 α 2n2 d ρ/δ procedure HaTCh Core, U, t, d, α, λ, ρ λ k =, B = φ log 2 1/α for all 1 i k do B i LEARN Core, U, t, d, ρ if B i = Trojan Detected then return Trojan Detected else B = B B i end if end for Core Protected = TAG Core, B return Core Protected end procedure 23

Complexity (time units) Computational Complexity Comparison VeriTrust: O(2 m ) where m indicates the number of inputs of the Trojan circuit. FANCI: O(m2 m ) where m indicates the number of inputs of the Trojan circuit. HaTCh: O( 2n 2 d ) where: n = 2m 1 and d = log 2 m + 1 for 2-input implementation n = m + m 1 3 and d = log 4 m +1 for 4-input implementation Computational Complexities of Countermeasures 1E+72 1E+63 1E+54 1E+45 1E+36 1E+27 1E+18 1E+09 1E+00 VeriTrustX FANCIX HaTCh_2in HaTCh_4in 2 4 8 16 32 64 128 256 # of Inputs m 24

Blacklist Size Blacklist Size Blacklist Size VeriTrust & FANCI Uncontrollable HaTCh Controllable, i.e. ρ False Positives Flat for Δ/ρ Flat for Δ/ρ Flat for Δ/ρ Inputs tested Inputs tested Inputs tested Blacklist 1: B 1 Blacklist 1: B 2 Blacklist k: B k P FN α P FN α P FN α Final Blacklist B = B 1 B 2 B k Probability of False Negative P FN α k 2 λ False positives rate = ρ Statistical assumptions: (1) With probability at least 0.5 testing another Δ/ρ inputs would not reduce any of the k blacklists. (2) States corresponding to the same test input that are separated by Δ cycles are statistically independent. (3) The state distribution is statistically independent of the cycle number at which the state occurs. (4) The learning phase samples the real input distribution closely. 25

False Negatives False Negative Rate of a set of Hardware Trojans FNR H = 1 H h H Prob(h is not detected when triggered) VeriTrust & FANCI TrustHub FNR TrustHub = 0 Other Hardware Trojans No Characterization HaTCh TrustHub FNR TrustHub = 0 Other Hardware Trojans Controllable, FNR(H d,t,α ) 2 λ Hardware Trojan Coverage XOR-LFSR HaTCh VeriTrust FANCI TrustHub Benchmarks Unknown Characterization 26

Outline Hardware Trojans and Problem Statement Existing Hardware Trojan Detection Techniques Characterization of Hardware Trojans Advanced Properties HaTCh: Hardware Trojan Catcher Algorithm Comparisons with other schemes Evaluation Conclusion 27

Evaluation We first characterize the benchmarks from TrustHub w.r.t. the Hardware Trojan characterization introduced in our framework Then we evaluate HaTCh for the following benchmarks: S-Series Benchmarks from TrustHub: s15850, s35932 and s38417 RS232 Benchmarks from TrustHub New Hardware Trojans presented by DeTrust which defeat FANCI & VeriTrust A newly designed XOR-LFSR Hardware Trojan HaTCh detects all these Trojans The corresponding area overheads for relevant benchmarks are presented next. M. Tehranipoor, R. Karri, F. Koushanfar, and M. Potkonjak, Trusthub, http://trusthub.org 28

Characterization of TrustHub d = 1 29

# OF BLACKLISTED WIRES 187 214 223 155 1 15 139 1 15 134 1 15 133 1 15 132 1 15 1465 1339 1343 1226 1226 1230 1219 1219 1223 1215 1215 1219 1215 1215 1219 1215 1215 1219 2196 5860 5886 5474 5477 5506 Experimental Results for S-Series HATCH EVALUATION ON S-SERIES BENCHMARKS s15850-t100 s35932-t200 s35932-t300 s38417-t100 s38417-t200 s38417-t300 0 10 100 1,000 10,000 100,000 200,000 # OF INPUT TEST PATTERNS 30

Area Overhead for S-Series 31

Area Overhead for RS232 32

Conclusion We introduce a thorough characterization and certain advanced properties of Hardware Trojans which provide crucial information for the development of detection tools The benchmarked Hardware Trojans turn out to be of the simplest kind and must only reflect the tip of the iceberg We propose and implement HaTCh, a powerful hardware detection tool which Detects all benchmarked Trigger based deterministic Hardware Trojans Detects exponentially large Hardware Trojan classes with negligible probability of a false negative Offers sub-exponential computational complexity as opposed to exponential complexity of existing schemes Has low area overhead 33

Thank you! See http://scl.uconn.edu/research/htdd.php for more details with links to http://arxiv.org/abs/1605.08413 and https://eprint.iacr.org/2014/943.pdf