ECE: Electrical & Computer Engineering

ECE 5520: Secure Hardware Design

Catalog Description:Design and implementation of secure hardware at multiple levels of abstraction, covering cryptographic hardware primitives, cryptographic modules, and trusted platforms. Reverse engineering of cryptographic modules using passive attacks, active attacks, and cryptanalytic techniques. Countermeasures against reverse engineering. The course uses case studies and literature surveys to reflect on the state-of-the-art in secure hardware implementation. Cryptography theory is covered on an as-needed basis.

Syllabus (Spring 2010)

This course is based in part on the following references.

Additional References:

Lecture 1: Introduction

Lecture 2: Random Number Generators (Principles of Design)

Lecture 3: Random Number Generators (Testing and Examples)

Lecture 4: Prime Field Arithmetic: Part 1: Introduction

Lecture 5: Prime Field Arithmetic Part 2: Montgomery Multiplication & Exponentiation

Lecture 6: Binary Field Arithmetic Part 1: Introduction

Lecture 7: Binary Field Arithmetic Part 2: Faster Multiplication

Lecture 8: Elliptic Curve Cryptography: The Point Multiplication

Lecture 9: Elliptic Curve Cryptography: Efficient Implementation

Lecture 10: Hash Functions: Design

Lecture 11: Hash Functions: Implementation

Lecture 12: Block Ciphers: Overview

Lecture 13: Block Ciphers: AES

Lecture 14: Basics of Side-channel Analysis

Lecture 15: Advanced Side-channel Analysis

Lecture 16: Fault Attacks

Lecture 17: Countermeasures against SCA: Hiding

Lecture 18: Side Channel Countermeasures: Masking

Lecture 19: ault-Attacks and Side-channel Analysis on ECC

Lecture 20: Secure Processors: Three Examples