Rust

Rust ist eine Programmiersprache, die Ihr Programm gar nicht erst baut, wenn es die Speicherfehler enthält, hinter denen die meisten schweren Sicherheitslücken stecken.

Auch bekannt als Rust-Sprache Rust lang Systemsprache

Definition

Rust ist eine Programmiersprache für Software, die nicht ausfallen darf. Deshalb steckt sie in Betriebssystemen, in Browser-Motoren und in den kleinen Teilen, 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, und genau diese Strenge ist der Sinn der Sache.

Um zu verstehen, warum, braucht man eine einzige Idee davon, 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 in solcher Software, und das ist keine Vermutung. Microsoft und Google haben die Fehler im eigenen Code gezählt und kamen auf eine ähnliche Zahl, fast sieben von zehn.

Die Antwort von Rust ist ungewöhnlich, denn 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 ab. Andere sichere Sprachen lösen das anders, mit einem Aufräumer, der neben dem Programm läuft und es hin und wieder kurz anhält. Rust hat keinen und bleibt dadurch schnell genug für Aufgaben, bei denen eine Pause nicht erlaubt ist, und 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 deshalb schlecht. 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, oder ein Dienst unter Dauerangriff.

Eine Anwendung reicht dann doch bis in ganz normale Produkte: Eine schwierige Logik lässt sich einmal in Rust schreiben und danach in eine Android- wie in eine iPhone-App einbauen. So liegen die Regeln an einer Stelle statt an zweien. Linkysoft schlägt das nur vor, wenn diese Logik wirklich schwer ist, weil jede zusätzliche Sprache eine weitere Fähigkeit ist, die das Team halten muss. Bietet ein Anbieter Rust an, fragen Sie, was genau kaputtgeht, wenn dieser Teil versagt, denn eine gute Antwort nennt etwas Konkretes. Bleibt die Antwort 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.