flori-schwa / IT-Sec2

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RIOT OS Crypto tutorials

These tutorials are available in the following languages: 🇬🇧 English (WIP) | 🇩🇪 German

The following tutorials explain how to use different crypto algorithms on the IoT operating system RIOT. This is a project assignment for the course "IT Security 2" at the Stuttgart University of Applied Sciences ("Hochschule für Technik Stuttgart").

The tutorials are divided into three chapters:

Chapter 1 provides basic knowledge about RIOT and how to write and run executable programs with RIOT.

Part 1 describes the RIOT installation process as well as the minimum requirements. We focus on mainly using RIOT under Linux.

Part 2 describes the basic structure of a minimal RIOT program, including the structure of the Makefile and how to run it under Linux.

Part 3 provides a first insight on how to write interactive RIOT programs using the shell. Here we will write a simple command handler and start the shell.


Chapter 2 provides the necessary knowledge how to write RIOT programs that use cryptographic algorithms. We will cover the algorithms AES-ECB, AES-CBC and RSA.

Here we will demonstrate the basics of using AES in ECB mode under RIOT.

The previous program will be extended such that data can be encrypted in Cipher Block Chaining mode.

No new crypto algorithm will be introduced here, but rather we will use the known AES-CBC algorithm to exchange secret messages between client and server.

In this part we show how to encrypt data using the RSA implementation of the RELIC toolkit.


In this short chapter we present the results of simple benchmark algorithms.

About


Languages

Language:C 71.5%Language:C++ 17.4%Language:Makefile 10.0%Language:Shell 1.1%