Course Lecture Plan


Lectures Topics




Thu 1/4

Class overview, motivation and overview of computer security


Stallings, Chapter 1


Tue 1/9

Cryptography: symmetric encryption (DES/AES algorithms)


Stallings, Chapter 2.1-2.3, 3.1-3.3, 5.1

KPS, Chapter 3.1-3.3

Project 1 out. 

Thu 1/11

Cryptography: asymmetric encryption (RSA)


KPS, Chapter 6.1-6.3

Stallings, Chapter 9

Homework 1 out. 

Tue 1/16

Cryptography: one-way hashing and message digests (MD5, SHA-1)


KPS, Chapter 5.1-5.2, 5.5-5.6                                                              

Stallings 11.4-11.5, 12.1-12.2


Thu 1/18

User Authentication


KPS, Chapter 9.6-9.7, 10.1-10.3, 10.8, 10.10,

Stallings Ch. 18.3

Password Security: A Case History, R. Morris and K. Thompson, Communications of ACM, vol.22 no.11, 1979.

Project 1 in.

Tue 1/23

Distributed system authentication

Stallings Ch. 19

Homework 1 in.  

Project 2 out.

Thu 1/25

Internet vulnerability: malcode overview, viruses, worms


Stallings Ch. 19

A Taxonomy of Computer Worms, N. Weaver, V. Paxson, S. Staniford, and R. Cunningham,  the First ACM Workshop on Rapid Malcode (WORM), 2003.

Homework 2 out.

Tue 1/30

Internet vulnerability: denial of service (DoS)

Securing the Internet: intrusion detection systems


KPS 23.6

1.      Detecting SYN Flooding Attacks, H. Wang, D. Zhang, and K. G. Shin, in Proc. of IEEE INFOCOM, 2002

2.      Change-Point Monitoring for Detection of DoS Attacks,  H. Wang, D. Zhang, and K. G. Shin, in IEEE Transactions on Dependable and Secure Computing, Vol. 1, No. 4, December 2004.


Thu 2/1

Securing the Internet: intrusion detection systems (cont’d), Snort IDS.



Stallings Ch. 18.2


Tue 2/6

Review for Midterm



Homework 2 in.

Thu 2/8


Tue 2/13

Midterm grading review / Project 2 discussion




Thu 2/15

Securing the Internet: firewalls, VPN


1.     Handout from Ch. 9 of “Firewalls and Internet Security”

2.     Stallings 20.1


Tue 2/20

Securing the Internet: IP Security


KPS Ch. 17

Stallings Ch. 16

Project 2 in. Project 3 out. 

Thu 2/22

Software security: principles

Case study: sendmail vs. qmail


1.       Basic Principles Of Information Protection, from “The Protection of Information in Computer Systems”, by J. H. Saltzer and M. D. Schroeder

2.       Qmail handbook, Ch. 1, Introduction to Qmail

Homework 3 out.

Tue 2/27

Compiler prime on run-time program environment.

Software security: buffer/heap overflow and its defense.




1.       Smashing The Stack For Fun And Profit, Aleph One.

2.       Buffer Overflows: Attacks and Defenses for the Vulnerability of the Decade, Crispin Cowan, et al.


Thu  3/1


Tue 3/6

OS security: overview, access control, setuid, etc.


1.  Advanced Programming in the Unix Environment, Richard. Stevens, Addison-Wesley, 1992.  Ch 8.10 Changing User IDs and Group IDs

2. Security in Computing, Charles Pfleeger, Shari Lawrence Pfleeger, 3rd Edition, Prentice Hall, 2002. Ch. 5.4 Trusted Operating System Design

 3. Modern Operating Systems, 2nd Ed., A. S. Tanenbaum, Prentice-Hal, 200. Ch. 9.6 Protection Mechanisms


Thu 3/8

Review for final



Homework 3 in.

Project 3 in.



  1. KPS = Network Security - Private Communication in a Public World, by Charlie Kaufman, Radia Perlman and Mike Speciner, 2nd Edition, Prentice Hall, 2002.
  2. Stallings = Cryptography and Network Security, by William Stallings, 4th Edition, Prentice Hall, 2006.
  3. The lecture notes have incorporated course materials developed by Dan Boneh (Stanford), Wenke Lee (Georgia Tech), David Lie (U Toronto), Aleph One, Martin Roesch (Sourcefire Inc.), and David Dittrich (University of Washington).
  4. .