- Fall '17: ENPM809A: Applied Cryptography
- Fall '16: CMSC 456: Introduction to Cryptography (undergraduate)
- Spring '16: CMSC 456: Introduction to Cryptography (undergraduate)
- Fall '14: CMSC 456: Introduction to Cryptography (undergraduate)
- Fall '13:
- CMSC 456: Introduction to Cryptography (undergraduate)
- CMSC 858K: Introduction to Secure Computation

- Fall '12:
- CMSC 456: Introduction to Cryptography (undergraduate)
- CMSC 498L: Cybersecurity Lab

- Spring '12: CMSC 414: Computer and Network Security (two sections)
- Fall '11: CMSC 652: Introduction to Complexity Theory [lecture notes available]
- Spring '11: CMSC 858K: Introduction to Cryptography (graduate)
- Fall '10: CMSC 456: Introduction to Crytptography (undergraduate)
- Fall '09: CMSC 414: Computer and Network Security [slides available]
- Fall '08 -- Spring '09: Sabbatical
- Spring '08: CMSC 414: Computer and Network Security [slides available]
- Fall '07: CMSC 456: Introduction to Cryptography (undergraduate)
- Spring '07: CMSC 858K: Introduction to Cryptography (graduate)
- Fall '05: CMSC 652: Introduction to Complexity Theory [lecture notes available]
- Fall '04:
- CMSC 456: Introduction to Cryptography (undergraduate)
- CMSC 414: Computer and Network Security [slides available]

- Spring '04: CMSC 858K: Advanced Topics in Cryptography [lecture notes available]
- Fall '03: CMSC 414: Computer and Network Security [slides available]
- Spring '03: CMSC 858K: Introduction to Cryptography (graduate)
- Fall '02: CMSC 456: Introduction to Cryptography (undergraduate) [lecture notes available]

- Spring '02: Computability and Models of Computation
- Summer '01: Computability and Models of Computation
- Spring '01: Introduction to Cryptography (graduate version)
- Spring '00: Introduction to Programming in C
- Summer '99: Introduction to Programming in C