Official course description, subject to change:
Preliminary info last published 15/05-23

Advanced Security

Course info
ECTS points:
Course code:
Participants max:
Offered to guest students:
Offered to exchange students:
Offered as a single subject:
Price for EU/EEA citizens (Single Subject):
21250 DKK
MSc. Master
MSc in Computer Science
Course semester
Efterår 2024
26 August 2024
27 December 2024
Exam type
ekstern censur
Grade Scale
Exam Language

The proliferation of technology in decision making challenges the collective trust in society.  Mathematical models predict the economy and political decisions are made accordingly. National ID infrastructures, such as MitID, authenticate citizens to digital services who still need to trust that they also protect their private data. AI systems are making decisions that affect many, who must learn how to live with them. Living in a modern digital world means that technology operates in an adversarial and partly unverifiable environment. All too often, technologies are expected be trusted although they are untrustworthy by design.

The concept of verifiability provides mechanisms to check retroactively if operations of a specific technology were correct. Not all technologies and infrastructures support the concept of verifiability, because often verifiability and confidentiality are at odds. Most technologies could support it but only few do.  In this advanced course called Advanced Security, we study the concept of verifiability and trust.

You will take this course as part of the security specialization. As prerequisites, we expect you to be able to program and have taken an introductory course in cybersecurity, such as Security 1 or Applied Information Security, a course on Cryptography, and of course Discrete Mathematics.


Trust is known to be difficult to create but easy to destroy.  In these lectures, we study trust and technical notions of verifiability to strengthen trust.  We also study techniques to evaluate if verifiability really strengthens trust and show that this not necessarily the case. The lectures are given alternating by the lecturers and the students. There is no coursebook (yet) for this material, which means that most of the material will be covered in research papers and students are required to read at least one of the papers and present it to the class.

Module 1: Trust, Distrust and Verifiability. In this module, we look at different ways to think about trust. We look at formal definitions of verifiability, and accountability. We’ll be reading papers on the philosophical foundations of trust, distrust, and discuss various game-based definitions of verifiability and accountability, and trust into AI systems. We also discuss how privacy factors into the topic of trust.

Module 2: Logical Methods.  In this module, we look at topics, such as language-based security, information flow control, and protocol verification. We also investigate how to make databases more private and how to make AI reasoning more robust. As logic is meant to capture truth, and truth is a precursor for trust, logic is a good trust base for computing.

Module 3: Cryptographic Methods. In this module we look at topics, such as secure multi-party computation (MPC) using voting protocols as examples. We look at constructions supporting verifiability, such as zero-knowledge proofs, and cryptographic mixing that are designed to be verifiable while preserving privacy.

Module 4: Statistical Methods. Here will present techniques for auditing, including risk-limiting audits and testing, AI-watermarking, and others designed for verifiability. Statistical methods are also used to evaluate user studies and to the effectiveness of trust generation.

Formal prerequisites

Formal prerequisites 

    Security 1


    Discrete Mathematics

    Introduction to Programming


Intended learning outcomes

After the course, the student should be able to:

  • Module 1: Design and study cryptographic protocols.
  • Module 2: Analyze protocols for accountability
  • Module 3: Apply information flow control techniques.
  • Module 4: Explain usability security design techniques.
  • Module 5: Analyze socio-technical systems.
  • Module 6: Describe cryptographic protocols used for voting.
Ordinary exam
Exam type:
B: Oral exam, External (7-point scale)
Exam variation:
B22: Oral exam with no time for preparation.