ECE 4156/6156 HARDWARE-ORIENTED SECURITY AND TRUST
This directory contains information regarding general lecture material for ECE 4156/6156 taught at Georgia Tech.
The course textbooks are Introduction to Modern Cryptography by Katz and Lindell, second edition, CRC Press, 2015, and Handbook of Applied Cryptography by Menezes et al., CRC Press, 1996.
Lecture notes explained in class will be the primary source of material for homeworks, labs and tests. Please note that important parts of the explanations may not be on the slides initially, and thus alone the slides will typically be insufficient to learn the material. In a few cases, new material may be written by hand and described in class with no associated preprepared lecture notes. The expectation is that you will write down and learn all explanations given in class. Pdf versions of lecture slides, plus any supplementary electronic material prepared by the instructor of this course (ECE 4156/6156, taught at Georgia Tech by Assoc. Prof. Vincent Mooney), will appear below week by week as the class progresses (the links will begin to appear after the first day of class in January, 2024). Please note that some of the lecture topics below are quite large and may be broken into multiple lectures during the semester as the slides are prepared for class.
- Introduction
(Lecture 1 original
and marked up
slides)
- Introduction to ECE 4156/6156 with a focus on security and trust in digital design of VLSI circuits
- Cryptography Part I
(Lecture 2 original
and marked up
slides)
- A brief introduction to cryptography including the shift cipher.
- Introduction to SHA-2
(Lecture 3 original
and marked up
slides)
- A brief introduction to one-way hash functions and SHA-2
- Introduction to Authentication Terminology
- A brief introduction to authentication and associated terminology
- The Merkle-Damgard Construction
- Use of the Merkle-Damgard Construction in Collision Resistant Hashes.
- Cryptography Part II
(Lecture 6 original
and marked up
slides)
- Cryptography Part III
(Lecture 7 original
and marked up
slides)
- Cryptography Part IV
(Lecture 8 original
and marked up
slides)
- CPA-secure encryption and encryption modes.
- Labs Overview
- Introduction to the first lab in ECE 4156/6156
- Cryptography Part V
(Lecture 9 original
and marked up
slides)
- Introduction to secret sharing.
- Cryptography Part VI
(Lecture 10 original
and marked up
slides)
- A brief introduction to Diffie-Hellman Key Exchange.
- Cryptography Part VII
(Lecture 11 original
slides)
- CCA, HMAC and Unforgeability.
- Cryptography Part VIII
(Lecture 12 original
slides)
- Advanced Encryption Standard
(Lecture 13 original
slides)
- RSA
(Lecture 14 original
slides)
- Asymmetric cryptography using RSA.
- Authentication Part II
- More on entity authentication.
- Cryptography Part IX
- Testing for Randomness
- NIST Test Suite for Random Number Generation
- Physically hard for yoU to clone Functions (PUFs) Part I
- A brief introduction to PUF notation
- PUF construction classes
- Intra- vs. inter-chip Hamming Distance
- PUFs Part II
- PUF types and physics
- PUF entropy sources
- Random Access Memory
slides)
- Some notes by Professor Mooney (and Prof. David Schimmel) on random access memory from ECE 6130
- PUFs Part III
- PUFs Part IV
- Lecture notes borrowed from other universities.
- PUFs Part V
- More lecture notes borrowed from other universities.
- Hazards
- Some notes by Professor Mooney (and Prof. David Schimmel) on logic hazards from ECE 3150 (formerly ECE 3060)
- Sequential Systems
- Some notes by Professor Mooney (and Prof. David Schimmel) on clock based systems and metastability from ECE 3150 (formerly ECE 3060)
- PUFs Part VI
- Lecture notes and associated paper borrowed again from other universities.
- PUFs Part VII
- Lecture notes borrowed yet again from other universities.
- Hardware Trojans I
slides)
- Lecture notes borrowed from other universities.
- PUFs Part VIII
- A brief introduction to PUF scenarios, motivation and benefits.
- PUF metrics & attacks including machine learning
- Practical considerations including current status
- Architecture Flaws Part I
-
Advanced Authentication
- Message Authentication Code (MAC) design
- Entropy & randomness
- Multi-party authentication
-
Modern Cryptography
- Data privacy
- Secret sharing
- VLSI design of cryptographic hardware
- AES, ECC and Keccak SHA
-
Architecture Flaws Part II
- Authentication Part III
- A brief introduction to PUF scenarios, motivation and benefits.
- FPGA Logic Design
- Some notes from another class project taught by Professor Mooney. These FPGA notes are meant to help understand HELP.
- PUF-based Authentication (PUFs Part V)
- Lecture notes borrowed from other universities.
-
Hardware and Software Vulnerabilities
- Common weakness enumerations
- Secure boot
- Timing attacks
- Countermeasures in hardware
-
Hardware Attacks
- Hardware Trojans (HTs)
- Reverse engineering
This web page is http://mooney.gatech.edu/Courses/ECE4156/lectures/