Refine
Year of publication
- 2023 (2)
Document Type
- Bachelor Thesis (1)
- Master's Thesis (1)
Language
- German (2) (remove)
Has Fulltext
- yes (2)
Is part of the Bibliography
- no (2)
Keywords
- Rust (2) (remove)
Institute
Open Access
- Closed (1)
- Diamond (1)
- Open Access (1)
Extensible Authentication Protocol (EAP) bietet eine flexible Möglichkeit zur Authentifizierung von Endgeräten und kann in Kombination mit TLS für eine zertifikatsbasierte Authentifizierung verwendet werden. Motiviert wird diese Arbeit von einer potenziellen Erweiterung für PROFINET, die diese Protokolle einsetzen soll.
Dabei soll eine sicherer EAP-TLS-Protokollstacks für eingebettete Systeme in der Programmiersprache Rust entwickelt werden. Durch das Ownership-System von Rust können Speicherfehler eliminiert werden, ohne dabei auf die positiven Eigenschaften von nativen Sprachen zu verzichten. Es wird ein besonderes Augenmerk auf wie die Verwendung klassischer Rust-Bibliotheken im Umfeld von eingebetteten Systemen, den Einfluss des Speichermodells auf das Design, sowie die Integration von C-Bibliotheken für automatisierte Interoperabilitätstests gelegt.
In modernen Industrieautomatisierungssysteme kann die IT-Sicherheit nicht mehr ignoriert werden. Um dem Datenverkehr Schutz zu bieten, sind kryptografische Schutzmaßnahmen notwendig. Eine gängige Schutzmaßnahme ist die Verwendung von digitalen Zertifikaten zur Autorisierung und Authentifizierung. Um Zertifikate sicher und geregelt auf Endgeräte zu bringen, ist jedoch eine Public-Key-Infrastructure notwendig. Solche PKIs sind bisher wenig im Umfeld der Industrieautomatisierung untersucht. Das Institut für verlässliche Embedded-Systems der Hochschule Offenburg bietet hierfür eine mögliche Lösung, welche auf einer zentralen Einheit, genannt Credentialing Entity, basiert. Ein Demonstrator dieses Konzepts wurde bereits in den weit verbreiteten Systemprogrammier-sprachen C und C++ implementiert.
Im Rahmen dieser Arbeit wird die Verwendung der modernen speichersicheren Programmiersprache Rust in der Systemprogrammierung als Alternative zu den Domänenführern C/C++ am Beispiel der Implementierung der Credentialing-Entity untersucht. Hierbei werden Aspekte wie die Vorzüge Rusts, dessen Ökosystem und Interoperabilität mit den Marktführern C/C++ untersucht.