CSCI-B 404 Introduction to Cryptography
3 credits
- Prerequisite(s): None
- Corequisite(s): CSCI-C 310 or CSCI-C 343 or CSCI 36200
- Delivery: On-Campus
- Semesters offered: Spring (Check the schedule to confirm.)
Description
The course provides students with a foundational introduction to cryptography. Students learn the basic primitives used in cryptography, such as symmetric encryption, public-key encryption, message authentication codes, digital signatures, cryptographic hashes, and related material. Computational aspects of modern cryptography are stressed, as are appropriate security models and computational security reductions.
Topics
Introduction
- Overview of cryptography and network security
Foundations of cryptography
- Historical methods and classical cryptography
- Evolution to modern cryptographic techniques
- The art of cryptoanalysis
Symmetric cryptosystems
- DES, AES
Asymmetric cryptosystems
- RSA, ElGamal system
Authentication and integrity
- Digital signatures and their role
- The function of hash methods, authentication codes, and message digests
Key management
- Techniques like Diffie-Hellman key exchange and group key management
Network security
- Exploring protocols such as IPsec, SSL, SSH, PGP, and X.509 certificates.
- Cryptographic-based hierarchical access control
Advanced topics and research
- Current research trends in cryptography and network security
Learning Outcomes
- Analyze and compare different types of modern cryptographic algorithms, including symmetric encryption, public-key encryption, and cryptographic hashes. CS 5
- Evaluate the strengths and weaknesses of cryptographic algorithms and assess their suitability for specific applications. CS 5
- Design and implement secure cryptographic systems using programming skills, ensuring data confidentiality, integrity, and authenticity. CS 2
- Assess the security of cryptographic systems using cryptanalysis techniques. CS 5
- Analyze network security protocols, such as IPsec, SSL, SSH, PGP, and X.509 certificates. CS 5
- Implement digital signatures, message authentication codes, and their applications in ensuring data integrity and non-repudiation. CS 5
- Apply principles and techniques of key distribution and management, including Diffie-Hellman key exchange and group key management protocols. CS 5
- Evaluate new developments in cryptography and network security and propose new solutions. CS 7
- Evaluate the ethical and legal implications of using cryptography, especially for privacy, security, and society. CS 6
Policies and Procedures
Please be aware of the following linked policies and procedures. Note that in individual courses instructors will have stipulations specific to their course.