Copyright, 2002 © Michael Sonntag E-Mail: [email protected] WWW: Mag. Dipl.-Ing. Dr....

of 59 /59
Copyright, 2002 © Michael Sonntag E-Mail: [email protected] WWW: http://www.fim.uni-linz.ac.at/staff/sonntag.htm Mag. Dipl.-Ing. Dr. Michael Sonntag Netzwerke und Agenten Netzwerke und Agenten Kommunikation zwischen Agenten, Sicherheit

Embed Size (px)

Transcript of Copyright, 2002 © Michael Sonntag E-Mail: [email protected] WWW: Mag. Dipl.-Ing. Dr....

  • Folie 1
  • Copyright, 2002 Michael Sonntag E-Mail: [email protected] WWW: http://www.fim.uni-linz.ac.at/staff/sonntag.htm Mag. Dipl.-Ing. Dr. Michael Sonntag Netzwerke und Agenten Kommunikation zwischen Agenten, Sicherheit
  • Folie 2
  • Michael Sonntag2 Netzwerke und Agenten Fragen? Bitte gleich stellen! ? ? ? ? ? ?
  • Folie 3
  • Michael Sonntag3 Netzwerke und Agenten Inhalt l Kommunikation zwischen Agenten Allgemeines, Klassifikation, Ontologien Eigentliche Agenten-Kommunikationssprachen FIPA, KQML Sprachen zur Wissensdarstellung RDF, (DAML) DAML+OIL Dublin Core l Sicherheitsaspekte Wer mu wovor geschtzt werden, Sicherheitsmodelle Angriffe auf Agentensysteme Abwehrmglichkeiten
  • Folie 4
  • Michael Sonntag4 Netzwerke und Agenten Agenten-Kommunikation Allgemeines (1) l Wichtig fr Agenten Eine Definition: Kommunikativitt ist einziges Merkmal l Problem: Gemeinsames Verstndnis Syntax wichtig, sonst unverstndlich Syntax kann abstrakt beschrieben werden Meta-Syntax, Meta-Meta-Syntax, Meist kein so groes Problem; Konversionen mglich Semantik mu aber auch festgelegt werden! Sehr schwer abstrakt zu beschreiben! Sehr komplex, vielschichtig, Umgebungsabhngig,... Meist nur eine umgangssprachliche Beschreibung Fr Computer ungeeignet!
  • Folie 5
  • Michael Sonntag5 Netzwerke und Agenten Agenten-Kommunikation Allgemeines (2) l Resultat des Semantik-Problems: Meist genaue Beschreibung der Syntax Zustzlich Umschreibung der jeweiligen Bedeutung Versuch, Vor-/Nachbedingungen exakt zu definieren l Beispiele: HTML/XML/ - Standards Syntax exakt; Bedeutung in Worten dabei
  • Folie 6
  • Michael Sonntag6 Netzwerke und Agenten Agenten-Kommunikation Klassifikation (1) l Eigentliche Agenten-Kommunikationssprachen Entworfen speziell mit Agenten im Hintergrund Kommen oft aus Entwicklung von Agentensystemen Meist prozedural Eher Anwendungsbezogen l Sprachen zur Wissensdarstellung Kommen aus dem Bereich der KI Dienen dazu, Wissen auszutauschen/speichern Meist funktional Eher abstrakt/mathematisch
  • Folie 7
  • Michael Sonntag7 Netzwerke und Agenten Agenten-Kommunikation Klassifikation (2) l Gemischtes Allgemeine Protokolle, die auch von Agenten zur Kommunikation benutzt werden Feste Anwendungsprotokolle, die auch von Agenten bedient werden; z. B. SMTP, HTTP,... Rahmen-Sprachen Beschreiben nicht den eigentlichen Inhalt sondern die Art der Kommunikation bzw. den Kommunikationsablauf; z. B. SOAP
  • Folie 8
  • Michael Sonntag8 Netzwerke und Agenten Agenten- Kommunikationssprachen l Was ist alles nicht enthalten: Physische bertragung Protokoll hngt vom Agentensystem ab (idealerweise!) Adressierung Namensverzeichnis, : Agentensystem Meist wird eine einheitliche eindeutige ID vorausgesetzt Bedeutung (zumindest nicht des Inhalts) Hngt vom einzelnen Agenten bzw. der Applikation ab Sollte so allgemein sei, da alles mitgeteilt werden kann Schnittstelle Wie werden Nachrichten abgeschickt?
  • Folie 9
  • Michael Sonntag9 Netzwerke und Agenten Agenten- Kommunikationssprachen l Was ist enthalten: Syntax der Nachrichten Wie werden Nachrichten ausgebaut, welche Zeichenstze sind erlaubt, wie werden Lnge/Ende gekennzeichnet,... Grundlegende Felder Zeit, Weg, enthalten oder mu dies in die Nachrichten hinein? Zusatzfunktionen Protokollierung, garantierte Zustellung, Wiederholungen, Digitale Signaturen, Verschlsselung Kommunikationsmodell Synchron oder Asynchron? l Allgemeine Abgrenzung aber schwierig!
  • Folie 10
  • Michael Sonntag10 Netzwerke und Agenten Ontologie - Was ist das??? l Basis-Vokabular : Bedeutung der Wrter : Regeln fr Bedeutung von Wort-Kombinationen l Ermglicht Unabhngigkeit von konkreten Systemen, da einmal allgemein definiert Es existieren aber viele Alternativen zu jedem Gebiet! l Befat sich immer nur mit einem relativ kleinen Bereich fr eine einzelne Anwendung l Beschreibt die Interpretation einer Nachricht
  • Folie 11
  • Michael Sonntag11 Netzwerke und Agenten Ontologie-Beispiel l Ontologie 1 (Beleuchtung): Birne (=Leuchtkrper) Einsetzen (=montieren) Birne einsetzen (=in die Fassung einschrauben; geht nur, wenn Fassung vorhanden ist und keine Strom) l Ontologie 2 (Garten): Birne (=Obstbaum) Einsetzen (=pflanzen) Birne einsetzen (=Baum pflanzen; geht nur zu bestimmter Jahreszeit)
  • Folie 12
  • Michael Sonntag12 Netzwerke und Agenten KQML Grundstruktur (1) l Basiert auf performatives: Anweisungen, etwas bestimmtes zu tun Dies sind die erlaubten Einflumglichkeiten auf andere Agenten Sprech-Akt-Theorie Unterteilt in Gruppen l Zur Untersttzung der Zusammenarbeit dienen Facilitators: Verzeichnis von Agenten Nachrichten-Weiterleitung Finden von Agenten mit bestimmten Fhigkeiten
  • Folie 13
  • Michael Sonntag13 Netzwerke und Agenten KQML Grundstruktur (2) l Basiert auf dem BDI-Modell Performatives sollten beliefs oder goals sein l Kann mit jeder Ontologie verwendet werden l Syntax ist hnlich zu LISP l Protokolle werden NICHT beschrieben, nur die Nachrichten, die verwendet werden Ausnahme: Fehler-Rckmeldung (Nicht verstanden) l Bentigt zustzlich eine Sprache (Ontologie) fr den Anwendungs-Inhalt der Nachrichten Z. B. KIF (Knowledge Interchange Format)
  • Folie 14
  • Michael Sonntag14 Netzwerke und Agenten KQML Grundstruktur (3) l Eigentlicher Nachrichten-Inhalt: Ausdrcke In einer nicht nher spezifizierten Sprache, Syntax, Semantik! Ontologie ist explizit bei jeder Nachricht anzugeben l Keine globale Wahrheit Jeder Agent besitzt seine eigene Weltanschauung Diese kann sich von der anderer Agenten unterscheiden Gegenseitige Beeinflussung durch Mitteilungen Mssen aber nicht ernstgenommen werden!
  • Folie 15
  • Michael Sonntag15 Netzwerke und Agenten KQML Performatives - Gruppen l Discourse Anfragen: ask-if, ask-one, ask-all,... Mitteilungen: tell, untell, insert, uninsert, Befehle: achieve, unachieve, Ereignisse: advertise, unadvertise, subscribe,... l Intervention and Mechanics Fehler, Warten, Bereit,... l Facilitation and Networking Registrieren bei Namensserver (ID + Fhigkeiten) Anfragen nach passenden Agenten
  • Folie 16
  • Michael Sonntag16 Netzwerke und Agenten KQML Einzelne Performatives l ask-if: Fragt den Empfnger ob der Ausdruck fr ihn wahr ist Entweder als Faktum oder mit seinem Wissen beweisbar l tell: Teilt dem Empfnger mit, da der Ausdruck fr den Sender wahr ist l insert (rein intern): Empfnger soll Ausdruck als wahr akzeptieren l achieve (Umgebungs-Beeinflussung): Empfnger soll den Ausdruck zu erreichen versuchen
  • Folie 17
  • Michael Sonntag17 Netzwerke und Agenten KQML Beispiel l Drehzahl neu stellen (Lfter 1, 3500 U/min) (achieve:senderA :receiverB :in-reply-toid1 :reply-withid2 :languageProlog :ontologymotors :contentspeed(fan1,35) ) l Antwort (nach Vollzug) (tell:senderB :receiverA :in-reply-toid2 :reply-withid3 :languageProlog :ontologymotors :contentspeed(fan1,35) )
  • Folie 18
  • Michael Sonntag18 Netzwerke und Agenten FIPA Grundstruktur l FIPA: Umfassende Menge an Spezifikationen Analog zu KQML, basiert auch auf performativen String-Darstellung fast identisch! Darstellungen in XML, Binrformat, definiert l Jedoch andere Performative Bedeutung wird auch mathematisch beschrieben (eigenes sematisches Modell) l Grundidee: Agentensystem-Interoperabilitt l Namensdienst, etc. erfolgt NICHT ber performatives, sondern ber das API! D. h. kein eigener Agent dafr; sondern im System integriert
  • Folie 19
  • Michael Sonntag19 Netzwerke und Agenten FIPA Nachrichtenelemente (1) l performative: Zweck/Typ der Nachricht l sender, receiver: Absender, Empfnger Spezifikation fr Agenten-Benennung existiert l reply-to: An wen geantwortet werden soll l content: Eigentlicher Nutzinhalt l language: Sprache des Inhalts Welcher Parser fr den Inhalt bentigt wird (Prolog, ) l encoding: Codierung des Inhalts Wie Inhalt aufgebaut ist: Unicode, Zeichensatz, Binhex,... l ontology: Bedeutungszusammenhang des Inhalts
  • Folie 20
  • Michael Sonntag20 Netzwerke und Agenten FIPA Nachrichtenelemente (2) l protocol: Spezifiziert das verwendete Protokoll z. B. sind bestimmte Auktionen fest definiert l conversation-id: Eindeutige Instanz-Nummer Gleiches Protokoll mit gleichem Agenten: Neue Nummer l reply-with, in-reply-to: Nachrichten-ID fr Verkettung Vereinfacht Verfolgung gleichzeitiger Kommunikationen l reply-by: Sptester Zeitpunkt fr eine Antwort Sptere Antworten werden ev. nicht mehr bercksichtigt Zeit aus Sicht des Senders (keine globale Zeit)!
  • Folie 21
  • Michael Sonntag21 Netzwerke und Agenten FIPA Nachrichtentypen l Agree: Zustimmung, eine Aktion auszufhren l Call for proposal: Anfrage nach Lsungen fr einen Ausdruck (Art ffentl. Ausschreibung) l Confirm: Information, da ein Ausdruck wahr ist Sender ist berzeugt: Da es wahr ist, da Empfnger unsicher, und da Empfnger akzeptieren sollte l Inform: hnlich wie confirm Aber Empfnger-Unsicherheit wird nicht vorausgesetzt l Not understood: Nachricht unverstndlich l Request: Bitte zur Ausfhrung einer Aktion
  • Folie 22
  • Michael Sonntag22 Netzwerke und Agenten FIPA Beispiel l Anfrage: Welche Dienste bietet Agent j an? (query-ref:sender (agent-identifier :name i) :receiver (set (agent-identifier :name j)) :content ((all ?x (available-service j ?x)))) l Antwort: Agent j kann Flge, Zugpltze und Autos reservieren (inform:sender (agent-identifier :name j) :receiver (set (agent-identifier :name i)) :content ((= (all ?x (available-service j ?x)) (set(reserve-ticket train) (reserve-ticket plane) (reserve automobile))))) l Ereignis-Abonnement: (subscribe:sender (agent-identifier :name i) :receiver (set (agent-identifier :name j)) :content ((iota ?x (= ?x (xch-rate EUR USD)))))
  • Folie 23
  • Michael Sonntag23 Netzwerke und Agenten l Format fr Metadaten Hauptschlich fr WWW gedacht, aber universell einsetzbar; jetzt WWW nur mehr ein kleiner Teil l Hngt stark mit XML zusammen (=Reprsentation) XML + Schema (Datentypen) + Namespaces l Formale Semantik Erlaubt Einsatz von Inferenz-Regeln (Ableitung neuen Wissens aus Summe von bekanntem) l RDF Schema: KEIN Vokabular! Typsystem, um Vokabulare zu definieren! RDF Grundstruktur (1)
  • Folie 24
  • Michael Sonntag24 Netzwerke und Agenten l Basiert vollkommen auf Tripeln Subject, Predicate, Object l Subjekt und Objekt werden durch URI identifiziert URL (Uniform Resource Locator): Webadresse URI (Uniform Resource Identifier): Kann alles bezeichnen; mu keine Webadresse sein! Einzelne Knoten knnen auch unbenannt bleiben l Container: Um mehrere Objekte einfach zusammenzufassen (Bag, Sequence, Alternative) RDF Grundstruktur (2) SubjektObjekt Eigenschaft
  • Folie 25
  • Michael Sonntag25 Netzwerke und Agenten l Aufbau von Statements: l Statements knnen zusammengefat werden Verkrzung der Schreibweise Knnen jederzeit wieder expandiert werden RDF Aufbau Subjekt Eigenschaft Objekt
  • Folie 26 S OP O S P">
  • Michael Sonntag26 Netzwerke und Agenten RDF Beispiel Die Resource http://www.fim.uni-linz.ac.at/ wurde von der Person mit der Nummer 8154711 erstellt. Der Name dieser Person ist Michael Sonntag und diese hat die E-Mail Adresse [email protected] Michael Sonntag [email protected] Verkrzte Form: S OP O S P
  • Folie 27
  • Michael Sonntag27 Netzwerke und Agenten RDF Reification l Statements ber Statements: Aussage: Michael hat diese Webseite erstellt Susi sagt, da Michael diese Webseite erstellt hat Michael Susi
  • Folie 28
  • Michael Sonntag28 Netzwerke und Agenten RDF Schema (1) l Etwas anderes als XML Schema! Spezifiziert nicht die Struktur, sondern die Bedeutung! l Objektorientierter Aufbau: Klassen und Vererbung Basis: Resource (ALLES ist eine Ressource) Class: Eine Klasse Ableitungen: subClassOf Property: Eigenschaften einer Klasse Spezialisierung: subPropertyOf Bsp: biologischerVater ist Spezialisierung von biologischemElternteil l Grundstzlich Mehrfachvererbung mglich
  • Folie 29
  • Michael Sonntag29 Netzwerke und Agenten RDF Schema (2) l Einschrnkungen (Constraints) range: Aus welcher/n Klasse()n die Werte einer Eigenschaft stammen knnen domain: Zu welchen Klassen eine Eigenschaft gehren kann l Kommentare mglich (comment, label) l Modell-Elemente (Reification): Statement, subject, predicate, object, Container,... l Erweiterungen: Zustzliche Eigenschaften werden festgelegt Beispiel: DAML+OIL
  • Folie 30
  • Michael Sonntag30 Netzwerke und Agenten RDF Schema Beispiel Klasse: Product An item sold by ACME Widgets Inc. Eigenschaft: Product Number Instanz: Mega Widget V10 08/15
  • Folie 31
  • Michael Sonntag31 Netzwerke und Agenten DAML Grundstruktur l DAML = DARPA Agent Markup Language l Erweiterung von XML und RDF l Grundgedanke: Aus einzelnen Fakten und Regeln lassen sich automatisch neue Fakten ableiten Beispiel (Fakten): MutterVon subpropertyOf ElternteilVon Maria MutterVon Herbert Beispiel (Resultat): Maria ElternteilVon Herbert l In XML wrde dies von der Applikation abhngen und wre NICHT in XML codiert!
  • Folie 32
  • Michael Sonntag32 Netzwerke und Agenten DAML+OIL Was kommt dazu? l OIL = Ontology Inference Layer Kardinalitt: Eine Person kann nur einen Vater haben minCardinality, maxCardinality,... Transitivitt von Eigenschaften (Vorfahre) TransitiveProperty, UniqueProperty Mehrere Elemente bezeichnen dasselbe quivalente Klassen und quivalente Instanzen sameClassAs, samePropertyAs, sameIndividual As Neue Klassen aus Vereinigung/Schnittmenge von Klassen unionOf, intersectionOf, complementOf,...
  • Folie 33
  • Michael Sonntag33 Netzwerke und Agenten DAML+OIL Datentypen (1) l Basis: Thing Jedes Objekt ist davon abgeleitet (Ur-Basisklasse) l Eigentliche Datentypen werden nicht definiert; XML-Schema hierzu verwenden Sowie zustzlich die selbst definierten! l Beispiel oben (RDF): Produktnummer knnte beliebiger String sein; sollte aber Nummer sein! Product Number
  • Folie 34
  • Michael Sonntag34 Netzwerke und Agenten DAML+OIL Datentypen (2) l Enumeration: Verfgbarbeit ist entweder InStock, BackOrdered oder SpecialOrder, aber nichts anderes! In stock Back ordered Special order
  • Folie 35
  • Michael Sonntag35 Netzwerke und Agenten DAML+OIL Klassen Erweiterungen (1) l Klassen haben hier wenig mit Objektorientierung zu tun; sie sind vielmehr hnlich der Mengenlehre! Es gibt Vererbung (oben nach unten; Spezialisierung) Agent; Subklassen: LokalerAgent, MobilerAgent Acess; Subklassen: HardwareAccess, LimitedAccess, NoAccess Es gibt aber auch Aggregation (unten nach oben)! HardwareInterface = LokalerAgent UND HardwareAccess l Mehrfachvererbung mglich und wichtig! LokalerAgent Subklasse von Agent und (ev.) von HardwareInterface
  • Folie 36
  • Michael Sonntag36 Netzwerke und Agenten DAML+OIL Klassen Erweiterungen (2) l Disjoint Classes (Klassen mit getrennten Instanzen) Ein Agent ist entweder lokal oder mobil, aber niemals beides! Agent An software agent in our agentsystem. Mobile agent An agent able to move between agentsystems. Local agent An immobile agent, which always stays within the same agentsystem
  • Folie 37
  • Michael Sonntag37 Netzwerke und Agenten DAML+OIL Klassen Erweiterungen (3) l Unions (Vereinigungen): Ein Objekt gehrt einer Klasse an, wenn es entweder der einen oder der anderen Klasse angehrt TrustedAgent = LokalerAgent unionOf CertificateChecked l Intersection (Schnittmenge): Ein Objekt gehrt genau dann einer Klasse an, wenn es allen Teilklassen zugehrt HardwareInterface = LokalerAgent intersectionOf HardwareAccess
  • Folie 38
  • Michael Sonntag38 Netzwerke und Agenten DAML+OIL Eigenschaften Erweiterungen l Inverse Properties: Nur eines mu spezifiziert (bei Instanzen) werden, das andere wird automatisch abgeleitet ElternteilVon inversePropertyOf KindVon l Transitive Properties: Gilt ber mehrere Stufen (wie subclassOf) P MitgliedVon VereinA, VereinA MitgliedVon VereinB Daher ist P MitgliedVon VereinB l Restrictions (besser: Klassifizierungen): Alle Objekte mit best. Eigenschaften gehren zu Klasse Alles was das Attribut hasGUI hat und bei dem dieser Wert true ist, gehrt zur (jetzt definierten) Klasse interactive
  • Folie 39
  • Michael Sonntag39 Netzwerke und Agenten OWL: Nachfolger von DAML+OIL l OWL Web Ontology Language l Bisher nur Entwurf l Sehr hnlich zu DAML+OIL Nur leichte nderungen l Vereinfachte Version (OWL Lite) existiert zur leichteren Implementierung Beschwerden ber zu hohe Komplexitt von DAML+OIL, die Implementierungen sehr schwer macht!
  • Folie 40
  • Michael Sonntag40 Netzwerke und Agenten Dublin Core Grundstruktur l Webbasierte Beschreibung von Dokumenten Metadaten ber Dokumente; im Web suchbar Die Dokumente selbst mssen NICHT im Web sein! l Besteht aus 15 Elementen mit definierter Semantik l Web-Dokumente: Oft als META Tag im Header Oder als eigene XML-Dateien l Unabhngig von RDF Knnen aber gemeinsam verwendet werden l Spezialisierungen fr einige Elemente mglich z. B. Description: TableOfContents, Abstract z. B. Date: Created, Valid, Available, Issued, Modified
  • Folie 41
  • Michael Sonntag41 Netzwerke und Agenten Dublin Core Elemente (1) l Title: Offizielle Benennung der Ressource l Creator: Person, die hauptschlich fr die Erstellung verantwortlich war l Subject: Inhalt der Ressource (Schlsselwrter) l Description: Beschreibung des Inhalts l Publisher: Verantwortlich fr Zugnglichmachung l Contributor: Wer Beitrge zum Inhalt geliefert hat l Date: Datum im Lebenszyklus der Ressource In der Regel das Erstellungsdatum Format nach ISO 8601 (YYYY-MM-DD)
  • Folie 42
  • Michael Sonntag42 Netzwerke und Agenten Dublin Core Elemente (2) l Type: Software, Text, Audio, l Format: Medientyp, Abmessungen, (z. B. MIME-Typ) l Identifier: Eindeutige Referenz (z. B. URI) in Kontext Kontext selbst wird aber nicht spezifiziert! l Source: Wovon die Res. abgeleitet ist (Vorversion) l Language: Sprache (z. B. de-at) l Relation: Verwandte (wie auch immer) Ressource l Coverage: Gltigkeitsbereich Geograph. Bereich, Zeitperiode, Zustndigkeit,... l Rights: IPR, Copyright, DRMS,...
  • Folie 43 WeLearn - Web Environment for Learning The WeLearn Team Online learning platform, E-Learning An online platform for learning. Handling is similar to webpages. Contains mainly resources and communication elements (e. g. forums). 2002-11-05 InteractiveResource de-at">
  • Michael Sonntag43 Netzwerke und Agenten Dublin Core Beispiel (1) Metadaten zum WeLearn-System auf den FIM-Webseiten: WeLearn - Web Environment for Learning The WeLearn Team Online learning platform, E-Learning An online platform for learning. Handling is similar to webpages. Contains mainly resources and communication elements (e. g. forums). 2002-11-05 InteractiveResource de-at
  • Folie 44
  • Michael Sonntag44 Netzwerke und Agenten Dublin Core Beispiel (2) l Probleme erkennbar am obigen Beispiel: Nur ein Creator mglich Was bedeutet das Datum? l Spezialisierung knnte helfen Deren Codierung ist aber noch nicht spezifiziert! Vorschlag dafr existiert Ausgiebige Verwendung von RDF; recht komplex l Sonstige Probleme: Wie bringen wir das ins Web? Als Meta-Tags in der Webseite: Wartung? Eigene Datei: Webseite abfragen und dann erst Verweis auf Metadaten erhltlich (Verweis ist selbst Meta-Tag) Teile der Daten stehen auch so ev. bereits auf Webseite!
  • Folie 45
  • Michael Sonntag45 Netzwerke und Agenten Sicherheitaspekte: Mobilitt (1) Schutz des Rechners vor Agenten Sandbox, Code-Verifikation Schutz der Agenten vor dem Rechner SEHR schwierig; derzeit keine Lsungen Anstze: Verschleierung des Programms, sptere Nachprfung Mobilitt bedeutet Gefahren fr beteiltigte Komponenten:
  • Folie 46
  • Michael Sonntag46 Netzwerke und Agenten Sicherheitaspekte: Mobilitt (2) Schutz der Agenten voreinander Meist kein Problem; ergibt sich aus Rechnerschutz Schutz einer Gruppe von Rechnern Angriffe: z. B. Ressource-Exhaustion Abhilfe: Verzeichnisdienste und bergreifende Kontrolle Schutz von Rechnern untereinander Kein Agenten-spezifisches Problem; Agentensystem / Kommunikation kann aber weiterer Angriffspunkt sein! Schutz einer Gruppe von Agenten Angriffe: Diskriminierung (einzelnen Verzgern) Erkennung: Kommunikation zwischen den Agenten
  • Folie 47
  • Michael Sonntag47 Netzwerke und Agenten Angriffsarten: Bereicherung/Schdigung l Bereicherung (Rationale Angreifer; Diebe) Rckabwicklung eventuell mglich Kosten des Angriffs wichtig Erkennung oft ausreichend Sicherung relativ einfach ( Angriff verteuern) l Schdigung (Irrationale Angreifer; Terroristen) Rckabwicklung unmglich Angriffskosten groteils egal Echte Vorbeugung/Verhinderung erforderlich Sicherung sehr schwer ( Jede Lcke stopfen) l Praxis: Abschtzung Gefahr / Kosten
  • Folie 48
  • Michael Sonntag48 Netzwerke und Agenten Angriffsarten: Extern / Intern l Extern: Kein Vertrauen gegenber dem Angreifer Erringen neuer Rechte Identifikation schwer Kein Zugriff auf die Person l Intern: Dem Angreifer wird vertraut Ausntzen/erweitern bestehender Rechte Identifikation eher einfach Haftung aus bestehendem Verhltnis (z. B. Arbeitsvertrag) Typisch: Mitarbeiter
  • Folie 49
  • Michael Sonntag49 Netzwerke und Agenten Angriffsarten: Datenvernderung l Mit Datenvernderung Prfsummen/Signaturen zur Erkennung Einfach bei statischen Daten (Programmcode, Initialisierung) Schwierig bei dynamischen Daten (Agenten-Zustand) Nachweis oft einfach Schwierigkeit bei mobilen Agenten: Urheber Hand-off von Agenten l Ohne Datenvernderung Beispiel: Zeitverzgerung, Aussphen, Agenten-Kopien, Kommunikationsunterbrechung,... Erkennung sehr schwer Nachweis oft fast unmglich
  • Folie 50
  • Michael Sonntag50 Netzwerke und Agenten Angriffsarten: Kurzfristig / Langfristig l Kurzfristige Angriffe Abhilfe: Anomalitten erkennen Schwierig, da keine Historie vorhanden! Insgesamt leichter, da meist groe Anomalitten ntig Meist eher mit Gewalt oder recht offensichtlich l Langfristige Angriffe Zuerst Vertrauen erreichen, dann zuschlagen Versuchen, Spuren zu verwischen Abhilfe: Anomalitten erkennen Leichter, da viel Historie vorhanden Trotzdem viel schwerer erkennbar als oben, da genau geplant und meist nur kleine Anomalitten erforderlich
  • Folie 51
  • Michael Sonntag51 Netzwerke und Agenten Angriffsarten: Einzeln- / Gruppenangriffe Sowohl bezglich Agenten als auch Rechner! l Einzelangriffe Einfach; klassischer Fall Einmaliger Fehler kann auch echter Fehler sein l Gruppenangriffe Keine Fluchtmglichkeiten, keine Vergleichswerte Auf allen Rechnern gleich; alle Agenten agieren gleich Komplex zu bewerkstelligen Gehuftes Fehlverhalten fllt leichter auf Aber bei vielen Mitwirkenden reichen geringe Fehler
  • Folie 52
  • Michael Sonntag52 Netzwerke und Agenten Sicherheitaspekte: Ausgewhlte Angriffe (1) l Abhren des Agenten-Transfers Agent inaktiv; auf Agentensystem angewiesen Abhilfe: Verschlsselung der bertragung Problem: Man-in-the-middle Angriff: Gegenstelle erkennen l Kopieren von Agenten Durch externen Angreifer (Replay) Seriennummern in bertragung einbauen Verschlsselung Durch Agentensystem Wie Vernderungen des Agenten selbst Erlaubt sptere Analyse und nachspielen/experimentieren
  • Folie 53
  • Michael Sonntag53 Netzwerke und Agenten Sicherheitaspekte: Ausgewhlte Angriffe (2) l Behinderung / Denial of Service Derzeit keine Ressourcen verfgbar Praktisch nicht zu erkennen! Gefahr besonders bei Zeitlimits: Verzgern Vorteil von mobilen Agenten: Ausweichen ev. mglich l In-/Output Modifikation Fr Agenten nur zu erkennen, wenn von wirklicher Quelle signiert Behinderung: Eigenen Output verschlsseln/signieren Rechner mu zuerst den Schlssel aus dem Programmcode extrahieren bevor er flschen kann! Vor-Filterungs Agenten sorgfltig auswhlen!
  • Folie 54
  • Michael Sonntag54 Netzwerke und Agenten Abwehrmglichkeiten: Sichere Hardware l Tamper-proof box: Sehr selten, extrem teuer Wird beim ffnen zerstrt (zumindest Teile davon) l In praktisch keinem Rechner vorhanden l Einziger wirkliche Schutz von Agenten vor Rechner Aber nicht gegen Ein-/Ausgabe-Modifikation! l Besseres Software-quivalent: Agenten nur auf solche Rechner verlagern lassen, deren Besitzern vertraut wird! Zertifikate sagen idR ber so ein Vertrauen NICHTS aus! Dann sind fast keine Sicherheitsvorkehrungen mehr ntig Die Vorhandenen sind dann meistens eher Schutz vor Fehlern!
  • Folie 55
  • Michael Sonntag55 Netzwerke und Agenten Abwehrmglichkeiten: Time-limited security l Programmcode und/oder Daten werden verschleiert (Obfuscation) l Bei bestimmter Rechnerleistung kann meist eine Untergrenze angegeben werden, die fr die Entschlsselung mindestens ntig ist l Bis dahin ist der Agent sicher Sptestens hier mu er von dem Server wegwandern l Probleme: Um so fter verwendet, desto krzer! Keine Implementierung bekannt Kein Schutz geheimer Daten (spter IST Lesen mglich!)
  • Folie 56
  • Michael Sonntag56 Netzwerke und Agenten Abwehrmglichkeiten: betragungs-Verschlsselung l Fr Kommunikation und Agenten-Transfer l Meist kann eigener Transfer nicht berwacht werden Vertrauen in Agentensystem ntig! l Man-in-the-middle Angriffe beachten! Zertifikate austauschen, diese berprfen Kenntnis des privaten Schlssels prfen Gemeinsamen Schlssel berechnen (z. B. Diffie-Hellman) Agent transferieren l Problem: Was, wenn Empfnger nicht verschlsseln kann/will? Dem Agenten bleibt nur mehr die Heimkehr!
  • Folie 57
  • Michael Sonntag57 Netzwerke und Agenten Abwehrmglichkeiten: Code-Signaturen l Code kann signiert werden: Feststellung, vom wem Wird das Besitzer-Zertifikat mitsigniert, so kann auf bereinstimmung geprft werden Vor-/Nachteil: Jeder kann sich selbst zum Signator machen! Funktioniert auch fr Initialisierungs-Daten l berprfung mu durch Agentensystem erfolgen l Problem bei Laufzeit-Daten (bzw. Ergebnissen) Privater Schlssel mte mitgefhrt werden: SEHR gefhrlich! Hand-off: Agentensystem signiert Daten beim Verlassen Sptere nderungen nicht mglich, nur Hinzufgen Feststellung mglich, wo Fehler/Modifikation passiert ist
  • Folie 58
  • Michael Sonntag58 Netzwerke und Agenten Abwehrmglichkeiten: Sandbox l Analog zu Java Sandbox Und vielfach darauf basierend! l Mglichkeiten an Aktionen fr Agenten werden stark eingeschrnkt z. B. kein ungeprfter Datei-/Netzwerkszugriff Verlassen des Sandbox fr Agenten selbst unmglich l Knnen recht sicher erstellt werden (da rel. klein) l Problem: Vieles bentigt dennoch Sonderrechte Wie berprfe man, wem man Rechte gibt? Wer bekommt welche Rechte? Wie knnen diese Rechte auf Teile beschrnkt werden?
  • Folie 59
  • Michael Sonntag59 Netzwerke und Agenten Sicherheitaspekte: Zusammenfassung l Sandbox + Kommunikations-Verschlsselung + Partner-Identifikation = Ausreichend fr Rechner Eventuell: Code-Signaturen + Hand-off zustzlich l Vertrauenswrdiger Recher = Meist ausreichende Sicherheit fr Agenten l Erforderlich: PKI (um Zertifikate prfen zu knnen) Sandbox (mu Teil des Betriebssystems oder der Sprache sein) Verschlsselungs-/Signatur Software Vertrauens-Informationen