TU Berlin

Service-centric NetworkingInternet of Services Lab - WT2017/2018

Page Content

to Navigation

Internet of Services Lab (WT 2017/2018)


Each topic requires different number of participants and is limited in general. Students with substantial knowledge of Java or another object-oriented programming language can register for this course on ISIS starting from the first of October.


This SNET project is about carrying out a whole project. A given topic will be analyzed, specified, implemented, tested and documented. These topics can vary within the following groups of related subjects:

  • Mobile Computing
  • Context-aware Computing
  • Data Science
  • Digital Communities
  • Cloud Computing
  • Web Services

Depending on the topic, the project will be supervised by different SNET researchers, T-Labs employees or other guest lecturers. At the beginning of the semester, the participating students can apply for one of the specific tasks, which will be announced at the beginning of the semester in the first lecture. Then the supervisor will define groups and regular meetings with the students, explain the task and provide materials and tools. During the semester, each participant of the project has to present their topic, progress and final results in different talks.

The course is conducted in English and requires profound programming knowledge

Target Group

This compulsory course (Wahlpflichtfach) addresses Master and Diploma students of

  • Computer Science (Informatik)
  • Computer Engineering (Technische Informatik)
  • Business Informatics (Wirtschaftsinformatik)
  • EIT Digital
  • Compulsory Elective in other degree programs possible if course is not full


After organizing in groups, the main part of the project is managed by you. Additionally you regularly meet with your supervisor (normally once a week) and he will assess your advance. Furthermore there are three mandatory milestone appointments, where you present your progress and results in front of the whole group.


The lecture and workshops will take place at ...

Schedule and Location
Day of week
Introductory Lecture
2pm -4pm
Oct 18th, 2017
BH-N 333
Milestone Workshop
10am - 2pm
Nov 8th, 2017
MAR 4.064
Final Workshop
2pm - 6pm
Feb 21nd, 2018
BH-N 333


The method of examination is the portfolio exam ("Portfolioprüfung"). All in all 100 portfolio points can be achieved:

  • Practical implementation (25 portfolio points)
  • Process of the project (25 portfolio points)
  • Presentation (25 portfolio points)
  • Written report (25 portfolio points)

The final grade under the terms of § 47 (2) AllgStuPO is calculated according to the grading scheme no. 2 of faculty IV. Attendance of all appointments is mandatory.

Application and Distribution

Each topic requires different number of participants and is limited in general. Students with substantial knowledge of Java or another object-oriented programming language can register for this course on ISIS starting from October 1st until October 17th.

At the introductory lecture, the topics (will be announced on ISIS beforehand) will be presented and any registered student may choose a topic. Early registration gives you the opportunity to choose the topic first. 

Project Topic Proposals

Here you can find a tentative list of topics for the winter term 2017/18

More topics may follow

Topic 1: Verified Locations for Smart Contracts

With the rise of blockchain technology and in particular smart contracts, new opportunities emerge for ubiquitous computing, leveraging its decentralized nature. A smart contract is program-code that is stored on a blockchain, and can be executed by participants sending transactions with input data to it. A smart contract does not have access to information about the outside world, it cannot access the internet. Any outside information must be sent to the contract in the form of a transaction.

Use cases that want to make use of location data, need a trustworthy source of such location data. If a user were to send his GPS position to the contract by himself, nothing would prevent him from being dishonest.

Based on the premise that a mobile telecommunications operator can provide position estimates of active mobile terminals, this project aims at demonstrating how such position estimates can be used as a trustworthy source of location information. These can then be incorporated into the realm of smart contracts and enable new use cases.

Specifically, in this project you will:

  • Develop a smart contract for Ethereum that facilitates a car sharing use case.
  • Develop an oracle, that provides location data to the contract mentioned above.
  • Think about privacy (How can location data be used on a blockchain, but kept private?)
  • Evaluate the concept with respect to expected delays, costs, privacy and positioning accuracy. You will be provided with matching GPS and Cell Tower positioning data to simulate the use case.


Topic 2: Identity in the Blockchain

The project deals with identity information that are stored or references within a distributed blockchain. The identity information involve personal data, such as name, address, age, telephone number, e-mail and ID references such as driver license or passport information. Additionally it needs to be investigated how biometric information can also be stored or referenced. The use case domain for the identity blockchain can be related to the car sharing scenario or general cases such as banking information. It should be possible to change the information which are under your own sovereign control, such as tel. numbers and e-mail addresses. The outcome of the project is a (REST)-API service and a blockchain client that can be used by attester services, 3rd party services and mobile applications using the chain to identify people and check if there ID references are still valid. The project includes the following tasks:

  • Get familiar with blockchain/smart contract/dApps technologies and concepts
  • Get familiar with identity technologies and concepts
  • Get familiar with scientific related work in the described areas
  • Chose a blockchain technology, such as uPort and Etherium which suits the identity requirements
  • Setup a test environment with the chosen technologies (Client, RestAPI, Blockchain)
  • Add an additional API interface to offer 3rd party services the desired identity functionalities
  • Develop a website approach to access the API, i.e., send and receive data to and from the blockchain
  • Test and evaluate your solution
  • Document the outcome and describe further work
  • Work in a team and come up with your own ideas
  • Communicate in Englisch, organize yourself, and use management and communication tools, such as slack


Topic 3: Be whoever you want!

Advertising networks use rather very aggressive tracking techniques nowadays to deliver targeted advertisements. Browser fingerprinting, canvas fingerprinting, and WebGL fingerprinting make it almost impossible to escape being tracked. Even worse, installing browser extensions to circumvent these techniques improve the risk of being identified. In this project, we follow a different approach by trying to hide in the mass. Therefore, various generic identities are generated that can be used by every user for browsing the Web.


Topic 4: Microservice Architectures for IoT Analysis Applications

The Internet of Things (IoT) will play a substantial role in manufacturing industries in the near future. Large numbers of sensors and actuators will be deployed in factories or constructions sites, for monitoring and analytic purposes. Participants in this project will implement a ready-to-deploy analysis application to handle sensor data analysis at scale. Concrete techniques include Microservice Architectures, Event Sourcing, and Stream Processing.


Topic 5: Web browser-based video streaming and Attribute-based Encryption

State-of-the-art streaming services, such as Netflix use W3C‘s Encrypted Media Extension (EME) to deliver licensed content to subscribers. In this project you will design and develop a system where MPEG DASH-based content is protected by an encryption notion called Attribute-based Encryption (ABE). The major goal is to develop a Content Decryption Module (CDM) for a web browser, able to receive and apply ABE decryption keys to encrypted content. Furthermore, a DASH-ready streaming server should provided. Beside these implementation tasks conceptional work, such as assigning and managing attributes and hybrid encryption approaches (AES+ABE) has to be conducted.

Get familiar with:

  • the streaming standard MPEG DASH and W3C‘s EME
  • Attribute-based Encryption and its implementations and concepts
  • related open source projects


Skills in C/ C++, Linux and media standards will be of advantage.


Quick Access

Schnellnavigation zur Seite über Nummerneingabe