Thesis (Bachelor/Master) - Implementation of a Device Identifier Composition Engine (DICE) for an ESP32-SoC

Kennziffer: SIT-2019-31

The ESP32 by Espressif is one of the most widely used SoCs for IoT applications. It features two processor cores and WiFi- and Bluetooth-capabilities. It is already used in Amazon’s dash buttons and many smart home devices, making it a worthwhile target platform for DICE. Creating a simple firmware implementation of DICE for it would provide an inexpensive and easy to use basic security solution to many IoT devices without imposing any additional requirements other than a firmware update.

What we expect

  • Experience with the programming language C
  • Fluent English or German
  • Experience with embedded systems is beneficial
  • Experience with the ESP32 platform is beneficial
  • Experience with cryptography is beneficial
  • Experience with Linux is beneficial
  • Experience with the Python programming language is beneficial

The goal of this thesis is to evaluate, how DICE can be implemented on an ESP32. Among the technical features that could be used or need to be examined for the implementation of DICE are the the ESP’s Memory Protection Unit and PID Controller, the Secure Boot Feature, the interrupt controller and the debug interface. A one-way function for DICE is to be selected with the long-term security of the implementation in mind. The DICE functionality is to be included into the device’s FreeRTOS-based SDK. The SDK needs to be extended to include functionality for at least remote attestation. A simple remote attestation server is to be implemented for a simple proof of concept of DICE’s Trusted Computing capabilities.

Fraunhofer is Europe’s largest application-oriented research organization. Our research efforts are geared entirely to people’s needs: health, security, communication, energy and the environment. As a result, the work undertaken by our researchers and developers has a significant impact on people’s lives. We are creative. We shape technology. We design products. We improve methods and techniques. We open up new vistas.

Please apply online or send an email to

If you have further questions, please contact Lukas Jäger, email:


If you want to find out, how we process your personal data, please read our privacy information for applicants .