The US federal agency DARPA is launching a funding program to train artificial intelligence (AI) to independently transfer existing C and C++ code to the modern Rust programming language – at a level that should correspond to the results of an experienced Rust programmer. The aim is to “once and for all” prevent security shortcomings caused by memory access violations, which are encountered again and again, especially in C code. Under the name ‘Translating All C to Rust’ (‘TRACTOR’), DARPA is promoting proposals for AI systems that use machine learning (ML) and primarily large language models (LLMs) to perform this translation of program code “at scale” completely automatically .
Advertisement
Although this is already possible, the Traktor project of DARPA’s Information Innovation Office will attempt to ensure that the results have the same code quality and comparable style as an experienced Rust developer. The goal of the project is to eliminate an entire class of vulnerabilities caused by memory management errors in C. DARPA writes in a statement From Wednesday.
Code at the level of an experienced developer
Memory security violations are major software vulnerabilities. Programming languages such as C contribute to this because they allow direct memory changes and their language standard does not provide for handling undefined states, argues the Defense Advanced Research Projects Agency, which is part of the US Department of Defense. Due to their long history and widespread use, such security flaws in C and C++ code have been dealt with for more than twenty years. DARPA says that all attempts to improve the situation through troubleshooting tools have proven inadequate – this is the consensus among software developers.
It is known that these types of vulnerabilities can be removed using modern programming languages. Rather, the challenge is to rewrite existing C and C++ software as extensively as the urgency of the problem requires. However, in recent years, a cultural shift toward the establishment of Rust and breakthroughs in machine learning have created an environment in which, according to DARPA, entirely new solutions to the problem are emerging.
Public competitions planned
AI chatbots today can already transfer C code snippets to Rust, and the result is often very good, but not always, said Traktor project manager Dan Wallach. AI research is now challenged to significantly improve automatic translation in Rust, especially in the most critical program constructs. Wallach hopes the project will produce suggestions that combine static and dynamic code analysis and LLM in new ways. “Rust forces programmers to do the job right,” Wallach said. Dealing with all the imposed rules can feel like a restriction, but once you get used to them, they allow freedom: the rules are like guardrails; as soon as you realize they are protecting you, you can focus on more important things. The Traktor project aims to test the capabilities of submissions in public competitions. Proposals can be submitted to DARPA until August 19, and submissions will be presented on August 26.
(Tiv)