Current Courses
- Ethical Hacking, Spring 2021–2026
- AI Security, Fall 2025–2026
Past Courses
- Discrete Mathematics, Fall 2017–2025
- Advanced Security, Fall 2020–2022
- Security 2, Fall 2018, Spring 2019
- Security, Spring 2018
- Critical Systems, Fall 2016–2017
Thesis Supervision
I regularly supervise bachelor and master thesis projects in formal methods, security, and machine learning verification.
Looking for a thesis project? I’m recruiting students for paid thesis projects in the DIREC-funded project Robust Network Intrusion Detection. Topics span datasets, formal verification, differentiable logics, and privacy-preserving ML. Find out more →
How to find a good thesis topic?
The two most important things for finding a good thesis topic is to find a topic that excites you and your supervisor, and that you have the competencies to succeed in.
You can pick a topic from the list below or propose a topic of your own. The past theses section also gives a sense of the range of topics I supervise.
Project Ideas
Robust Network Intrusion Detection (DIREC project). I am leading a DIREC-funded Catalyst project on training robust network intrusion detection systems using differentiable logics. We have paid thesis positions available across four research themes: datasets, rules & training, differentiable logics, and privacy-preserving ML. See the project site for details and how to get involved.
Verified machine learning. Using software verification techniques on machine learning systems to guarantee they behave as intended, through logical specifications, programming language theory, and machine learning theory. This can focus on the infrastructure (tools and mathematical foundations) or specific case studies (network intrusion detection, autonomous driving controllers). One of the tools I use is the Vehicle language.
NLP for Software Verification. Integrating LLMs with interactive theorem provers, specifically the Rocq prover. Ideas range from generating documentation for existing developments, to automating theorem proving, translating proofs between ITPs, solving frontier math problems, and integrating LLMs in learning environments.
Verified software systems and cryptographic protocols. Analysis using the Rocq prover and MathComp-Analysis. Current targets include: risk-limiting audits for voting protocols, statistical procedures like the multi-armed bandit algorithm, and security protocol verification using frameworks such as SSprove.
Past Theses
Here is a list of past thesis titles — feel free to ask about any topic.
- Developing Robust Neural Network Models for Network Intrusion Detection, Vladislav Konjusenko and Oleksandr Adamov (BDS, 2025)
- Exploring PAC-Learnability of decision stumps in Coq (SWU, 2024)
- Machine learning robustness using Vehicle (BDS, 2024)
- Building training material and challenges on fuzzing and symbolic execution (SWU, 2024)
- Building a linter for finding security vulnerabilities in Dockerfiles (SWU, 2024)
- Visualizing security protocols as choreographies (SWU, 2023)
- Human detection of AI generated images (KCS, 2023)
- EMV payment attacks (KCS, 2023)
- Building a platform for running CTF competitions (SWU, 2023)
- Implementing Apachi, a conference management system (SWU, 2022, 2024)
- Implementing LoRaRatchet, a security protocol for IoT devices (KCS, 2022)
- Compiling security choreographies to executable code and ProVerif models (KCS, 2022)
- Hacking CAN bus vehicle health monitors (SWU, 2022)
- Finding zero day vulnerabilities in the Linux kernel using the CodeQL code scanning tool (SWU, 2022)
- Creating cybersecurity training material for highschool students (KSD, 2022)
- LoRaRatchet, a security protocol for IoT devices with post-compromise security (KSD, 2021)
- Threat assessment for LoRaWAN devices in offshore wind energy (KSD, 2021)
- Using the angr.io framework to find information flow vulnerabilities in Unix binaries (KCS, 2021)
- Security analysis of the OSCORE secure transport protocol for IoT (BSc, 2021)
- Extending session types to model security properties (KCS, 2021)
- Mitigating timing attacks on network traffic (MSC, 2021)
- Apachi - an Accountable, Secure and Fair Approach to Conference Paper Submission (KCS, 2020)
- Scanning the Danish internet to determine the state of Danish cybersecurity (SWU, 2020)
- Detection of botnets through the use of Honeypots (SWU, 2020)
- Formal Verification of the Firefox Sync Protocol, Spring 2019
- Security Analysis of a Smart Heat Meter, Spring 2019
- CityRun: A combined running- and sightseeing app, Spring 2019
- Decentralized certificate authority as a blockchain application, Spring 2019
- Extending Session Types to Model Security Properties, Spring 2019
- Formal Verification of Object Security for Constrained RESTful Environments (OSCORE), Spring 2019
- Formal verification of Certificate Transparency, Spring 2019
- Verification of privacy in Bingo Voting, Spring 2019
- Zero-knowledge proofs on the GPU for voting, Spring 2019
- From Applied Pi Calculus to Linear Logic, Fall 2018
- Formal analysis of EDHOC, a protocol for IoT secure communication, Theis Grønbech Petersen and Thorvald Sahl Jørgensen, Spring 2018
- Security analysis for smart door lock, Steffen Mogensen, Spring 2018
- Deduplicated Storage Systems: Trade-offs between security and efficiency, Emma Arfelt Kock, Fall 2017
- Verifying Selene in Tamarin, Eva Drewsen, Spring 2017
- Voting Protocol in Ethereum, Adrian Brink, Spring 2017
- Transparent authentication with wearable devices, Jacob Cholewa and Rasmus Wismann, Spring 2017
- Hacking WinVote machines, Florin Vasile and Andreas Nielsen, Fall 2016