In its drive to embrace the dynamism of the open-source community, Elektrobit now provides first class support for the programming language Rust increasing development productivity, safety and security of automotive ECU projects. This opens the way forward for greater cybersecurity resilience while still maintaining ASIL-D functional safety.
Elektrobit announced that its industry-leading implementation of AUTOSAR-compliant basic software EB tresos AutoCore is now open to support the programming language Rust improving development productivity and cybersecurity resilience. Interested and would-be customers can now request versions using Rust. This further underlines Elektrobit’s “cloud to cockpit” commitment to accelerating the evaluation of Rust for ECU projects, leveraging new product features and providing expert knowledge.
As Rust becomes increasingly popular, proven and preferred by developers, Elektrobit confirms that EB tresos is ready to integrate application software components in Rust. It provides seamless integration and developer-friendly language bindings for AUTOSAR Application SWC in both C and Rust. Also, the build system can build applications depending on the language used to enable developers to start working effectively immediately, including support for Rust’s static code analysis tool “Clippy”.
Elektrobit provides first class support for Rust as part of the product line: This includes generation of idiomatic code: Development is easier and faster. The resulting application is safer and more secure.
Cybersecurity has long since ceased to be just an IT world buzzword: UN Regulation 155 and the EU Cyber Resilience Act are indicative of the increasing awareness of the importance of cybersecurity. Government agencies are increasingly vocal in their requests for the industry to stop using “memory unsafe programming languages.” Studies have demonstrated that about 70% of vulnerabilities are caused by “memory safety issues.” This is clearly significant as we enter the age of software-defined mobility with cars implementing more software features and employing online services from the Internet becomes the norm.
Development of Rust commenced in 2006, and version 1.0 was released in 2015, addressing memory safety issues, correctness of code and programming productivity, while at the same keeping the hardware costs stable. Having the possibility of mixing existing C code with new Rust code makes it the perfect choice for extending existing code bases.
Florian Bartels, senior expert at Elektrobit says “We are seeing significant productivity gains in our teams using Rust while at the same time improving quality due to Rust’s correctness-by-design approach, Rust incorporates half a century of lessons-learned compared to the C programming language, which remains popular in functional safety contexts.”
“We’re excited to see Elektrobit enable memory-safe programming for Classic AUTOSAR on EB tresos using Ferrocene, our fully open source, ISO 26262-qualified Rust compiler toolchain,” said Florian Gilcher, managing director and founder of Ferrous Systems. “Ferrocene leverages Rust’s ability to eliminate entire classes of bugs, ensuring compliance with safety standards while freeing developers to focus on functionality. This solution marks a significant step toward delivering programming innovations that will lead to safer and more reliable vehicles.”
The solution includes automatic code generation, Rust code compilation and static analysis, simplifies error handling, and offers OS and middleware support for the automotive sector and beyond. EB tresos AutoCore adds support for native Rust code, allowing seamless integration and a more fault-resilient code creation. This enables the Rust compiler to find issues at compile time and limits the amount of code which cannot be checked automatically (when using Rust’s “unsafe” keyword), effectively reducing code construction costs time to market and reducing the probability of the introduction of vulnerabilities.
Elektrobit offers a “getting started” tour with more background information with a hands-on session. This paid workshop is designed to help customers evaluate Rust for future ECU development, combining knowledge transfer, practical examples, and explanations of our new product functionalities.