Detection of Hardware Trojan Horses

Hardware Trojan horses are a real concern for the last 12 years or so, especially for national security. . A few examples of what such a Trojan can do when triggered are : 1. Turn off security protections or insert a known key to the encryption engine; 2. Insert errors to cause malfunction of a critical infrastructure; 3: Leak information to an unprotected zone (for example from a privileged CPU to an unprivileged one). In this project we are interested in evaluating the validity of the property-based approach as a whole. In this project, we will evaluate several proposed methods, and avoiding false positives. We will apply the proposed property-based Trojan detection methods and check whether the methods identify regular logic as Trojans.

Background:Hardware design today bears similarities to software design. Often vendors buy and integrate code acquired from third-party organizations into their designs, especially in embedded/system-on-chip designs. The manufacturing task is usually outsourced as well to one of the few foundries. Currently, there is no way to determine if third-party designs or manufacturing contractors have built-in backdoors that can compromise security after deployment.

There are two approaches that may be used to detect Hardware Trojans. One is direct comparison with a golden model. However, such a model does not necessarily exist. Hence, an alternative approach is a property-based Trojan detection. Its underlying assumption is that the Hardware Trojans possess some unique logical or other properties that are not typical for the other parts of the design. Most of the properties proposed by the researches are derived from the hypothesis of a ‘dormant’ Trojan that most of the time does nothing, waiting for some trigger to start the action.

Project Description : In this project we are interested in evaluating the validity of the property-based approach as a whole. The current research proposes a method and then shows how it detects the synthetic Hardware Trojans from the synthetically constructed benchmarks. However, this is only part of the picture. Successful detection means also lack of false positives. In other words, ability to distinguish between the intended logic and the Trojan requires correct categorization of both types. In this project, we will evaluate several proposed methods, covered in a survey paper, for false positives. For this, we will use a few hardware benchmarks, such as cryptographic accelerators, CPU and SoC, apply the proposed property-based Trojan detection methods and check whether the methods identify regular logic as Trojans. Based on the result, we will propose enhancements that will minimize the false positive results.

Prerequisite : Digital Systems and Computer Structure – 044252

References:

An excellent introduction to this challenge can be found in:

https://spectrum.ieee.org/semiconductors/design/the-hunt-for-the-kill-switch

Additional material:

https://www.researchgate.net/profile/He_Li25/publication/295864273_A_Survey_of_Hardware_Trojan_Threat_and_Defense/links/5a3cbc02a6fdcc21d8791574/A-Survey-of-Hardware-Trojan-Threat-and-Defense.pdf