Teaching
Award-winning educator employing hybrid and blended teaching methods
Suggested Topics for Supervision (UG/MSc)
Automated Identification of Connected Autonomous Vehicle Risk Scenarios
Build a sensor data processing algorithm to identify scenarios and extract key parameters describing risk, make use of these identified scenarios to improve safety in autonomous driving.
Potential Steps
- Using object identification from sensor video data to automatically identify one or more scenarios of interest
- Identify key safety parameters describing automated vehicle performance from already identified scenarios, and statistical methods to describe safety
- Processing parameters to improve road driving safety
Automatic Generation of Cryptographic Protocols Source Code
Automatically generate running protocol code from a standard protocol specification (such as MetaCP).
Potential Options
- Generate source code from that specification to multiple target languages (considering the semantics of both the specification and target language)
- Draw conclusions about the implementation and the security results
- Implement a graphical interface for no-code implementation of cryptographic protocols (e.g., key exchange). The generated code must compile and run in real-world environments
Robustness and Verification of IDS Networks
Machine Learning Algorithms are vulnerable to attacks. Your task is to make ML algorithms for intrusion detection more robust and resilient.
Potential Options
- Apply adversarial training on existing/newly designed Intrusion Detection Systems to thwart attackers
- Formally verify an Intrusion Detection System to be robust against attackers
- Attack an Intrusion Detection System to find ways to bypass it
Federated Learning for Optimum Decision Making in Cryptocurrency Trading
Build a distributed trading system operating on different currencies/exchanges to profitably trade and make group decisions optimizing for profitability.
Potential Steps
- Optimize for number of agents and exchanges
- Try different optimization strategies, e.g., local vs global
- Implement paper trading system to evaluate effectiveness of strategies
Module Leadership
Networks and System Security (UG)
Malware, Forensics and Penetration Testing (MSc)
Secure Programming (MSc, INFR11098)
Teaching Tools
Vehicle Tutorials
Hosted tutorials for industry and academia at international conferences and UK Cyber Security Institute on neural network verification with Vehicle.
TutorialAutomatic Judge System
Automated judge system evaluating code quality and structure, with automated marking through testcases and feedback. Built with PHP, MySQL, Java, JUnit.
CTF Competition Tool
Coursework tool for Capture The Flag security competitions. Generated unique challenges for students in virtual security environments. Built with C, Java, Python, NodeJS.
Teaching Assistant Positions
- Security Analysis of Complex Systems (MSc), 2019–2020
- System Security (MSc), 2019–2020
- Cryptography (UG), 2016–2020
- System and Network Security (UG), 2016–2020
- Software Engineering (UG), 2016–2020
- Understanding Concurrency (UG), 2016–2020
- Website Construction & Management (UG), 2016–2017
All positions at Newcastle University