You are on page 1of 2

CS 77?/87?

: Network Security: Concepts, Protocols and Programming


This course deals with the basic protocols, techniques and programming issues
to secure internet applications and traffic. Topics include: Cryptographic
algorithms tools and concepts; Secure Socket Layer (SSL), Transport Layer
Security (TLS) and IPSec protocols; Securing Internet Applications: HTTP, SMTP,
UDP and multicast; Hands on socket programming using C and Java.
Prerequisites: CS 455/555.

Detailed Topics
1. Cryptographic Algorithms, Tools and Concepts: The Internet Threat Model;
Asymmetric (Public/Private) Encryption; Symmetric Encryption: Stream & Block
Ciphers; Digest Algorithms; Key Establishment Digital Signature.
2. Secure Socket Layer (SSL) and Transport Layer Security (TLS) Protocols:
SSL/TLS Specification Language; Handshake Messages; Record Protocol; Key
Derivation; Change Cipher protocol; Record Protocol; Alerts and Closure Protocol;
Session Resumption; Client Authentication; Rehandshake; SSL/TLS Security
analysis and assessment; SSL/TLS Performance.
3. IPSec: The new Security Standard for Internet: IPsec Architecture; ESP:
Encapsulating Security Payload; AH: Authentication Header; IKE: Internet Key
Exchange; Deployment and Implementation Issues.
4. Securing Internet Applications: Programming Issues; Secure Client/Server socket
applications in C and Java; HTTP and SMTP over SSL/TLS; S-HTTP and S/MIME
protocol; Securing UDP and IP Multicast applications.
Textbook:

SSL and TLS: Designing and Building Secure Systems, by E. Rescorla,


Addison Wesley, 2001.

Supplementary texts:

Network Security: Private Communications in a Public World, by C.


Kaufman, R., Perlman and M., Speciner, Prentice-Hall, 1995.

IPSec: The new Security Standard for the Internet, Intarnet and Virtual
Private Networks, by N. Doraswamy and D. Harkins, Prentice-Hall, 1999.

You might also like