Trojans Flashcards
Hardware Trojan
A malicious, intentional addition or modification to the existing circuit
elements
Using Hardware Trojans to
- Change the functionality (e.g., deactivating authentication or
encryption) - Reduce the reliability (e.g., accelerate aging)
- Leak valuable information (e.g., bypassing the side-channel
protections, providing backdoors, etc
Hardware trojan Targets
Vulnerability of chips to add/delete/alterations of
circuit structure or through modification of
manufacturing process steps that causes
reliability issues in ICs in applications such as:
- Defense/military application
- Aerospace applications
- Civilian security-critical security
- Financial applications
- Transportation applications
General Structure of a Hardware Trojan
Trigger Logic is responsible for activation mechanism - Payload Logic is responsible to the effect - A hardware Trojan causes a malfunction by modifying signal S to S´ - Activated only under very rare conditions - Trojans are stealthy: it evades detection under conventional postmanufacturing test/validation process.
Insertion Phase- Specification phase:
Definition of system’s
characteristics
m For example, a Trojan changes the hardware’s timing
requirements
Insertion Phase- Design Phase
Design gets implemented for the target
technology
- Trojans might be in any of the components that aid the
design (third-party IP blocks and standard cells).
- For example, a standard cell library can be tampered
with Trojans
- Insertion during design»_space; HDL level Trojans
- Combinational and Sequential Trojans
insertion phase- Fabrication Phase
Creation of mask set
and use wafer to create mask
- Changing dopant concentration to increase the aging
(Time Bombs)
- Modifying dopant polarity
- Modifying the layout=chip functionality
m Insertion during fabrication»_space; Layout Trojans
Insertion Phase : Testing phase
Modifying automatic test pattern generators»_space; reduce chance
that trojan gets detected
Insertion Phase - Assembly
Assemble components on a PCB
- For example, adding unshielded wire»_space; electromagnetic
coupling»_space; side-channel leakage
Abstraction Level- System level:
Trojan can a be triggered by system component,
e.g. by specific ASCII input from keyboard
Abstraction Level - RTL level:
Manipulating RTL design, e.g., half rounds of
cryptographic implementation
Abstraction Level- Gate level
Trojan consisting of basic gates (AND, XOR, OR) that
monitor the chip’s inner signals
Abstraction Level - Transistor level:
insert, remove, change functionality, size»_space; delay and
reliability changes
Abstraction Level - Physical level:
change, insert, remove wires»_space; add/remove
connections, change timing
Activation Mechanisms
Always on
Triggered
- Internally triggered: time-based or physicalcondition-based; e.g. counter, temperature
threshold
- Externally triggered: triggered by user-input or
component-output