Bringing Rust to Safety-Critical Systems in Space
Lukas Seidel, Julian Beier

TL;DR
This paper advocates for adopting Rust in safety-critical space systems, providing practical guidelines, a rewriting procedure from C, vulnerability fixes, and a new compiler target to enhance safety and applicability in aerospace projects.
Contribution
It offers a comprehensive overview of Rust's potential in safety-critical aerospace systems, a pragmatic rewriting procedure from C, vulnerability discoveries, and a new compiler target for space hardware.
Findings
Identified and fixed three vulnerabilities in satellite communication protocols.
Developed a procedure for partially rewriting C systems in Rust.
Introduced a Rust compiler target for bare metal PowerPC.
Abstract
The development of safety-critical aerospace systems is traditionally dominated by the C language. Its language characteristics make it trivial to accidentally introduce memory safety issues resulting in undefined behavior or security vulnerabilities. The Rust language aims to drastically reduce the chance of introducing bugs and consequently produces overall more secure and safer code. However, due to its relatively short lifespan, industry adaption in safety-critical environments is still lacking. This work provides a set of recommendations for the development of safety-critical space systems in Rust. Our recommendations are based on insights from our multi-fold contributions towards safer and more secure aerospace systems: We provide a comprehensive overview of ongoing efforts to adapt Rust for safety-critical system programming, highlighting its potential to enhance system…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRisk and Safety Analysis · Combustion and Detonation Processes
