Rust

Eine Programmiersprache, die Ihr Programm gar nicht erst baut, wenn es die Speicherfehler enthält, hinter denen die schwersten Sicherheitslücken stecken.

Auch bekannt als Rust-Sprache Rust lang Systemsprache

Definition

Rust ist eine Programmiersprache für Software, die nicht ausfallen darf. Betriebssysteme, Browser-Motoren, die kleinen Teile, die unter allem anderen liegen und jahrelang laufen, ohne dass jemand sie anfasst. Sie ist schnell, und sie ist streng auf eine Art, die Umsteiger aus anderen Sprachen überrascht.

Um zu verstehen, warum es sie gibt, braucht man eine einzige Idee darüber, wie ein Computer arbeitet. Ein Programm fordert ein Stück Speicher an, benutzt es und gibt es zurück. Ärger beginnt, wenn es ein bereits zurückgegebenes Stück weiter benutzt oder über den zugeteilten Platz hinausschreibt. Diese zwei kleinen Fehler stecken hinter den meisten schweren Sicherheitslücken, die je in solcher Software gefunden wurden. Microsoft und Google haben ihre eigenen Fehler gezählt und kamen auf eine ähnliche Zahl, fast sieben von zehn.

Die Antwort von Rust ist ungewöhnlich. Sie fängt den Fehler nicht ab, während das Programm läuft. Sie weigert sich, das Programm überhaupt zu bauen. Der Compiler verfolgt, wem jedes Speicherstück gehört und wie lange es lebt, und könnte Ihr Code etwas anfassen, das schon weg ist, bricht der Bau mit einer Meldung ab. Andere sichere Sprachen benutzen einen Aufräumer, der neben dem Programm läuft und es hin und wieder kurz anhält. Rust hat keinen und bleibt deshalb schnell genug für Aufgaben, bei denen eine Pause nicht erlaubt ist. Diese Mischung ist der Grund, warum sie in sicherheitskritischen Projekten auftaucht.

Nun der Teil, vor dem niemand warnt. Rust zu schreiben dauert länger, und die ersten ein, zwei Monate fühlen sich wie ein Streit mit dem Compiler an. Leute, die sie gut können, sind seltener und teurer. Für eine Buchungsseite oder ein Ladensystem ist der Tausch schlecht, und eine gewöhnliche Sprache für Webanwendungen wird früher und günstiger fertig. Ihren Preis verdient Rust an einer engen Stelle: ein Gerät, das man kaum aktualisieren kann, ein Teil, das Dateien von Fremden öffnet, ein Dienst unter Dauerangriff.

Eine Anwendung reicht dann doch bis in ganz normale Produkte. Eine schwierige Logik, einmal in Rust geschrieben, lässt sich sowohl in eine Android- als auch in eine iPhone-App einbauen, sodass die Regeln an einer Stelle liegen statt an zweien. Linkysoft schlägt das nur vor, wenn diese Logik wirklich schwer ist, denn es bringt eine weitere Sprache ins Team. Bietet ein Anbieter Rust an, fragen Sie, was kaputtgeht, wenn dieser Teil versagt. Eine gute Antwort nennt etwas Konkretes. Bleibt sie vage, steckt Linkysoft das Geld lieber in eine schlichte mobile App und eine ordentliche Sicherheitsprüfung.

Fragen zu Rust

Ist Rust schwer zu lernen?
Am Anfang schwerer als die meisten. Der Compiler lehnt Code ab, den andere Sprachen durchlassen, und es dauert einige Wochen, bis sich die Regeln normal anfühlen.
Sollte mein Firmensystem in Rust geschrieben werden?
Meist nein. Ein Buchungs-, Laden- oder Praxissystem entsteht in einer üblichen Websprache schneller und günstiger, und Rusts Vorteil zeigt sich dort nicht.
Macht Rust meine Software sicher?
Sie beseitigt eine Fehlerfamilie, die Speicherfehler. Gegen ein schwaches Passwort, ein falsches Recht oder eine offene Datenbank hilft sie nicht, und genau dort fangen die meisten Einbrüche an.
Lässt sich Rust mit unserem vorhandenen Code verbinden?
Ja. Man fügt sie meist Stück für Stück neben dem bestehenden Programm ein und sichert so den riskanten Teil, ohne alles drumherum neu zu schreiben.
Sind Rust-Entwickler teuer?
Sie kosten mehr und es gibt weniger von ihnen. Fragen Sie jeden Anbieter, wer den Code in drei Jahren pflegt, denn diese Antwort wiegt schwerer als der Baupreis.

Immer noch unsicher, was das für Ihr Projekt bedeutet?

Sagen Sie uns, was Sie bauen, und wir antworten in klarer Sprache.