Cryptography (CS 507)

2022 Fall
Faculty of Engineering and Natural Sciences
Computer Sci.& Eng.(CS)
Atıl Utku Ay,
Click here to view.
Doctoral, Master
Click here to view.


Classical Cryptosystems, Basic Number Theory, Block Cipher Algorithms: DES, 3DES, and AES(Rijndael), Public Key Cryptography: RSA Discrete Logarithms, Elliptic Curve Cryptography(ECC), Digital Signatures, Implementation Issues, Secret Sharing, Zero Knowledge Techniques, Games, Digital Cash, Quantum Cryptography.


Show a good understanding of security issues in a classical communications scenario.
Explain why classical ciphers using mono-or poly alphabetic substitution technique are weak.
Demonstrate a good understanding of introductory number theory pertaining to prime numbers, divisibility, rings, groups, finite fields.
Use software libraries for number theory and cryptographic operations and build application using these libraries.
Outline the classic taxonomy of cryptographic algorithms, and give at least one contemporary example for each class in the taxonomy
Explain the difference between stream ciphers and block ciphers and the difference between symmetric ciphers and asymmetric ciphers, and area of their usage.
Demonstrate a good understanding of block cipher design principles and one public key algorithm
Give at least two examples for hard problems on which contemporary cryptographic algorithms are based.
Calculate the minimum key length that should be used in one symmetric and one public key cryptosystem for at least two different security levels.
Demonstrate a good understanding of public key certificates and their usage in securing communication channels.
Design and implement a simple communication protocol that provides basic security functionality including confidentiality, integrity, authentication, non-repudiation for communicating parties.


  Percentage (%)
Final 35
Midterm 30
Exam 10
Group Project 15
Homework 10