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
- Introduction to ECE 4156/6156 with a focus on security and trust in digital design of VLSI circuits
- Cryptography Part I
(original
slides)
- A brief introduction to cryptography including the shift cipher.
- Introduction to SHA-2
(original
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
(original
slides)
- Cryptography Part III
- Cryptography Part IV
- CPA-secure encryption and encryption modes.
- Introduction to the first lab in ECE 4156/6156
- Cryptography Part V
- Introduction to secret sharing.
- Cryptography Part VI
- A brief introduction to Diffie-Hellman Key Exchange.
- Cryptography Part VII
- CCA, HMAC and Unforgeability.
- RSA
- Asymmetric cryptography using RSA.
- Authentication Part II
- More on entity authentication.
- Advanced Encryption Standard
- Cryptography Part VIII
- 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/