Public Key Cryptography
Instructor : Sedat Akleylek
Credits : 6 ECTS
Language : English
Schedule : Monday 10:15 - 12:00, Room 2034 and Thursday 10:15 - 12:00, Room 2039
Office Hour : Tuesday 09:30 - 11:00, Room 3072 (We are flexible on the office hour by appointment)
About the Course
The scope of this course includes:
- The idea of public key cryptography will be defined. Discussing why we need public key cryptography will be done with real-world examples.
- Integer factorization and discrete logarithm problems will be given. The algorithms to solve these problems will be discussed.
- The algorithms to implement traditional public key cryptosystems (RSA, DH, ECDSA, ECDH) will be reviewed. Implementation details will be discussed.
- Quantum-safe cryptosystem families will be introduced. Lattice-based cryptosystems will be discussed.
- Open-source cryptographic libraries will be introduced.
We will explain the necessary mathematical background in the course.
Grading
Homeworks 30%
Project 40%
Final exam 30%
There will be one set of "theory" homework assignments. In the project assignment, the student should write a research report or implement one of the given algorithms.
Reading/Resources
Textbooks, research papers, and lecture notes will be assigned throughout the semester.