CS-458: Introduction to Cryptography (Fall 2025)


Schedule

Lesson Short Description Referencies
0 Introduction to the Course Slides
1 The Context of Cryptography
  • The role of cryptography
  • The weakest link property
  • The adversarial setting
  • Threat model
  • Security and other design criteria
Slides
2 Classical Cryptosystems I
  • Substitution ciphers
    • Atbash, Caesar, Monoalphabetic, Homophonic, Book, Playfair
Slides
3 Classical Cryptosystems II
  • Substitution ciphers
    • Polyalphabetic, Vigenere, Running Key, Auto Key
  • Transposition ciphers
    • Scytale, Rail Fence, Columnar Transposition
  • Product ciphers
    • Rotor Machines, Enigma
Slides
4 One Time Pad
  • Index of Coincidence
    • Cryptanalysis of Vigenere
  • XOR Cipher
    • Principle, Properties, Attacks
  • One Time Pad
    • Principle, Attacks, Practical Issues
Slides
5 Cryptographic Attacks
  • Security Architecture
    • Threats, Vulnerabilities, Attacks, Risks, Security Mechanisms
  • Cryptographic attacks
    • COA, KPA, CPA, CCA, Distinguishing Attack, Brute Force, MiTM, Replay
Slides
6 Block Ciphers I: Symmetric Cryptography
  • Principles and algorithms
  • Block ciphers design
Slides
7 Block Ciphers II: Data Encryption Standard (DES)
  • Structure, strength and speed
Slides
8 Block Ciphers III: Triple DES (3DES)
  • Keying options, strength and speed
Slides
9 Block Ciphers IV: Advanced Encryption Standard (AES)
  • Structure, strength and speed
  • Other block ciphers
Slides
10 Block Ciphers V: Modes of operation
  • Padding
  • Block and stream modes
  • Increasing the security of block ciphers
Slides
11 Block Ciphers VI: Attacks
  • Brute force
  • Analytic and statistical
  • Attacks against the modes of operation
Slides
12 Public key cryptography I: Principles and applications
  • Symmetric vs. asymmetric cryptography
  • Practical aspects of public key cryptography
  • Public-key distribution
  • Digital signatures
  • Hybrid encryption
Slides
13 Introduction to Number Theory
  • Modular arithmetic
  • Euclidean and extended Euclidean algorithms
  • Euler's Phi Function
  • Fermat’s Little Theorem and Euler’s Theorem
  • Primality testing and factorisation
Slides
14 Public key cryptography II: The RSA cryptosystem
  • Encryption/Decryption & Signatures
  • Proof of Correctness
  • Padding
  • RSA in practice
Slides
15 Public key cryptography III: Other PKC systems
  • Discrete Logarithm Problem based
  • Elliptic Curve based
  • Digital signatures
Slides
16 Public key cryptography IV: RSA attacks I
  • Factorization
  • Plain RSA attacks
Slides
17 Public key cryptography V: RSA attacks II
  • Protocol
  • Random number generation
  • Side-channel
  • Signature
Slides
18 Hash functions I: Principles and applications
  • Collisions
  • Birthday attack
  • Applications
Slides
19 Hash functions II: Algorithms
  • SHA-1/2/3
Slides
20 Hash functions III: Attacks
  • Length Extension Attack
  • Cryptanalysis of hash algorithms
Slides
21 Message Authentication Codes and AEAD Slides
22 Key Managment
  • Key freshness and key derivation
  • Key establishment using symmetric-key techniques
  • Key establishment using asymmetric techniques
  • Key lifecycle
Slides
23 Applications of Cryptography
  • Secure data communications and storage
  • Security protocols (SSL/TLS, PGP, Tor)
  • Blockchain and cryptocurrencies
Slides
24 Quantum Safe Cryptography
  • Post-quantum cryptography
  • Quantum key distribution
Slides

Book chapters: The course lectures will follow both recommended textbooks, chapters beginning with 1 refer to the textbook "Εισαγωγή στην Κρυπτογραφία" whereas chapters begining with 2 refer to the textbook "Understanding Cryptography, a textbook for students and practitioners".