Cryptography
CS 507

Unpublished Syllabus
This syllabus is not published yet. Only you can view it.
Faculty: Faculty of Engineering and Natural Sciences
Semester: Fall 2025-2026
Course: Cryptography - CS 507
Classroom: UC-G030
Level of course: Masters
Course Credits: SU Credit:3.000, ECTS:10
Prerequisites: -
Corequisites: -
Course Type: Lecture

Instructor(s) Information

Erkay Savaş

Course Information

Catalog Course Description
This is an introductory course on cryptography. Topics include: Classical cryptosystems, basics of number theory, symmetric key cryptography (stream and block ciphers), hash functions, public key cryptosystems (RSA, discrete logarithm based algorithms, and elliptic curve cryptography (ECC)), digital signatures, implementation issues, secure key establishment techniques, secret sharing, and zero-knowledge proof.
Course Learning Outcomes:
1. Show a good understanding of security issues in a classical communications scenario.
2. Explain why classical ciphers such as those using mono-or poly alphabetic substitution techniques are weak.
3. Demonstrate a good understanding of introductory number theory pertaining to prime numbers, divisibility, rings, groups, finite fields.
4. Use software libraries for number theory and cryptographic operations and build applications using these libraries.
5. Outline the classic taxonomy of cryptographic algorithms, and give contemporary examples for different classes in the taxonomy
6. Explain the difference between stream ciphers and block ciphers and the difference between symmetric ciphers and asymmetric ciphers, and areas of their usage.
7. Demonstrate a good understanding of block cipher design principles
8. Demonstrate a good understanding of public key cryptosystems
9. Give at least one example for hard problems, on which contemporary cryptographic algorithms are based.
10. Demonstrate a good understanding of security levels provided by different classes of cryptographic algorithms
11. Demonstrate a good understanding of public key certificates and their usage in securing communication channels.
12. Design and implement a simple communication protocol that provides basic security functionality including confidentiality, integrity, authentication, non-repudiation for communicating parties.
Course Objective
-

Course Materials

Resources:
-
Technology Requirements:
-