Canonical sponsert die KI-Übersetzung von C nach Rust – Open Source geht in die Offensive für Speichersicherheit

In dieser Saga : IA vs libristes : la fracture s'installe dans l'open source· Episode 6/9

Dev & Code Aug 24, 2026Zu Lesezeichen hinzufügen

Canonical sponsert die KI-Übersetzung von C nach Rust – Open Source geht in die Offensive für Speichersicherheit

Ubuntu hinter einem KI-gestützten Projekt zur automatischen Konvertierung von C nach Rust. Das Ziel: wirklich sicheres Rust, nicht nur Code, der ohne überall `unsafe` kompiliert.

Der konkrete Fall

Gehen Sie von einem klassischen Bug aus: ein Buffer Overflow in einem System-Dämon, der in C geschrieben ist. Korrigierbar, aber der Fehler könnte sechs Monate später in einer anderen Form wieder auftauchen, weil C mechanisch nicht garantieren kann, dass solche Fehler ausbleiben. Stellen Sie sich nun denselben Code in Rust neu geschrieben vor – wo der Compiler diesen Bug strukturell unmöglich macht. Das ist die Ambition, die Canonical (Herausgeber von Ubuntu) finanziell unterstützt: Millionen von Codezeilen in C automatisch in sicheren Rust-Code zu übersetzen, unterstützt durch KI.

Warum das nicht trivial ist

Die automatische Übersetzung von C nach Rust gibt es bereits – das Tool c2rust macht das seit Jahren. Problem: Es erzeugt syntaktisch gültigen, aber überall unsafe-Code. Damit wird genau der Sicherheitsvorteil von Rust zunichte gemacht. Man hat die Syntax gewechselt, aber nicht die Garantien.

Was das von Canonical geförderte Projekt anstrebt, ist idiomatischen und sicheren Rust-Code: Code, der das Typsystem von Rust (Ownership, Borrowing, Lifetimes) nutzt, um Sicherheitsinvarianten bereits zur Compile-Zeit auszudrücken und zu überprüfen. Das ist fundamental schwierig, weil C und Rust unterschiedliche Denkmodelle haben:

// C - korrekt oder Use-after-free je nach Nutzungskontext
char* get_value(struct Map* m, const char* key) {
 return hashmap_get(m, key); // potenziell ungültiger Zeiger, wenn m verändert wird
}
// Rust - der Compiler verbietet die Veränderung von m während des Borrowings
fn get_value<'a>(m: &'a HashMap<&str, String>, key: &str) -> Option<&'a String> {
 m.get(key) // Gültigkeit des Lifetimes wird vom Compiler garantiert
}

Die KI muss verstehen, dass diese beiden Funktionen nicht mechanisch äquivalent sind – und dass eine naive Übersetzung einen unsafe-Block erzeugen würde, keine echte Migration.

Der Subtext: KI im Open Source, nächster Akt

Hier hallt direkt die Debatte wider, die die freie Software erschüttert. Linus Torvalds hat für den Linux-Kernel entschieden: KI-unterstützte Beiträge sind willkommen, Gegner können forken. Canonical folgt derselben pragmatischen Logik – KI als Werkzeug zur Massenmodernisierung, nicht als Bedrohung für die Integrität.

Die eigentliche Frage bleibt die menschliche Validierung: Wer liest den generierten Rust-Code? Wer garantiert, dass die Semantik des ursprünglichen C-Programms erhalten bleibt – einschließlich seiner Randverhalten? Ein Tool, das 95 % guten Rust-Code und 5 % subtil fehlerhaften Code erzeugt, ist gefährlicher als ein Tool, das 100 % unsafe-Code produziert – denn es suggeriert eine falsche Sicherheit.

Was wir erwarten

Wenn das Projekt seine Versprechen hält, wäre das eine beträchtliche Beschleunigung des Übergangs zu Rust in Systemschichten – eine Bewegung, die bereits im Gange ist (Android, Windows, Linux-Kernel, OpenSSL). Da Canonical Ubuntu ins Visier nimmt, betrifft das direkt die Basisschichten von Millionen von Servern in Produktion.

Zum Merken

Canonical unterstützt die KI-gestützte Übersetzung von C nach Rust in großem Maßstab und strebt dabei idiomatischen und sicheren Rust-Code an – nicht nur syntaktisch gültigen Code wie bei c2rust. Die Herausforderung: zu zeigen, dass KI Semantik von Speicherverwaltung verstehen kann, nicht nur Syntax. Beobachten Sie das Projekt, wenn Sie kritischen Systemcode in C warten.

Resources

Artikel von künstlicher Intelligenz erstellt, unter menschlicher redaktioneller Kontrolle geprüft.

Unsere Redaktion
Your Linux server, as a desktop.
TermalOSSponsored
Ops, reimagined

Your Linux server, as a desktop.

Agentless SSH monitoring, a full remote desktop and an AI ops copilot — no agents to install, everything stays on your machine.

SSHSelf-hostedAI Ops
Get early access
War dieser Artikel hilfreich?

4 Personen gefiel dieser Artikel

Gefällt mir
K
Kaito KuroganeSenior-Redakteur (m/w/d)
Senior-Entwickler mit breitem Spektrum, Backend Go + Frontend TS, Open-Source-Beiträger
Teilen:
Your Linux server, as a desktop.
TermalOSSponsored
Ops, reimagined

Your Linux server, as a desktop.

Agentless SSH monitoring, a full remote desktop and an AI ops copilot — no agents to install, everything stays on your machine.

Get early access
LIVERadio Geek Kitsune
Tippen zum Hören – für alle derselbe Sound
0··
// Programm
// all stations
// Track teilen →
Themen
Erkunden
Informationen