| Instructor | Christoph L. Schuba, visiting instructor Sun Microsystems Laboratories 901 San Antonio Road Palo Alto, CA 94303 +1 (650) 336-1241 (voice) +1 (650) 336-1396 (fax) |
|||||
|
||||||
| Lecture |
CS 286.2 - Introduction to Computer and Network Security Course registration number: 19903 MW 7:00pm - 8:15pm; MH 234 (MacQuarrie Hall) - Click here for SJSU campus maps First lecture: Wed., Aug. 26 1998
No lecture on Labor Day: Mon., Sep. 7 1998
Last day to add/drop classes: Wed. Sep. 23 1998 | |||||
| Office hours |
MW 6:20pm - 6:55pm (before class), or by appointment or chance;
Duncan Hall 209; +1 (408) 924-5286 | |||||
| Course statement |
The spectacular growth of electronic commerce on the Internet and
frequent public reports of security breaches in highly visible
computer systems have created an acute awareness of computer
security issues. Daily activities, such as communicating with
colleagues, banking, and retrieving grade reports are becoming
increasingly reliant upon computer systems and communication
networks.
This course offers an introduction to topics in computer and network security. The basics of the theory behind cryptography are covered. The course teaches how to use cryptography in support of security services. It explains the types of security services needed in distributed systems and computer networks and finally discusses selected practical aspects of and current public issues in computer security and cryptography. The course is intended for graduate students who are interested in learning the basic concepts, principles, and mechanisms that will allow them to identify, understand, analyze, and perhaps solve security problems in computer and distributed systems. | |||||
| Required textbook | ||||||
| Reference books |
| |||||
| Computers | See Computer Resources, as well as rules and policies of use and student account policies. | |||||
| Course handouts | Electronic resources, such as course handouts, programs, and scribe notes will be made available on the course Web page under http://www.mathcs.sjsu.edu/faculty/schuba/index.html | |||||
| Class mailing list |
Please use the mailing list for posting questions and answers that are of general interest to everybody. The instructor will send class announcements about homework, exams, etc. to this list, so it is important that you check your e-mail frequently, or you may miss an important announcement. | |||||
| Homework | Homework assignments will consist of several written
assignments (problem solving) and at least one programming
assignment.
All written and programming assignments are due at the beginning of class on the due date stated on the homework (unless otherwise noted). Assignments will be graded as quickly as possible - usually within three class periods. Assignments can be submitted hand written or type set. They must be legible and carry the student's name and ID number on each submitted page. If pages are stapled, name and ID on the first page are sufficient. All electronic submissions (program source code, make files, scribe notes, etc.) must have name and ID in a comment block at the beginning of each file. Any assignment that cannot be read will score zero points. For example, variables, factors, and exponents must be distinguishable. A reasonable standard of English expression and grammar is also required. The same rules apply to exams. | |||||
| Reading assignments |
There will be frequent reading assignments in the required textbook to supplement material taught in class. | |||||
| Programming assignments |
Algorithms used must be essentially correct. Programming
assignments may require the use of standard interfaces to
facilitate automated testing. Details will be given with the
assignments. If programs do not work correctly, partial credit
may be given if substantial progress has been made towards the
goal of the assignment.
Although this is not a software engineering course, programs must exhibit high standards of programming style, structure, layout, and documentation. Efficient algorithms and appropriate data structures should be used. It must be evident how the code was tested, either through documentation of code testing, or through the inclusion of test programs or self-checking code. Comments in the code should be helpful and enlightening. This is especially important if a submitted program does not run. Note that correct programs may lose points for failing to live up to the outlined programming standards. See Handouts for an example assignment and solution. | |||||
| Prg assigment turn-in procedure |
See Handouts for a description of the electronic turn-in procedure. | |||||
| Paper presentation and Q&A |
Every student is required to present a summary report on a
previously published research paper once during the semester,
similar to a brief book report. Each presentation is followed by
a brief question and answer session, where the instructor and the
students in the class can ask questions of the presenter. Copies
of the respective papers will be made available to the
presenters.
Presentations must be kept under 10 minutes, ideally even shorter. Students should restrict their presentations to explain the core concept of the chosen paper and its implications. 10 minutes are enough time for that. The papers are chosen to supplement the course material, therefore exam questions can cover this material. This assignment offers students the opportunity to study a topic in the course in more depth. It requires understanding the material and exercising critical thinking in exploring its consequences. Furthermore, presentation and defense of results through Q&A are valuable skills to learn in graduate school. Papers and the associated presentation times will be randomly assigned to students. Students may exchange their presentation dates (incl. paper, of course) with other students, for reasons such as scheduling conflicts or special interest in certain papers. Please inform the instructor of any such exchanges ahead of time. | |||||
| Lecture scribe notes |
Every student is required to write up the lecture notes for
at least one lecture and send them to the instructor as HTML
(preferred) or ASCII text via electronic mail. Please submit
figures as .gif or .jpg files. A sample will be made available at
the beginning of the course. The scribe notes will be published
on the course Web page. These notes will serve as a study
resource for all students taking the course.
To make the scribe notes available in a timely fashion, they are due at 5pm, two days after the recorded lecture, i.e., lecture notes for Monday lectures are due the same week Wednesday 5pm, lecture notes for Wednesday lectures are due the same week Friday 5pm. Again, the order will be randomly assigned. | |||||
| Course project | There will be a substantial programming project in the
second half of the course. Students will have approximately five
weeks to work on their project - in groups of two or three
students. A project provides the opportunity to explore and study
one of the many topics that were presented in class in some
depth.
Students must propose their own project. To do that, a student must write up a project proposal and turn it in to the instructor for approval at or before the day the midterm is given. The proposal must contain a description of the project and a list of exact deliverables. It is not acceptable to propose a project that is re-used, i.e., is not newly created from scratch for this course. Here is a list of possible projects:
| |||||
| Extra credit | Extra credit can be earned throughout the course in various
ways: for example, homework assignments can contain an additional optional
problem and project descriptions can ask for optional
features to be implemented. If there are more lectures than
students in the class, extra credit is given to students who
write up scribe notes for additional lectures.
Extra credit is not counted directly towards grades. It will count in the student's favor in borderline cases. It is not wise to skip regular assignments and do the extra credit instead. Failure to turn in extra credit assignments will never count against the student's grade. Such assignments are provided to give students an opportunity to work on additional, interesting and often very challenging problems. | |||||
| Exams |
In-class quizzes may be given at the instructor's discretion.
Midterm - Monday, October 19 1998, in class
Final examination - Monday, December 14, 7:45pm-10:00pm, MH 234
No early or late exams will be given. Exams are closed book. There will be no makeup exams. If an exam is missed, it will score zero points. Hints on how to study for exams will be provided closer to the exam dates. | |||||
| Grading |
The course is graded on a curve with the average grade a B+. In
other words, everyone starts out with a B+. It requires some
effort to maintain this grade, and much more effort to improve on
it. It does not require much effort to let this grade slip.
Here is how the course grade is put together from the various
assignments and examinations:
My grading system is designed to be a fair evaluation of the degree of success that students have obtained in demonstrating their mastery of the material covered. I will maintain high standards in grading, simply because good students deserve to receive higher marks than average. | |||||
| Attendance | Attendance of all lectures is strongly recommended, yet not strictly required. The online lecture notes can be helpful in making up for a missed lecture, but obviously they will not capture everything said or discussed in class. | |||||
| Late assignments | In general, late submission of homework is not acceptable.
If a delay is foreseeable because of very compelling reasons, it is wise to contact the instructor well before the assignment deadline is missed. If the instructor accepts a late assignment, it will be penalized (10\% per day). No assignments are accepted more than one week after the due date. They are counted as if they were not turned in. | |||||
| Academic integrity |
The instructor will treat all students as professionals. Students
are expected to be honest and act according to the following
rules of conduct.
Assignments may be discussed with classmates or with the instructor to get a critique of ideas and better understanding of the concepts behind assignments. Students are encouraged to consult the library or online resources as necessary. It is OK to seek help while debugging a program once it is written. Students are encouraged to collaborate in preparations for paper presentations and the writing of scribe notes. However, credit will only go to the presenter/submitter. At the same time, all other homework, programming assignments, and exam work submitted for credit must be the student's own work. In particular, the solutions, ideas, and words submitted must not be shared with classmates. Homework solutions must be written by each student. Homework solutions may neither be read nor copied by other students. Programs must be created, typed, and documented by each student. Programs must be solely their creation. It is recommended to save all handwritten notes and printouts generated until the end of the semester. This is a protective precaution for the authors of work in the event of plagiarism or loss of submitted work. Any missing output should be reported to the instructor immediately. Plagiarism and cheating are very serious offenses and will not be tolerated. Any unproper collaboration is considered cheating and will be dealt with according to University policies. Also refer to p. 430 in the SJSU Course Catalog 1998-2000. The instructor is available to clarify these rules. | |||||
| Questions? |
In case of questions, the following resources are available:
|