cs458 - Spring 2009


This class is an introduction to the fundamentals of computer and information security. The course focuses on algorithms and techniques used to defend against malicious software.

Topics include an introduction to encryption systems, operating system security, database security, network security, system threats, and risk avoidance procedures.

Prerequisites: CS-425 and CS-450.


Section 1 Section 2
Instructor Virgil Bistriceanu
Office hours Mon, Tue 5:30 pm - 6:15 pm
Office SB-214
Phone (312) 567-5146
Fax (312) 567-5067
e-mail bistriceanu@iit.edu
Lecture Tue 6:25 pm - 9:05 pm, SB-201
Teaching Assistant
  • Name: Xufei Mao (will grade PA-1, PA-3, and PA-5)
  • Office: SB-019
  • Office Hours: Tue, Wed 11:00am-12:00pm
  • Phone: 312-567-5869
  • email: xmao3@iit.edu
  • Name: Yanlong Yin (will grade PA-2, PA-4, and PA-6)
  • Office: SB-003
  • Office Hours: Mon, Wed 5:00pm-6:00pm
  • Phone: 312-567-5332
  • email: yyin2@iit.edu



  • Computer Security - Principles and Practice, William Stallings and Lawrie Brown, Prentice Hall, ISBN-10: 0136004245

Other books

  • The Web Application Hacker's Handbook: Discovering and Exploiting Security Flaws, Dafydd Stuttard, Marcus Pinto, Wiley, ISBN-13: 9780470170779
  • Hacking: The Art of Exploitation, Jon Erickson, 2nd edition, No Starch Press, ISBN-10: 1593271441
  • Exploiting Software - How to Break Code, Greg Hoglund and Gary McGraw, Addison Wesley, ISBN: 0-201-78695-8
  • The Art of Deception: Controlling the Human Element of Security, Kevin D. Mitnick, Wiley, ISBN-10: 076454280X
  • Introduction to Computer Security, Matt Bishop, Addison Wesley, ISBN: 0-321-24744-2


  • Homeworks: 10%
  • Midterm: 15%
  • Final: 25%
  • Programming Assignments: 35%
  • Class Presentation: 15%

Everything you have to turn in is due before midnight the day the work is due.

For late submittal there is a 10% per calendar day penalty.

Printers tend to be busy the day the assignments are due, don't let them ruin your grade!

All the work you submit must be individual.

Academic dishonesty will not be tolerated. You can find the academic honesty policy in the Student Handbook which can be downloaded here. You should read it until you fully understand the detail and are able to explain it to others.

Exams are open-book(s) open-notes.

The following grading scale will be used to determine your grade in this class:

  • A: 90 - 100
  • B: 80 - 89
  • C: 70 - 79
  • D: 60 - 69
  • E: 0 - 59 This is a failing grade!
To pass this class you will need to have a passing mark (60+) in each of the following:
  • Programming Assignments
  • Homeworks average
  • Presentation
  • Final

The overall average must be 60+ as well.

Please read this again since it is not your normal grading policy. Come grading day it won't matter that your overall average is above 60 if you have missing assignments or you failed to get at least 60 in your final, etc.

Class attendance and participation will help settle the borderline grades. Regular class attendance is important and students are expected to actively participate in class; questions and comments are always welcome.

Extra Credit

There are multiple ways you can receive extra credit in this class, here are some:

  • Take class notes: scan them and return them to your instructor after each class in PDF format. If you take notes electronically, then turn in to your instructor a copy of your notes, .txt, .odf, .doc, .pdf formats ok.
    • Maximum extra credit: 4 points that will be added to the average class score (scale from one to 100)
    • If you want to get this extra credit, then you'll have to commit to turning in notes for each class.
    • In addition, your instructor will have to confirm upfront that you are eligible for this extra credit since only one student in class can get it.
  • Recommend new programming assignments for this class. Your recommendation should be original and non-trivial. If you're not sure what original and non-trivial mean, then talk to your instructor.
    • Extra credit: 5 points per accepted recommendation. All extra credit will be added to your average class score (scale from one to 100).
  • Recommend problems to be included in the midterm or final. You'll get credit for submitting a good problem. Your submission should be original and non-trivial.
    • Extra credit: 2 points per accepted recommendation. All points you earn for your recommendations will be added to your average class score (scale from one to 100).
    • The credit will be doubled for each problem that's included in the exam.
  • Turn in (attach to your final exam) the paper for extra credit on topics assigned in class by your instructor. This assignment can boost your final exam mark by up to 10%.

Programming Assignments

Programming assignments are designed to improve your understanding of core concepts by implementing them. Feel free to use your favorite programming language or use this as an opportunity to learn new ones.

Class Presentations

The purpose of this section is for students to do some independent research work and present their findings to the class.

No later than 2/17/09, each student must choose a topic for the class presentation. Your topic must be approved by your instructor.

Topics must be chosen from current issues in Information Security.

Submit your request via email to your class instructor. Topic requests will be honored on a FIFO basis.

As a general rule, the sooner you submit the request, the more time you'll have to prepare it.

A draft of the presentation is due on 3/24/09, the week after the Spring vacation. There are two purposes to this:

  • Make sure you're on track with your work
  • Select the most promising presentations for live presentations

Your presentation must include notes for each slide, which notes include the detail related to each slide; if you prefer, you can produce a separate document that includes the detail of your presentation.

Allocate significant time to survey the IS topic you have selected. Do not wait until a few days before the presentation is due, chances are that if you do so, then you'll run out of time and will end up with a very poor mark in this section.

Presentations will be limited to 20' and will be followed by Q&A up to a total of 30'. Grading will consider both the content and the way the presentation is made to the class. Your peers will participate in the grading process and their opinion accounts for 40% of your mark.

If you are a student whose presentation hasn't been selected for one of the live presentations sessions or a student who takes the class remotely and cannot attend a live presentation, then you will have to record your presentation as if you were giving it in front of your peers and turn in a .mpeg movie together with all the other deliverables for the class presentation. Your presentation is due on the first day of student presentations as outlined in the Class Schedule.

In the movie we'll want to see:

  • Your face, at least in the beginning and at the end of the presentation
  • Slides
  • Synchronized sound

The presentation must be very well rehearsed; failure to properly prepare for the presentation will result in an extremely poor mark on the presentation.

The following grading sheets will be used for your class presentation.


Please be descriptive in the subject line when you email your instructor such that processing doesn't get delayed. At the very minimum you should indicate the class and the term, followed by a brief description of what is it that you want to communicate.

Examples of good subject lines for your email:

  • cs458, Spring 2009 - Hw1, part (i)
  • cs458, Spring 2009 - When will the grades be posted on the Blackboard?
  • cs458, Spring 2009 - Question about PA2

Class Schedule

Date Lecture Assignment Due
1/20/09 Security Overview  
1/27/09 Elementary Cryptography HW#1
2/3/09 Program Security PA#1
2/10/09 Protection in General-Purpose Operating Systems HW#2
2/17/09 Trusted Operating Systems PA#2
Select class presentation topic
2/24/09 Network Security (guest speaker) HW#3
3/3/09 Database and Data Mining Security PA#3
3/10/09 Midterm  
3/17/09 Spring Vacation -- no class  
3/24/09 Administering Security PA#4
Draft presentation due
3/31/09 The Economics of Cybersecurity  
4/7/09 Privacy PA#5
4/14/09 Legal and Ethical Issues  
4/21/09 Class Presentations -- Live presentations, Day #1 PA#6
All recorded presentations due
4/28/09 Class Presentations -- Live presentations, Day #2  
5/5/09 Class Presentations -- Live presentations, Day #3  
5/12/09 Final  

Your instructor reserves the right to change this schedule.

Important Events

Event Sections 1, 2
Last day to change/add/drop a class and receive full tuition refund 2/3/09
Deadline for topic selection for class presentation 2/17/09
Last day to remove incomplete grades 2/27/09
Midterm 3/10/09
Spring break (no classes) 3/16/09 - 3/21/09
Last day for official withdrawal 4/3/09
Last day of classes 5/9/09
Final 5/12/08, 7:30pm to 9:30pm, SB-201

For more important dates and detail go to the IIT site.


Unless otherwise stated all papers you turn in will be TYPED. No handwritten work is accepted.

Submit your work as a PDF document. This is the only acceptable format.

Each page will have a header as follows:

  • The left side: your name
  • Middle: page number and the total number of pages (ex. 2/5 indicates this is page 2 out of a total of 5)
  • Right hand side: name of the assignment (ex. Homework #2)

Each page will also have a footer:

  • the left hand side will contain the following text: cs458-section: Spring 2009 where section stands for the section you are in
  • the right hand side will contain the following text: Illinois Institute of Technology - Computer Science

Last update: Apr 16, 2009 Virgil Bistriceanu cs458 Computer Science

$Id: syllabus.html,v 1.8 2009/04/16 15:14:34 virgil Exp $