Titel: Ausgewählte Themen in Verteilten Systemen
Englischer Titel: Selected Topics in Distributed Systems
Typ: Seminar, Modul
Kürzel / Nr. / Modulnr.: ATVS / CS5900.113 / 72041
SWS / LP: 2S / 4LP
Dozent: Prof. Dr. Frank Kargl, Prof. Dr.-Ing. Franz J. Hauck
Betreuer:
Ala'a Al-Momani, Leonard Bradatsch, Felix EngelmannEugen Frasch, Gerhard Habiger, Matthias Matousek, Muntazir Mehdi, Echo Meißner, David Mödinger, Michael Wolf, Externe
Termine:
Einführungsveranstaltung (verpflichtend)
Wissenschaftliches Arbeiten (verpflichtend)
LaTeX-Einführung (freiwillig)
Präsentationstechniken (verpflichtend)
Vortragsblocktermin (ganztägig)
Räume und Daten siehe Moodlekurs.
Lernplattform:
Kursmaterialien finden Sie im Moodle-Kurs. Sie werden dem Kurs automatisch hinzugefügt, sobald Sie eines unserer Seminare besuchen.
Themenvergabe:
Bitte Beachten: Die zentrale Themenvergabe erfolgt immer bereits gegen Ende des vorherigen Semesters über die zentrale Seminarthemen-Vergabe-Plattform im Moodle.
Sprache:
Alle Themen können in deutscher oder englischer Sprache bearbeitet werden, sofern nicht anders angegeben.

Themen

free            assigned

No free topic left! (Except your own)

Your own topic English only

You have the possibility until the beginning of the semester to come up with your own topic and find a supervisor who is willing to mentor more students.

Analysis of Modern Network Testing Approaches English only

Every (new) network protocol (e.g., TCP or NetFlow) and device (e.g., switches or routers) needs to be tested. The main task of this seminar is to outline different modern testing approaches. In what way do researches test network protocols and devices. In what network environment is the protocol/device tested? What traffic is used? How often are test runs repeated?
The seminar paper should outline modern approaches and state the pros and cons of the presented methodologies.

Leonard Bradatsch

Attacks on Machine Learning English only

In recent years we have seen an enormous increase in the use of Machine Learning -- especially Deep Learning. While the achievements with machine learning are certainly phenomenal, there are also issues that come with it. One issue is the susceptibility of machine learning against malicious attacks.
The goal of this seminar is to survey and compare state-of-the-art research in attacks against machine learning. 

Matthias Matousek

Attacks on Platoons English only

Platooning is an application of Cooperative Intelligent Transport Systems (C-ITS). These consist of vehicles exchanging messages over VANETs in order to coordinate their actions. This dependability on the messages broadcasted wirelessly makes the vehicles susceptible to certain attacks.
In this seminar, existing attacks, proposed attacks and maybe new invented attacks against a vehicle platoon should be gathered and presented.

Michael Wolf

Attribute-Based Credentials English only

Attribute-Based Credentials (ABCs), or Anonymous Credentials, are a way to prove the possession of attributes to another party without disclosing one's identity. This seemingly simple achievement can be utilized for a huge number of privacy-preserving applications, such as privacy-preserving age checks or anonymous payments.
The goal of this seminar is to analyze and summarize a number of relevant publications about ABCs.

Matthias Matousek

Browser Privacy English only

The Browser is the entry for many people to the internet. Therefore it should protect the user not only against attacks, but also the privacy of the users. Though there are some standards, and many browser are using the Blink Enginge, each browser handles the privacy of their users differently.
In this seminar, a chosen set of browsers should be compared how they protect the privacy of their users, not only by the default settings, but also by the options they give their users (configuration, modification, addons).

Michael Wolf

Buffer overflows are dead - long live the buffer overflow  English only

With the widespread introduction of the non-executable bit feature at the beginning of this century, classical buffer overflow exploits that override the stack directly with executable code were eliminated. For a while, it seemed as if this huge class common to programs written in system programming languages such as C or C++ are eliminated. However, it did not take long until Return-to-libc or more generally Return-Oriented-Programming appeared and buffer overflow exploits were back in business as the exutable code is not located on the stack anymore. In recent years, there were multiple ideas how these kinds of attacks can be mitigated as well with an acceptable performance overhead. Most prominently, there is the idea of Control Flow Integrity (CFI) and shadow stacks.
Your paper/talk should provide an overview of the recent research and development regarding these techniques.

Martin Lang (BMW Car IT)

Contemporary Design of a CSPRNG Using the Example of Fortuna English only

Cryptographically secure pseudo-random number generators (CSPRNGs) are used for generating random keys in cryptosystems such as encryption or signature algorithms. Consequently, they are a vital part of every cryptosystem, as the overall security greatly depends on the entropy of the keys. A modern CSPRNG such as Fortuna has various interesting properties beyond its output being uniformly random distributed. As an example, it is possible to recover from an attack where the full internal state of the CSPRNG is leaked.
The goal of this seminar is to outline the design space of contemporary CSRPNGs. The focus should be on an in-depth explanation of the CSPRNG Fortuna which is currently used in Linux' /dev/urandom.

Henning Kopp (Schutzwerk GmbH)

Data Entanglement English only

In Coding and Data Reliability, e.g., censorship resistance, research applies a concept called data entanglement. For this technique parts of a file are combined with parts of another file to reconstruct a lost file or to make fully removing a file from a system expensive.
The goal of this seminar is to look at one or more applied schemes for data entanglement and its uses in real world applications.

David Mödinger

Differential Privacy – English only

Statistics about user data are used heavily for improving services, performing marketing studies, and many other purposes. The acquisition and processing of potentially sensitive information poses serious privacy threats to individuals participating in, e.g., surveys. Such information might include birthdate, gender, religion, and nationality, from which identifying an individual becomes a trivial task. Moreover, inferring more sensitive information about a specific individual becomes also possible. To solve issue, many service providers, e.g., Apple and Google, started using the so-called “Differential Privacy” to preserve their users’ privacy.
In this seminar, you will investigate differential privacy with respect to both theoretical and practical aspects. In addition to addressing the privacy guarantees of differential privacy, your task will then be addressing how major tech companies are implementing differential privacy nowadays.

Ala'a Al-Momani

Mobile Sensing and Smartphone Apps for Hearing Healthcare – English only

Mobile Sensing often focuses on the aspects of sensor data collection and analysis applied particularly for the purposes of education, diagnosis, treatment, or monitoring.
The aim of this seminar is to study current developments in mobile sensing and smartphone apps, specifically applied in the domain of hearing healthcare.

Muntazir Mehdi

Network Security Breaches English only

The goal of this seminar is the outlining of popular network security breaches (2-3 examples).  Subsequently, state-of-the-art protection or detection approaches against these presented breaches should be explained.

Leonard Bradatsch

OAuth and OpenID (Connect) English only

Along with the modern web and it's services come a lot of passwords and accounts. OAuth, OpenID and OpenID Connect are some of the single sign-on frameworks and protocols that strive to make authentication and authorization manageable in a secure way.
The goal of this seminar is to give an overview of these technologies, how they interact, and potential security considerations.

Dominik Lang (ditis)

Overview of IoT Frameworks and Platforms English only

The Internet of Things (IoT) hype is in full force, cheap sensors are abundantly available, and big companies as well as private consumers can build up their smart device networks with ease.
Thanks to this hype, many tools and frameworks for building and managing IoT installations exist. Some examples include software frameworks like Node-RED, Flogo or Eclipse Kura, the entire AWS, Google or Microsoft IoT Platforms, API-based platforms like Zetta, and many many more.
This seminar should give an overview over some of these solutions, describe their purposes and features, and either compare a selection of these tools or implement a minimal running IoT example using one platform of choice.

Gerhard Habiger

QuisQuis English only

QuisQuis is a new design for anonymous cryptocurrencies, based on updateable public keys. The problem of current anonymous blockchain systems, is the inability to prune old outputs, as they are all needed to verify future transactions. QuisQuis achieves the anonymity by re-randomising public keys, so that all inputs can be considered spent. The protocol employs multiple new techniques.
The paper should give an overview of the system and compare it to other anonymous cryptocurrencies.

Felix Engelmann

Range Proofs English only

Confidential transactions in crypto currencies require range proofs to detect integer overflows. Any output amount of a transaction has to be a positive integer. As storage is valuable on block-chains, the goal is to reduce the size as much as possible. Recent advances in bulletproofs reduce the size significantly.
The paper should compare the different existing methods and point out how the improvements are achieved.

Felix Engelmann

Resource Scheduling in Cloud Computing English only

With increased popularity of Cloud Computing the approach of treating multiple nodes as one big resource unit came up. This allows to run multiple different applications on one cluster at the same time. The biggest challenge is to schedule the processes of the applications without overstress the cluster or slowing down one of the applications.
The goal of this seminar is to look at the different scheduling approaches and their use cases in cloud computing.

Eugen Frasch

Secure Multiparty Computation – English only

Secure multiparty computation (MPC) enables several parties, each with a private input, to compute a joint function without exposing their input to each other. This attracts many application scenarios, e.g. training a machine learning model on private input from several companies/hospitals, where privacy is crucial. Within the last decade, the development of MPC has been on the practical side and many efficient implementations have been proposed.
In this seminar, you will investigate those practical implementations of secure MPC while addressing the features of each including the suggested functionality, and check whether there is any real-world usage of each. Then, selected implementations are to have in-depth comparison among each other.

Ala'a Al-Momani

Smart Home Security English only

Home automation has been a common theme of science fiction for a long time but has recently become reality. Newly constructed homes often come with pre-installed smart home features based on proprietary hardware/software and the same can be retrofitted to older buildings. Additionally, a huge community of DIY enthusiasts develops open source and open hardware alternatives. However, security is often not the main priority of these products or can be difficult to implement correctly, due to hardware and power constraints. Numerous examples, such as smart door and garage locks, show that this is becoming a serious issue. 
This seminar should outline the differences in conventional IT security and IoT security and survey the security of common home automation software (e.g., home-assistant), protocols (e.g., MQTT), and devices (e.g., ESP8266).

Echo Meißner

Surveying Peripheral Sensors in Context of Mobile Crowdsensing – English only

In this seminar report, the students are required to survey the current state of peripheral sensors that can be coupled with smartphones to further accurate the mobile crowdsensing applications. These peripheral sensors can be coupled with smartphones using Bluetooth technology or wifi. The students would be further required to study the current state of coupling technologies. In addition to the general perspective, the students will survey the peripheral sensors, their technology, and limitations within the context of mHealth (mobile health).

Muntazir Mehdi

Time constraints of Security in CACC English only

One application of Corporate Adaptive Cruise Control (CACC) is platooning where vehicles drive very close after each other to reduce the air resistance and therefore reduce fuel consumption. This, however, comes with safety risks due to the reduced distance gap to the following vehicle and therefore reduced reaction time. If the vehicles drive 100 km/h (~30m/s), a safety distance of 50m is required by German law. When this distance is now reduced to 10m or less in CACC, only a third of a second reaction time is available. During this time, a message send from the leading vehicle, needs to be processed by both vehicles, the leading and the ego vehicle. E.g. by encrypting, signing, verifying, ...
Your task is to look at one proposed protocol (e.g. IEEE 802.11p) and cross reference the steps required by this protocol with estimations of how long each step will probably take. If no official estimation is available, make one yourself and explain it. Optionally, you can compare this total processing time with that of other sensors, like camera with image processing.

Michael Wolf

Trusted Execution Environments English only

Trust management is a central aspect of computer security. For instance, an operating system uses sandboxes to protect itself and other applications from viruses and malicious software, and cryptography is used to protect data in transit and at rest. With the advent of cloud computing, even the hardware that executes a particular software is not always considered trustworthy. Trusted Execution Environments (TEEs) try to relieve of the need to fully trust the hardware, by adding a secure area to the CPU that can guarantee code/data confidentiality and integrity through cryptographic means. Hence, protecting an application from untrusted hardware, software, and even privileged attackers (i.e., the operating system). Several TEE implementations can already be used today, such as Intel SGX and ARM TrustZone. While the former proprietary implementations often expect trust in the vector, open-source alternatives that address this weak point are already in development. 
In this seminar, you will investigate TEEs, highlight use-cases for this technology, and compare prominent representatives for their features and shortcomings.

Echo Meißner

What did we learn in almost 20 years of TLS? English only

In 2018, the latest version of TLS - TLS 1.3 - was finally finished and published. The discussions and decisions that were made during the development phase are interesting to follow. In an attempt to design the most secure version of TLS that is nowadays possible, the IETF working group decided to deprecate and remove quite some parts of older TLS releases that have a rather troubling history. As part of this work, we want to follow the development of TLS 1.3 and try to learn from it for the design of cryptographic (network) protocols in general.
Towards this goal, we follow two questions. What do we learn about protocol design by understanding the removed parts in TLS 1.3? It defines a new key agreement protocol, removes old cryptographic algorithms and changes the defaults. What are the underlying problems that lead to these decisions? What can we learn when designing cryptographic protocols on our own? What can we learn from the new features in TLS 1.3? What is the general direction in which the community is moving? Which security aspects have grown more important nowadays? Which building blocks are considered generally better than others?

Clemens Lang (BMW Car IT)

 

Sorted by Topics

Automotive
- Time constraints of Security in CACC (Michael Wolf)
- Attacks on Platoons (Michael Wolf)

Cryptocurrencies
- Range Proofs (Felix Engelmann)
- QuisQuis (Felix Engelmann)

Distributed Systems
- Resource Scheduling in Cloud Computing (Eugen Frasch)

Internet of Things
- Overview of IoT Frameworks and Platforms (Gerhard Habiger)
- Smart Home Security (Echo Meißner)

Mobile Health
- Mobile Sensing and Smartphone Apps for Hearing Healthcare (Muntazir Mehdi)
- Surveying Peripheral Sensors in Context of Mobile Crowdsensing (Muntazir Mehdi)

Network Security
- Analysis of Modern Network Testing Approaches (Leonard Bradatsch)
- Network Security Breaches (Leonard Bradatsch)
- What did we learn in almost 20 years of TLS? (Clemens Lang BMW)

Penetration Testing
- Buffer overflows are dead - long live the buffer overflow (Martin Lang BMW)
- Attacks on Machine Learning (Matthias Matousek)

Privacy
- Differential Privacy (Ala'a Al-Momani)
- Secure Multiparty Computation (Ala'a Al-Momani)
- Attribute-Based Credentials (Matthias Matousek)
- OAuth and OpenID (Connect) (Dominik Lang)
- Data Entanglement (David Mödinger)

Security Mechanisms in HW and OS
- Trusted Execution Environments (Echo Meißner)
- Contemporary Design of a CSPRNG Using the Example of Fortuna (Henning Kopp)

Beschreibung und allgemeine Angaben, Modulbeschreibung

Einordnung in die Studiengänge:
Informatik, B.Sc.: Seminar
Medieninformatik, B.Sc.: Seminar
Software-Engineering, B.Sc.: Seminar
(siehe auch unsere Hinweise zu Seminaren)
Lehr- und Lernformen: Ausgewählte Themen in Verteilten Systemen, 2S, 4LP
Modulkoordinator: Prof. Dr. Frank Kargl
Unterrichtssprache: Deutsch
Turnus / Dauer: jedes Semester / ein volles Semester
Voraussetzungen (inhaltlich): Grundlagen der Rechnernetze, Proseminar
Voraussetzungen (formal): -
Grundlage für (inhaltlich): -

Lernziel:

Studierende vertiefen exemplarisch an einem Teilgebiet der Informatik ihre Kenntnisse im selbstständigen Arbeiten mit wissenschaftlicher Literatur sowie im mündlichen und schriftlichen Präsentieren von fachwissenschaftlichen Inhalten. In Diskussionen wird die Fähigkeit zur kritischen Reflektion geübt. Im fachlichen Teil des Seminars stehen aktuelle Themen der Verteilten Systeme im Fokus. Abhängig vom Thema lernen Studierende ein konkretes System oder ein Konzept Verteilter Systeme kennen. Sie können diese Systeme in einen größeren Kontext einordnen und deren Vor- und Nachteile selbständig ableiten.

Inhalt:

Zu Beginn des Seminars werden Themen des wissenschaftlichen Arbeitens (z.B. Literaturrecherche, Schreiben einer Publikation, Präsentationstechniken) eingeführt, um den Studenten eine methodische Hilfestellung zu geben. Die Erstellung der eigentlichen Ausarbeitung und Präsentation erfolgt in individueller Betreuung. Die Ergebnisse werden in einer Abschlusspräsentation vorgestellt.

Literatur:

Wird je nach Thema zu Beginn der Veranstaltung bekannt gegeben

Bewertungsmethode:

FSPO < 2017: Leistungsnachweis über erfolgreiche Teilnahme. Diese umfasst Anwesenheit und enthält Ausarbeitung, Vortrag und Mitarbeit.
FSPO ≥ 2017: Die Vergabe der Leistungspunkte für das Modul erfolgt aufgrund der regelmäßigen Teilnahme, der vollständigen Bearbeitung eines übernommenen Themas (Vortrag und schriftliche Ausarbeitung) sowie der Beteiligung an der Diskussion. Die genauen Modalitäten werden zu Beginn der Veranstaltung bekannt gegeben. Die Anmeldung zur Prüfung setzt keinen Leistungsnachweis voraus.

Notenbildung:

FSPO < 2017: unbenotet
FSPO ≥ 2017: Die Modulnote entspricht dem Ergebnis der Modulprüfung. Die Note der Modulprüfung ergibt sich aus den Noten der Ausarbeitung (40%), der Präsentation (40%) und der Arbeitsweise (20%). Im Transcript of Records wird die errechnete Note für die Modulprüfung als eine Prüfungsleistung eingetragen und ausgewiesen.

Arbeitsaufwand:

Präsenzzeit: 30 h
Vor- und Nachbereitung: 90 h
Summe: 120 h