About this course
Examine security at the hardware and firmware level, where physical access, side channels, and constrained devices create distinct threats.
Performed a full hardware security assessment of an embedded device, mapping UART and SPI interfaces, dumping and reverse-engineering firmware with binwalk and Ghidra, extracting an AES key by differential power analysis on ChipWhisperer, then adding masking, constant-time fixes, signed updates, and debug-port lockdown.
Expected outcomes
- Perform simple and differential power analysis against a cryptographic implementation and recover AES key bytes using the Hamming weight leakage model, trace alignment, and key-byte hypothesis testing with ChipWhisperer.
- Extract embedded firmware via JTAG, UART, and SPI flash dumping with flashrom and binwalk, then reverse-engineer control flow and authentication logic using Ghidra and angr.
- Probe and exploit hardware debug interfaces using OpenOCD and BusPirate, characterize JTAG and SWD access, and apply debug-port lockdown strategies.
- Analyze secure boot chain integrity, TrustZone TEE boundaries, TPM 2.0 PCR attestation, and HSM key protection against FIPS 140-3 criteria using Renode for emulation.
- Execute fault injection scenarios including voltage glitching and clock manipulation, and design countermeasures such as voltage monitors, redundancy, and anti-rollback mechanisms.
- Construct a hardware threat model using STRIDE-for-hardware and TARA risk analysis, enumerate the embedded attack surface, and propose a PUF-based or TPM-backed secure key generation and update-signing design.
Key topics
- Side-channel attacks
- Secure boot & TPM
- Firmware analysis
- Embedded threat models
Theoretical foundations
The concepts and results this course rests on.
- side-channel attacks: simple power analysis (SPA), differential power analysis (DPA), timing attacks, and EM emanation as the physical leakage model
- the Hamming weight leakage model, trace alignment, and key-byte hypothesis testing underlying correlation power analysis
- secure boot chain and hardware root of trust: BootROM immutability, TrustZone TEE, verified boot stages, and chain-of-trust
- TPM 2.0 architecture: PCR registers, key hierarchy, remote attestation protocol, and the TPM 2.0 command set
- firmware extraction pipeline: serial debug console access, flash memory dump techniques, file system carving, and Ghidra static control flow graph analysis
- hardware debug interfaces: boundary scan (IEEE 1149.1 JTAG), SWD protocol, on-chip debugger adapters, and debug port lockdown strategies
- physical unclonable functions: manufacturing variation entropy, challenge-response pairs, and PUF-based key generation
- fault injection attacks: voltage glitching, clock manipulation, laser injection, and countermeasures including voltage monitors and redundancy
- hardware security modules: FIPS 140-3 levels, tamper-evident response, key ceremony procedures, and HSM API design
- embedded threat modeling: attack surface enumeration, STRIDE for hardware, TARA risk analysis, and mitigation mapping
Prerequisites
Course-specific prerequisites:
- Computer organization and architecture
- Operating systems
- C or embedded programming
Weekly schedule 13 weeks · lecture + practice
Students use AI assistants to accelerate the slow parts of a hardware assessment: scripting ChipWhisperer capture and DPA analysis in Python, summarizing Ghidra decompilation of dumped firmware, and generating glue to parse SPI dumps and logic-analyzer traces. They prompt the assistant to identify candidate hardcoded keys and update-verification flaws in disassembled code, to write the statistical key-recovery analysis over power traces, and to draft masking and constant-time rewrites of a leaky routine. AI also drives tool automation (flashrom, OpenOCD, tpm2-tools) and helps interpret glitching results, but students confirm every claimed leak or recovered secret on the real bench, because power and fault behavior is physical and the assistant cannot see the oscilloscope.
Student project
Teams perform a complete hardware security assessment on a target embedded device: extract firmware via JTAG and UART access, reverse-engineer the firmware in Ghidra to identify the authentication mechanism, execute a simulated differential power analysis attack on a reference AES implementation with ChipWhisperer, and propose and prototype a secure boot hardening design with cryptographic signing and debug-port lockdown.
Requirements
- Build a working system, not a set of disconnected exercises.
- Be original: a new system that solves a real problem, not a re-implementation of a tutorial or course demo.
- Show real depth: real data, real users or realistic load, and engineering trade-offs that are measured rather than assumed.
- Carry one running project from specification to a deployed, defensible result across the whole term.
- Work in a team of three or four and defend the design at each of the three presentations (weeks 5, 8, and 13).
Example projects
Assessment & grading
Grading is project-based, with no written exam. Teams of three or four present one running project three times.
| Component | What it covers | Weight |
|---|---|---|
| Project · Specification | Presentation 1 (week 5): problem, objectives, and architecture | 20% |
| Project · Interim | Presentation 2 (week 8): the working system demonstrated live | 30% |
| Project · Final | Presentation 3 (week 13): end-to-end demo with oral defense | 50% |
Tools & platforms
- ChipWhisperer: power-analysis and fault-injection platform
- Ghidra: firmware disassembly and reverse engineering
- binwalk: firmware extraction and analysis
- Saleae Logic: logic analyzer for bus sniffing
- flashrom: SPI flash dumping and writing
- OpenOCD: JTAG and SWD debugging
- QEMU: firmware emulation for dynamic analysis
- Bus Pirate: low-level bus interfacing
- tpm2-tools: TPM 2.0 experimentation and sealing
- radare2: binary analysis and patching
Free online courses
Existing free, video-based courses this course can build on, for self-study or as a teaching basis.
- CourseraHardware Security
In Hebrew · בעברית
- YouTube, ד"ר רועי יוזביץ' (אוניברסיטת אריאל)ARDUINO בעברית, ללמוד לתכנת בחינם (ד"ר רועי יוזביץ')
- YouTube, ד"ר רועי יוזביץ' (אוניברסיטת אריאל)קורס מיקרו-בקרים, אוניברסיטת אריאל (רועי יוזביץ')
Primary literature
Seminal works for advanced study.
References
Books and resources link to an online or publisher page.
- TextbookThe Hardware Hacking Handbook
- TextbookPower Analysis Attacks: Revealing the Secrets of Smart Cards
- TextbookPractical IoT Hacking
- DocumentationSP 800-147: BIOS Protection Guidelines
- DocumentationTPM 2.0 Library Specification
- DocumentationChipWhisperer Documentation
- PaperTiming Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems
Role in each concentration
| Concentration | Role |
|---|---|
| Intelligent Software Systems | Elective |
| Networking & Cyber Security | Core · Semester 2 |
| AI & Robotics | Elective |
| AI and Quantum Computing for Finance | Elective |
| Immersive Systems & Game Development | Elective |
| Defense Technologies & Autonomous Systems | Core · Semester 1 |