CS 4830 - Network Security - Fall 2003

Course Information Sheet

Aug 25, 2003

You are responsible for everything on this handout. Please read it.

What's This Course About??

This course is about Network Security (duh). We're going to learn a fair bit about cryptography (tho 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, Kerberos, 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.

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).


TR 9:30am-10:45am (Room ECCR 1B08, Call Number 85049)



There will be occasional quizzes (20%), a project (25%), a midterm (25%) and a final (30%).

There will be homework assigned in this class, but it will not be collected. I will hand out solutions for you to check your work against when the "due date" for the homework arrives. 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.


This is a special topics course and I expect we'll have people with various backgrounds. However, this 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 how to write a simple TCP/IP or UDP client/server application using the normal system calls connect, accept, send and so forth.


There are two texts for this class:

Course Web page

We will maintain useful information on the course web page: http://www.cs.colorado.edu/~jrblack/class/csci4830/f03

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: