MonWed 02:40-3:55 PM
Room 1127 Mudd

Computer security concepts and mechanisms; measures employed in countering such threats. Concepts and tools available in order to assume an appropriate security posture. Foundations of security. Identification, authentication, authorization. Software design for security and assurance. Hardware assists. Security architecture; design for security. Security tradeoffs.

  • What is security?
  • Security models (Bell-Lapadula, Biba, etc.)
  • Designing for/with security
  • Identity, authentication, authorization, audit
  • Device and software authentication
  • Assurance
  • Confinement
  • Software security
  • Hardware features
  • Random number generators
  • Biometrics
  • Security for large-scale distributed systems
  • Security architecture
  • Engineering tradeoffs




John Koh koh@cs... Tuesday 1:30pm–2:30pm
Prateek Gupta pg2512@... Sunday 11am–12pm
Haoxiang Xu hx2185@... Friday 2pm–3pm
Their office hours are in the
IA room: Mudd 122A.


You must be able to program in C or C++. If you can't, you should seriously consider dropping this class.

You should have a decent knowledge of computer architecture. Operating Systems (W4118) and Introduction to Cryptography (W4261) are helpful but not required. (Note: the official bulletin says that W4118 is a prerequisite. Ignore that...)

Homework Policy

There will be four or five homework assignments, each consisting of a written part (30%) and a programming part (70%). Three or four of the homeworks will be part of a single, large project.

Unless otherwise instructed, all homeworks must be written in C or C++. Java is not acceptable; don't bother asking.

Late assignments are subject to increasing penalties. There are no grace days or "free lates". See the slides from the first class for details.


Homeworks 48%
Midterm 21%
Final 31%
The percentages will be adjusted slightly if there are five homework assignments.

All exams are open book. This means that there won't be any "define Foo" questions. Most questions will ask you to think and to integrate material from different lectures.

Final grades are curved.

The tentative date for the midterm is Wednesday, October 19. The final exam will be at the date and time scheduled for this class by the registrar.


Unless there is significant sentiment to the contrary, I will not use Courseworks except for the gradebook and the discussion list. All lectures and homework assignments will be posted on this web site.