Information Security

Information Security has become one of the biggest challenges of the 21st century. From viruses to attacks on our computers, it seems there is no rest. According to the Bureau of Labor Statistics, occupation in Computer Science is expected to grow at a 37% rate over the next 10 years "much faster than average" (by 200,000 new positions) while "information security is an increasing concern" due to the importance of the internet and electronic commerce so "more security professionals are needed to protect their systems".

The Computer Science Department offers several courses in this critical area, beginning with a freshman-level course on "safe computing":


CS 13401 User-Level Computer Security

This course covers the necessary skills for a user to clear a computer of malware (viruses, worms, etc.) and keep it malware-free. The course also covers other menaces due to modern technology, such as SPAM, phishing, and ID theft.

At the senior level, three courses provide an overview of information security and in-depth coverage of two areas:

CS 47205 Information Security

This course provides an overview and introduction to the field of information security, including such issues as network security, code security, preservation of confidentiality, integrity and availability in different contexts.

CS 4/53401 Secure Programming

(offered in Spring 2009 as CS 4/59995 ST: Secure Coding)

This course covers the mindset programmers need to make sure they don't open vulnerabilities in their programs. It covers such issues as buffer overflows, race conditions, formatting errors, and code walkthroughs and how to include safety in the design of the program.

CS 47221 Introduction to Cryptology

This course is a survey of traditional and modern cryptological devices, going from the Caesar Cypher, through DES and AES to assymmetric cryptosystems like RSA and Diffie-Hellman.

In addition to the security courses above, interested students may also want to consider CS 33223 Unix Tools, CS 45201 Computer Communication Networks, and CS 45231 Internet Engineering.