Please note! Course description is confirmed for two academic years (1.8.2018-31.7.2020), which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.


Having completed the course, you understand the security that commonly used cryptographic primitives provide as well as their limits. You are able to judge whether a cryptographic building block is suitable for use in a particular application, and you can assess security models for applications critically. You can construct reductions between cryptographic primitives and recognize whether small modifications to a cryptographic primitive compromise their security.

Credits: 5

Schedule: 07.09.2020 - 03.12.2020

Teacher in charge (valid 01.08.2020-31.07.2022): Chris Brzuska

Teacher in charge (applies in this implementation): Chris Brzuska

Contact information for the course (applies in this implementation):

CEFR level (applies in this implementation):

Language of instruction and studies (valid 01.08.2020-31.07.2022):

Teaching language: English

Languages of study attainment: English


  • Valid 01.08.2020-31.07.2022:

    We introduce cryptographic security models and concepts and understand the relations between them. We then apply the learnt concepts and techniques to real-world problems. In particular, we cover:

    • Pseudorandom functions/ciphers
    • symmetric encryption
    • asymmetric encryption
    • message authentication codes
    • signature schemes
    • secure channels
    • recent attacks on real-life protocols such as TLS, IPsec,...

Assessment Methods and Criteria
  • Valid 01.08.2020-31.07.2022:

    Weekly exercises, course feedback (no exam)

  • Valid 01.08.2020-31.07.2022:

    Lectures 24 h (16 90-minutes sessions),

    Teaching in small groups 24h (16 90-minutes sessions),

    Weekly written exercises 40 h (10 assignments)


Substitutes for Courses
  • Valid 01.08.2020-31.07.2022:

    replaces former CS-E4320 Cryptography and Data Security

  • Valid 01.08.2020-31.07.2022:

    Essential: Ability to think about and analyze the behaviour of programs, use mathematical reasoning, read/formulate definitions and proofs

    Highly recommended: complexity theory and discrete probabilities

    Note that algebra is not a pre-requisit for this course.

SDG: Sustainable Development Goals

    9 Industry, Innovation and Infrastructure

    10 Reduced Inequality

    11 Sustainable Cities and Communities



Registration and further information