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
Quiz 10
Group Project 15
Homework 10