Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Sichere Softwarekomponenten AG Heiß Universität Paderborn.

Ähnliche Präsentationen


Präsentation zum Thema: "Sichere Softwarekomponenten AG Heiß Universität Paderborn."—  Präsentation transkript:

1 Sichere Softwarekomponenten AG Heiß Universität Paderborn

2 Motivation zKomplexe Software ySoftware ist zunehmend aus Komponenten aufgebaut, bzw. durch Komponenten erweiterbar. yKomponenten werden von Drittherstellern produziert. yDer Benutzer ist überfordert mit der Entscheidung, ob eine Komponente vertrauenswürdig ist. zProbleme: yKomponenten können Fehler enthalten. yKomponenten können böswillig sein.

3 Motivation zFehlerhafte Komponenten können z.B. ydas Programm abstürzen lassen, yunbeschränkt Ressourcen anfordern, yIn Endlosschleifen laufen

4 Motivation zBöswillige Komponenten könnten z.B. yabsichtlich Fehler verursachen, yFremddaten manipulieren, yandere Komponenten ausspionieren.

5 Gestaltungsparameter zVerschiedene Komponenten in einer VM yFunktionsaufrufe sind 60 bis 180 mal schneller als Kontextwechsel yReferenzen zu übergeben ist erheblich schneller als Kopien zu erzeugen yObjektserialisierung ist langsam

6 Gestaltungsparameter zAber: yRessourcenverbrauch muss eindeutig zugeordnet werden können. yFunktionsaufruf bedeutet, die Kontrolle über den Thread an andere Komponente zu übergeben. yFehler in einer Komponente soll nicht notwendigerweise Programm oder VM beenden.

7 RMI (Sun) zGetrennte VMs yKompletter Schutz yReferenzen können nicht ausgetauscht werden yObjekte werden immer kopiert ykomplizierter zu programmieren ylangsam, schlecht geeignet für feingranulare Kommunikation

8 Kaffe OS (Transvirtual) zGetrennte Heaps yJeder Thread führt nur Code einer Komponente aus ySpeicherverbrauch kann eindeutig zugeordnet werden ylangsame Prozesskommunikation über Shared Memory Areas yKommunikation nur mit vordefinierten Typen ykeine direkten Funktionsaufrufe

9 J Kernel (Cornell) zCapabilities, Protection Domains yKomponenten operieren in separaten Domänen yTrennung zwischen lokalen und geteilten Objekten yCapabilities repräsentieren Daten einer anderen Komponente, können aberkannt werden yImplementiert durch eigenen ClassLoader, der Code modifiziert und Stubs für Kommunikation zwischen Domänen.

10 J Kernel (Cornell) zCross-Domain Calls yObjekte, die keine Capabilities sind, werden als Kopien übergeben ykein Threadwechsel, Thread wechselt die Domain yBlockierend, evtl. kehrt Ausführung nie zum Aufrufer zurück yRessourcen können nicht einer Domain zugeordnet werden

11 Diplomarbeit (Uni Paderborn) zZuordnung von Ressourcen yJedes Objekt wird einem Kontext zugeordnet yGarantie, das Funktionsaufrufe zurückkehren yEintritt in fremde Funktion ohne Threadwechsel ykeine Modifikation der VM yRessourcenkontrolle


Herunterladen ppt "Sichere Softwarekomponenten AG Heiß Universität Paderborn."

Ähnliche Präsentationen


Google-Anzeigen