Core Concepts
Cocoon ist eine statische Informationsflusssteuerung (IFC) für Rust, die ohne Modifikationen der Programmiersprache oder des Compilers auskommt.
Abstract
Cocoon ist ein Ansatz für statische IFC, der die Anforderungen an eine praktische Lösung erfüllt: Es verwendet die Programmiersprache Rust, ohne den Compiler oder die Sprache selbst zu modifizieren. Cocoon stellt ein Programmiermodell bereit, mit dem Anwendungsentwickler geheime Werte und Geheimhaltungsrichtlinien darstellen, auf geheime Werte zugreifen und diese entgeheimen können.
Cocoon setzt dabei auf Rust-Funktionen wie Besitz, Traits und prozedurale Makros, um ein rudimentäres Effektsystem für Nichtinterferenz zu implementieren. Dieses Effektsystem schränkt die möglichen Seiteneffekte von Berechnungen ein, um zu verhindern, dass geheime Werte an nicht vertrauenswürdige Stellen fließen.
Die Evaluation zeigt, dass Cocoon in realen Rust-Anwendungen funktioniert und vernachlässigbare oder gar keine Laufzeit- und Kompilierzeitüberschüsse verursacht. Cocoon ist damit der erste Ansatz für statische, typenbasierte IFC in einer gängigen imperativen Programmiersprache ohne Sprachmodifikationen.
Stats
Keine relevanten Statistiken oder Kennzahlen im Artikel.
Quotes
Keine hervorstechenden Zitate im Artikel.