CSE 127: Computer Security

CSE 127

Schedule: TTh 12:30-1:50 CSB 002

Instructor: Stefan Savage
Office hours: M 4pm-5pm or by appt, CSE 3106

Teaching Assistants:
Sarah Meiklejohn
Office hours:Tues 3pm (CSE B260A)

Tristan Halvorson
Office hours:Fri 3pm (CSE B240A)


This course focuses on computer and network security, covering a wide range of topics on both the "defensive" and "offensive" side of this field. Among these will be basic cryptography and cryptographic protocols, code security and exploitation (buffer overflows, race conditions, SQL injection, etc), access control and authentication, covert channels, protocol attacks, firewalls, intrusion detection/prevension, viruses/worms and bots, spyware and phising, denial-of-service, privacy/anonymity, and computer forensics. The goal of the course is to provide an appreciation of the fundamental challenges in designing and implementing secure systems as well as and understanding of the base technologies and threats in today's intereconnected environment.

To complete the projects in this course, you will need the ability to develop software programs using the C language.  If you have not used C recently, you may want to refresh your knowledge using one of the many good books on the topic.  In particular I recommend the classic, The C Programming Language, by Kernighan and Ritchie, because it is short and simple.

Finally, this term we will be using Piazza for class discussion. Rather than emailing questions to the teaching staff, please post your questions on Piazza; this will keep the discussions organized and let everyone benefit from the answers. We may also use it for announcements, so be sure to sign up. Find our class page at https://piazza.com/ucsd/fall2012/cse127.