Teaching
- Security and Fairness of Deep Learning (Spring 2018)
- Applied Cryptography (Spring 2017, 2016)
- Foundations of Privacy (Fall 2017; earlier offerings Fall 2013 - 2016)
- Principles of Imperative Computation (Spring 2014)
- Foundations of Security and Privacy (Fall 2011; earlier offerings: Fall 2009, Fall 2007)
- Secure Software Systems (Spring 2013, Fall 2010, Fall 2008)
- Introduction to Programming Language Theory (Stanford, Winter 2007)