East Carolina University
Department of Computer Science

CSCI 4190
Cryptography and Information Security
Standard Syllabus


3 credits Prepared by K. Gopalakrishnan, June 2020

Catalog entry

P: CSCI 3650; RP: CSCI 3584. Study of private key and public key cryptographic techniques that enable secret communication, message authentication and user identification.

Course summary

The advent of the global Internet has brought about a significant change in the way people communicate and do business. Yet as this global village expands, so does the number of less than honest citizens. Furthermore, much of the hardware and software that constitutes the computer systems and the Internet was designed with only the trustworthy user in mind. As a result, intruders can invade the privacy of network communications as well as read or alter stored information.

Cryptographic techniques provide the foundation using which the security and privacy problems of computers and networks could be dealt with. The fundamental objective of cryptography is to enable two people to communicate over an insecure channel in such a way that an opponent cannot understand what is being said. Other objectives of cryptography include (but, not limited to) ensuring the authenticity of messages and the identity of the users.

This course will be focused on the core areas of cryptography and will be organized into two parts: private-key cryptography and public-key cryptography. In the first part, we will discuss some classical ciphers and cryptanalysis of them, basic information theory, concept of perfect secrecy, modern block ciphers & stream ciphers, cryptographic hash functions and message authentication codes. In the second part, we will discuss public-key cryptosystems including the famous RSA Cryptosystem & the ElGamal Cryptosystem and Digital Signature Schemes. Time permitting, we will study some special topics such as Key Distribution, Key Agreement and Entity Authentication, at the end of the semester.

The mathematics needed will be developed within the course. In particular, it will not be assumed that students have a background in number theory or abstract algebra. The coursework will involve both programming assignments and problem sets. Although related, this is not a course on Network Security or Computer Security.

Course topics

Student learning outcomes

Textbook

CRYPTOGRAPHY: Theory and Practice by Douglas R. Stinson and Maura B. Patterson, CRC Press, Fourth Edition, 2019.

Grading

Your grade in this course will be based on your performance in assignments and examinations. Each component will account for half of your grade.

Most of the assignments will involve cryptanlayzing classical ciphers and implementing cyrptosystems & signature schemes. Keep in mind that these assignments will be time consuming and make sure you have enough time to work on them. Some of the assignments will also involve solving problem sets.

There will be about seven assignments in the course. There will be two regular examinations during the semester and a final comprehensive examination at the end of the semester.

Grade meanings

Grade Meaning
A  Achievement substantially exceeds basic course expectations
A−  
B+  
B Achievement exceeds basic course expectations
B−  
B+  
C Achievement adequately meets basic course expectations
C−  
D+  
D Achievement falls below basic course expectations
D−  
F Failure – achievement does not justify credit for course