CSC/ECE 574 Computer and Network Security

Security policies, models, and mechanisms for secrecy, integrity, and availability. Basic cryptography and its applications; operating system models and mechanisms for mandatory and discretionary controls; introduction to database security; security in distributed systems; network security (firewalls, IPsec, and SSL); and control and prevention of viruses and other rogue programs. 3 credit hours.

 
   
   
Prerequisite
 

An undergraduate course in operating systems, and a course in networking. One year experience programming. Discrete math, linear algebra, probability and statistics at the undergraduate level.

 

Course Objectives  

The student will:

  • Break some simple ciphers using known techniques
  • Understand and be able to implement DES, Triple-DES, AES, RSA, Diffie-Hellman, DSS
  • Be able to implement ECB, CBC, OFB, and CFB chaining modes
  • Implement a keyed hash using MD5 and SHA-1, and implement HMAC
  • Know the common attacks on cryptographic standards and how likely those attacks are to succeed
  • Understand the mathematics behind public key crypto and AES
  • Understand and be able to use zero-knowledge proof schemes like Fiat-Shamir
  • Know the tradeoffs behind different methods of user authentication, and requirements for secure use of passwords, biometrics, and tokens
  • Know the requirements for secure authentication / key negotiation protocols, how to identify and avoid weaknesses
  • Understand and be able to analyze and use correctly Kerberos v4 and v5
  • Understand and be able to analyze and use correctly IPSec and IKE v2
  • Understand and be able to analyze and use correctly SSL / TLS
  • Be able to generate, acquire, and validate digital certificates, understand the problems of PKI, including certificate revocation
  • Understand the tradeoffs between mandatory and discretionary access control, know how to use ACLs and capabilities, understand and be able to use correctly the Biba and BLP information flow models
  • Understand and be able to use properly firewalls and intrusion detection systems, and know what their limitations and weaknesses are
  • Understand basic software weaknesses and how to avoid those weaknesses in programs

 

Course Requirements  

HOMEWORK: 6 homeworks

EXAMINATIONS: 3 exams

SOFTWARE REQUIREMENTS: some programming required, using any platform

PROJECTS: 1 project, individualized

 

Textbook  

Charlie Kaufman, Radia Perlman, Mike Speciner, Network Security: Private Communication in a Public World, 2nd Edition, Prentice Hall, ISBN: 0130460192


Computer and Internet Requirements  

NCSU has recommended minimum specifications for computers used for classes. Depending on your computer needs, we recommend your computer meet or exceed the following minimum specifications below.

PCs must have an Intel-compatible 1 GHz processor, 512 MB RAM, 60 GB hard drive with 1 GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min.) video adapter, sound card, and speakers. The operating system should be Windows XP Pro. Real One Player Basic (available free online) and high speed Internet connection such as cable, DSL, T1 or LAN will be required for EOL courses.

MAC users must have a G4 processor with firewire and USB factory built-in, 512 MB RAM, 60 GB with 1GB free space available, 256 Color Display, CD-ROM drive, 1024x768 (min) video adapter, sound card, and speakers. The operating system must be MacOS 10.4 (minimum) along with the above RealOne and Internet specifications above.

For more detailed information on computer specifications and recommendations, please refer to our website at: http://engineeringonline.ncsu.edu/currentstudents/computeraccess.htm

 

Instructor  

Dr. Douglas S Reeves, Professor
Engineering Bldg II (COE II) 3-264, Box 8206
NCSU Campus
Raleigh, NC 27695

Phone: 919-515-2044
Fax: 919-515-7896
EMail: reeves@eos.ncsu.edu
Web Site: http://reeves.csc.ncsu.edu