CSE 484 / CSE M 584: Computer Security (Autumn 2019)

Course Location and Time

Course Staff

Instructor: Tadayoshi (Yoshi) Kohno (yoshi@cs)

Teaching Assistants:

Email everyone (preferred and generally best method to reach staff): cse484-tas@cs.washington.edu

Emails to individual email addresses should include "484" in the Subject line, and please follow up if no reply after 24 hours (in case messages enter spam folders, etc).

Discussion Board

Piazza (check email for enrollment)

Office Hours

Optional Textbook

Foundations of Security: What Every Programmer Needs to Know, Daswani, Kern, and Kesavan, ISBN 1-59059-784-2

You can find it online through the UW Libraries here.


In this course, we will cover topics including: the "security mindset", threat modeling, software security, cryptography, malware, web security, web privacy, smartphone security, authentication, usable security, anonymity, physical security, and security for emerging technologies.

For more details, see the course schedule.


CSE 332 and CSE 351

You should have maturity in both the mathematics of computer science and in the engineering of computer systems. This means that you should: have a good understanding of data structures and algorithms; be comfortable writing programs from scratch in C and Java; be comfortable writing and debugging assembly code; and be comfortable in a command-line Unix development environment (gdb, gcc, etc). You should also have a good understanding of computer architecture, operating systems, and computer networks. Most importantly, you should be eager to challenge yourself and learn more!