With the emergence of the Internet of Things (IoT), embedded systemsare more connected than ever. Software reconfiguration, whileubiquitous on desktop and server systems, is fledgling on these IoTdevices. The challenges associated with the constrained nature of thedevices and network links hamper the design of solutions.Any communication with networked devices for delivering adjustmentsto the device must at least be authenticated with digital signatures. Ipresent benchmarks on both post-quantum and pre-quantum digitalsignatures and show the trade-offs required when deploying one ofthese primitives on the devices. I show that while post-quantum-security is indeed doable on these devices, large differences existbetween the different cryptographic primitives and their implementa-tion.Within the heterogeneous space that is the Internet of Things, a genericmechanism to deliver firmware updates to a large number of devices isrequired. I survey open standards, which provide generic buildingblocks for secure firmware updates on constrained devices. I publishedan open source implementation of SUIT able to deliver arbitraryfirmware updates for the RIOT operating system. I show that firmwareupdates secured with SUIT can be achieved on a large variety ofdevices, including the smallest of microcontrollers.Small virtual machines hosted on embedded devices can act as sandboxfor the device, to isolate and reconfigure part of the application code. Ipresent the design of a minimal VM, rBPF, implemented and studiedexperimentally. I compare the performance to an approach hostinghigh-level logic in an embedded WebAssembly virtual machine. I showthat rBPF can be deployed with minimal impact on the firmware size.The capability to run applications inside a VM can be leveraged tobundle applications into small software components. I introduceFemto-Containers, which enables Functions-as-a-Service capabilitiesembedded on heterogeneous low-power IoT hardware. I show thatFemto-Containers significantly improve state of the art, by provid-ing FaaS-like capabilities with strong security guarantees on suchmicrocontrollers.I design and present Cubedate, a framework achieving strong securityguarantees and low overhead, for continuous deployment of softwareover the air on multi-tenant CubeSat. With the implementation here Ishow how SUIT and the other components presented in this work canbe used to maintain and adapt the logic running as CubeSat payload.
Mit dem Aufkommen des Internet of Things (IoT) sind eingebettete Systememehr denn je miteinander verbunden. Die Neukonfiguration von Software ist zwarauf Desktop- und Serversystemen allgegenwärtig, auf diesen IoT-Geräten jedoch noch in den Kinderschuhen. Die mit den Einschränkungen der Geräte und Netzwerkverbindungen verbundenen Herausforderungen erschweren die Entwicklung von Lösungen. Jede Kommunikation mit vernetzten Geräten zur Übermittlung von Anpassungen an das Gerät muss mindestens mit digitalen Signaturen authentifiziert werden. Ichstelle Benchmarks sowohl für post-quantische als auch für prä-quantische digitaleSignaturen vor und zeige die Kompromisse auf, die bei der Bereitstellung einer dieser Primitiven auf den Geräten erforderlich sind. Ich zeige, dass post-quantischeSicherheit auf diesen Geräten zwar durchaus möglich ist, dass jedoch große Unterschiede zwischen den verschiedenen kryptografischen Primitiven und ihrer Implementierungbestehen. Innerhalb des heterogenen Raums, den das Internet der Dinge darstellt, ist ein generischer Mechanismus zur Bereitstellung von Firmware-Updates für eine große Anzahl von Geräten erforderlich . Ich untersuche offene Standards, die generische Bausteine für sichere Firmware-Updates auf eingeschränkten Geräten bieten. Ich habe eine Open-Source-Implementierung von SUIT veröffentlicht, die beliebige Firmware-Updates für das RIOT-Betriebssystem bereitstellen kann. Ich zeige, dass mit SUIT gesicherte Firmware-Updates auf einer Vielzahl von Geräten durchgeführt werden können, einschließlich der kleinsten Mikrocontroller. Kleine virtuelle Maschinen, die auf eingebetteten Geräten gehostet werden, können als Sandbox für das Gerät dienen, um einen Teil des Anwendungscodes zu isolieren und neu zu konfigurieren. Ich stelle das Design einer minimalen VM, rBPF, vor, die implementiert und experimentell untersucht wurde. Ich vergleiche die Leistung mit einem Ansatz, bei dem hochrangige Logik in einer eingebetteten WebAssembly-VM gehostet wird. Ich zeige, dass rBPF mit minimalen Auswirkungen auf die Firmware-Größe eingesetzt werden kann. Die Möglichkeit, Anwendungen innerhalb einer VM auszuführen, kann genutzt werden, um Anwendungen zu kleinen Softwarekomponenten zu bündeln. Ich stelle Femto-Containers vor, die Functions-as-a-Service-Fähigkeiten auf heterogener IoT-Hardware mit geringem Stromverbrauch ermöglichen. Ich zeige, dass Femto-Containers den Stand der Technik erheblich verbessern, indem sie FaaS-ähnliche Fähigkeiten mit starken Sicherheitsgarantien auf solchen Mikrocontrollern bieten. Ich entwerfe und präsentiere Cubedate, ein Framework, das starke Sicherheitsgarantien und geringen Overhead bietet, für die kontinuierliche Bereitstellung von Software über Funk auf Multi-Tenant-CubeSats. Mit der hier vorgestellten Implementierung zeige ich, wie SUIT und die anderen in dieser Arbeit vorgestellten Komponenten verwendet werden können, um die als CubeSat-Nutzlast ausgeführte Logik zu warten und anzupassen.