CSCI 6268/TLEN 5831 - Foundations of Computer and Network Security - Fall 2005
Course Information Sheet
Aug 23, 2005
You are responsible for everything on this handout. Please read it.
What's This Course About??
This course is about Computer and Network Security (duh).
We're going to learn a
fair bit about cryptography (though not at a low-level) and how it is used
to secure networks in various ways. You probably already know about protocols
like SSL/TLS, SSH, IPSec, and so forth, but we will look more in
detail at how these protocols work and how they are used. The course will
hopefully show you how to properly implement secure protocols using libraries
(learning how to invent your own new cryptography is another topic which will
not be covered). We will be using OpenSSL as our main library for programming
assignments.
Additionally, we will learn about fundamental concepts for secure coding,
including the avoidance of buffer overruns, safe programming practices,
and so forth. We will also touch upon some of the policy and legal
aspects of security.
My hope is that this course will be fun, will capture your interest, and will
make you aware of security issues when you're out there in the real world
writing software for the masses (if that's what you end up doing).
Meetings
TR 11:00am-12:15pm (Room ECCS 1B28, Call Number 84419)
Instructor
Grading
There will be occasional quizzes (20%), a project (20%), two
midterms (30%) and a final (30%).
We will have a quiz roughly
every other week to cover homework material and lectures; no pop quizzes...
I'll always warn you when they're coming.
Exams
The midterms will be on Sept 27th and Nov 8th. Both are in-class.
The final will be on Monday, December 12th from 4:30pm until 7:00pm.
It will be comprehensive, with an emphasis on the material covered since
the midterm.
Prerequisites
This course is intended for students with significant
experience in coding (C or C++), and with some experience with networks.
Ideally, you will have taken CSCI 4273 (Computer Networks) already. We
will do only a quick overview of basic networking protocols, so if this is
known to you, great; if not, either wait and take this class after you've
learned it, or expect to do some independent outside reading to get up to
speed. You should at least know the basics of TCP/IP, UDP and ICMP.
Textbook
There is no textbook from this class. Most of our reading will be papers,
notes, and book excerpts. Think of it this way: you don't have to spend
$150 for a textbook!
Course Web page
We will maintain useful information on the course
web page:
http://www.cs.colorado.edu/~jrblack/class/csci6268/f04
Visit the above page regularly to see what's new.
If you miss a handout, get it from here.
Make John Happy
There are several ways to make me happy:
- Come to my office only during office hours or with an appointment.
(I have a one-track mind and don't handle interruptions well; if
people are constantly dropping by without an appointment, I'll never
get anything done.)
- Don't try to ply me for more points.
(If there is an obvious grading error,
I'm happy to correct it immediately, but if you constantly argue
for more partial credit in some gray area, I will exhibit very
little patience.)
- Come to class on time. (I don't mind people coming in
late once in a while, but please don't make a habit of it: it's
disrespectful.)