Sichere Programmiersprache: Microsoft will Rust statt Go auch in der Cloud
Bisher dominiert Go als Sprache für Cloud-Anwendungen. Rust könnte das dank Webassembly und seiner Sicherheitsgarantien ändern.

Der bei Microsoft für eigene neue Cloud-Software genutzte Incubator Deis Labs hat mit Krustlet nun eine Anwendung veröffentlicht, die verwendet werden kann, um Webassembly-Module mit der Container-Orchestrierung Kubernetes auszuführen. Bisher dominiert bei Kubernetes und damit verbundenen Cloud-Anwendungen Go. Krustlet ist jedoch in Rust geschrieben, was Microsoft so wichtig ist, dass das Team diese im eigenen Security-Blog vorstellt.
Das Unternehmen untersucht seit vergangenem Jahr offiziell die Verwendung von Rust als mögliche alternative Programmiersprache zu C und C++. Das liegt vor allem auch daran, dass mit Rust die Mehrheit der dort sonst typischen Speicherfehler schlicht nicht vorkommen kann. Das ist wichtig, da laut Microsoft rund 70 Prozent aller Sicherheitslücken, die das Unternehmen behebt, auf Speicherfehler zurückzuführen sind.
In seinem Security-Blog schreibt Microsoft nun, dass es nur wenige Berichte darüber gibt, wie Rust für Cloud-Software oder eben in Verbindung mit Kubernetes genutzt wird. Dass sich die Entwickler bei diesem Einsatzzweck dennoch für Rust entschieden haben, liegt an dem standardisierten Bytecode Webassembly (Wasm). Dafür erstellte Module und Anwendungen laufen nun auch außerhalb der ursprünglich geplanten Umgebung des Browsers. Da Rust eine native Unterstützung dafür bietet, können Wasm-Module vergleichsweise leicht in Rust-Anwendungen integriert werden.
Das Team berichtet zwar auch von seinen anfänglichen Problemen beim Einstieg in Rust, was ungefähr einen Monat angehalten habe. Dennoch habe sich die Nutzung der Sprache gelohnt, da damit viele Fehler vermieden worden seien. Das Security-Team hebt hier vor allem den Borrow-Checker von Rust hervor, der Race-Conditions findet. Erst vor wenigen Wochen habe das Microsoft-Team eine Race-Condition in Helm gefunden, die von den Go-Werkzeugen nicht gefunden wurde. Das Team ist sich aber sicher, dass dies mit Rust nicht passiert und die Race-Condition somit nie in den produktiven Code gelangt wäre.
Aus seiner ersten Erfahrung mit Rust schließt das Team: "Wir sehen eine strahlende Zukunft für Rust in Cloud-Software". Das Team will künftig weitere Projekte damit umsetzen, die es als passend für die Sprache empfindet und empfiehlt das auch anderen.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
ne - er wurde in ein SDK umgewandelt und lebt nun via Conduit weiter :)
Ja Go ist halt etwas älter und Rust möchte erstens keine unfertigen Lösungen propagieren...
Darf hier c++ 14/17(20) nutzen, ist n netter Versuch die rust features ein zu holen. Aber...