1 / 29

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 09.07.2004 12. Vorlesung

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 09.07.2004 12. Vorlesung. Christian Schindelhauer. ORGANISATION. Nächste Vorlesung : Kommenden Montag 9 Uhr 12.07.2004, 9-11 Uhr F0.530 Weitere interessante Veranstaltungen

kalyca
Download Presentation

Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 09.07.2004 12. Vorlesung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorithmen für Peer-to-Peer-NetzwerkeSommersemester 200409.07.200412. Vorlesung Christian Schindelhauer

  2. ORGANISATION • Nächste Vorlesung: Kommenden Montag 9 Uhr12.07.2004, 9-11 Uhr F0.530 • Weitere interessante Veranstaltungen • Informationsveranstaltung: Umstellung DPO 4 nach Bachelor/Master-StudiumDonnerstag, 15.07.2004, 15:00 Uhr im Audimax  • Projektgruppenvorstellung für Wintersemester 2004/05Montag, 19.07.2004, 16 Uhr in Raum F0.530

  3. ORGANISATION Abschlussveranstaltung: Termin: Dienstag 03.08. ab 20 Uhr Veranstaltungsform: Grillen Getränke werden gestellt, Essen muss selbst organisiert werden Ort: • Freizeitparadies Lippe-See • Schloß- und Auenpark Paderborn • Bad Lippspringe: Hindahls Kreuz • Nähe Campus: Grillplatz am Querweg (hinter B64) • Hinter dem HNI-Gebäude • ...

  4. ORGANISATION Mündliche Prüfung: Termine: 13.-17.09.2004 (10-17 Uhr) 04.-08.10.2004 (10-17 Uhr) Gastdozent: Prof. Dr. Christian Scheideler (Johns Hopkins University) 30.07.2004, 9-10 Uhr, F0.530 Öffentliche mündliche Prüfung: 30.07.2004, 10 Uhr, F0.530 (in der letzten Vorlesung)

  5. Kapitel IV Algorithmen für Peer-to-Peer-Netzwerke Sicherheit in Peer-to-Peer-Netzwerken

  6. Verschlüsselungsmethoden Symmetrische Verschlüsselungsverfahren z.B. Cäsars Code, DES, AES Es gibt Funktion f,g, so dass f(schlüssel,text) = code g(schlüssel,code) = text Der Schlüssel muss geheim bleiben dem Sender und Empfänger zur Verfügung stehen Asymmetrische Verschlüsselungsverfahren z.B. RSA, Ronald Rivest, Adi Shamir, Lenard Adleman, 1977 Diffie-Hellman, PGP Geheimer Schlüssel privat kennt nur der Empfänger der Nachricht Öffentlichen Schlüssel offen Ist allen Teilnehmern bekannt Wird erzeugt durch Funktion keygen(privat) = offen Verschlüsselungsfunktion f und Entschlüsselungsfunktion g sind auch allen bekannt Verschlüsselung f(offen,text) = code kann jeder berechnen Entschlüsselung g(privat,code) = code nur vom Empfänger

  7. Digitale Unterschriften (Signaturen) • Beruhen auf asymmetrischen Verschlüsselungsverfahren, z.B. RSA • Der Unterzeichner erzeugt geheimen Schlüssel (privat) • und öffentlichen Schlüssel (offen) • Komprimat des Texts, z.B. durch kryptographsiche Hash-Funktion h • txt = h(text) • Unterzeichner berechnet g(privat,h(text)) = signature • Empfänger kennen • offen, text und signature • verifizieren f(offen,h(text)) = signature • Problem: • Veröffentlichte Berechnung mittels geheimen Schlüssel kann die Sicherheit des Schemas gefährden (chosen-message-attack) • Lösung: • Nachweisbar sicheres Signaturschem von Shafi Goldwasser, Silvio Micali, und Ronald Rivest, 1988

  8. Sicherheit in Peer-to-Peer-Netzwerken • P2P-Netzwerke sind offen und autonom • Scheinbarer Widerspruch zu Sicherheit? • P2P-Netzwerk arbeiten in feindlicher Umgebung • Internet • Anforderungen • Verfügbarkeit • Dokumentauthentifikation • Anonymität • Zugangskontrolle • Maßnahmen gegen Attacken • Verhinderung • Entdeckung • Handhabung • Systemwiederherstellung nach einer Attacke

  9. Verfügbarkeit • Denial-of-Service Attack • Dienstverweigerungsangriff, z.B. • Viele Peers fragen ein Dokument nach • Viele Peers bombardieren Knoten mit zentralen Aufgaben, z.b. Super-Nodes in Gnutella • Chosen-Victim Angriff in Gnutella (II) • Ein bösartiger Peer lässt sich zum Super-Node erklären • Dann erzeugt er eine Menge von Scheinanfragen für einen seiner Peers • Typische Angriffe • Ausnutzung von Protokoll-Schwächen • kann nachgebessert werden • Infiltration durch bösartigen Peers • siehe byzantinische Generäle

  10. Dokumentauthentifikation • Problemstellung: • Welches Dokument ist authentisch? • Welches ist gefälscht, nachgemacht oder verfälscht? • Lösung: • Digitale Unterschriften • Das Problem des Alters: • Welches Dokument war zu erst da? • Das Independent-Label oder der Markentitel • Wie kann man nachweisen, dass eine Datei älter ist als ein anders? • C14-Methode, Vergilbung etc. funktioniert nicht • Man kann mit herkömlichen Methoden höchstens nachweisen, dass ein Dokument jung ist (aber nicht, dass es alt ist) • z.B. durch Referenz auf aktuelle nicht vorhersehbare Ereignisse • (Europa-Meisterschaft)

  11. Anonymität • Motivation • nicht nur die Verhinderung des berechtigten Zugriffs staatlicher Verfolgungsbehörden gegen die unrechtliche Verletzung von Urheberschutzgesetzen • Zensor und Verfolgung in Diktaturen • Grade der Anonymität • Autor • Wer hat das erzeugt? • Server • Wo wird das gespeichert? • Leser • Wer hat sich das geholt? • Dokument • Welche Dokumente werden auf einen bestimmten Peer gespeichtert? • Free Haven und Crowds • bieten eine Palette verschiedener Grade der Anonymität

  12. Zugangskontrolle • Motivation: • Anwendung von Peer-to-Peer-Netzwerken in Unternehmen, Militär, etc. über das Internet • Bezahl-Peer-to-Peer-Netzwerke • siehe aktuelles Napster • Lösung: • Zentrale Authorisierung • Virtual Money (ebenfalls zentral authentifiziert?) • Verteilte Lösungen hängen mit dem Problem der Identifizierung zusammen • Kollision mit Anonymität • Beispiel • „Jeder darf sich eine Datei herunterladen“ • Wie erkennt man, dass er nicht schon dran war?

  13. Die Sybil Attacke • Wer war Sybil? • Flora Rheta Schreiber schrieb 1973 ein Buch „Sybil“ • Es handelte von einer Frau mit 16 separaten Persönlichkeiten: • Sybil: Aushilfslehrerin mit „Zeit-Aussetzern“ • Peggy: 9 Jahre altes wütendes, verängstigtes Mädchen • Vicki: spricht fließend französisch, weiss alles • Vanessa: spielt Klavier und ist befreundet mit dem Nachbarn • Marsha: dunkle Persönlichkeit mit Selbstmordabsichten • ... • Das Buch (und der darauf folgende Film 1976) geht auf einen tatsächlichen Fall zurück von • Multipler Persönichkeitsstörung, mehrfacher Schizophrenie • Bis heute ist umstritten, in wie weit diese Krankheit bei Menschen wirklich existiert • Bei Peer-to-Peer-Netzwerken ist eine absichtliche Persönlichkeitsstörung ein probates Mittel um die Strukturen zu unterlaufen

  14. Was kann eine Sybil-Attacke bewirken? • Ein Netzwerk kann dadurch den Zusammenhalt verlieren • betrifft CAN, Chord, Viceroy, Pastry, Tapestry • aber nicht Napster (nicht verteilt) • nicht zwingend Gnutella • Mehrheitsabstimmungen über den Zustand des Netzwerks können gestört werden • Mehrheitsfrage: „Verhält sich ein Peer korrekt“ • Entscheidend für die Lösung des Problems der byzantinischen Generäle • Anfragen im Netzwerk • können dadurch weitestgehend observiert werden • können verlangsamt werden • durch Zerstörung der Netzwerkstruktur • DoS-Angriffe können gestartet werden • Sybil-Attacken greifen Peer-to-peer-Netzwerke wirkungsvoll an

  15. Wie kann man Sybil-Attacken abwehren? • Durch zentrale Authorisierung der teilnehmenden Peers • Eine zentrale Instanz authentifiziert die Existenz eines Teilnehmers und die Gültigkeit seiner öffentlicher Schlüssel durch eine digitale Unterschrift • Jeder Peer kann sich dadurch von der Existenz des Peers überzeugen • Problem: Dezentrale Authorisierung • Erlaubt man einem Peer auch nur eine kleine Menge von anderen Peers zu authorisieren, dann • Authorisiert Peer 1 den Peer 2 • Peer 2 authorisiert Peer 3 • Peer 3 authorisiert Peer 4 • ... • Damit steht einer Sybil-Attacke nichts mehr im Wege

  16. Der Sybil-Abwehransatz John Douceur(Microsoft Research) • Annahmen: • Peers sind einzelne Rechner, die einer Person unterstehen • Einzelpersonen besitzen nicht unbeschränkte Rechenresourcen • Alle Teilnehmer des Peer-to-Peer-Netzwerks • müssen ein bestimmtes mathematisches Problem (Challenge) lösen. • Zum Beispiel müssen sie für verschiedene Werte y, das x finden mit h(x)=y, • h ist eine kryptographisch sichere Hash-Funktion • y= h(x) wurde von einem herausfordenden Peer (Challenger) gewählt • Die Größe der Aufgabe kann durch die teilweise Bekanntgabe der Bits von x bestimmt werden • Innerhalb einer gewissen Zeit kann jeder virtuelle Peer nur eine bestimmte Anzahl von solchen „Challenges“ lösen • Vorteil: • Liefert einen Ansatz mit Sybil-Attacken fertig zu werden • Nachteile: ...

  17. Der Sybil-Abwehransatz von John Douceur und seine Nachteile • Riesige Verschwendung von Rechenresourcen • Durch „Ein-Hacken“ in fremde Rechner stehen Angreifer durch enorme Rechenkapazitäten zur Verfügung • Heterogenität des Netzwerks • Studenten an Universitäten können über Pool-Recher große Rechenkapazitäten verfügen • Staatliche Einrichtung verfügen über noch größere Resourcen (siehe Motivation) • Wenig leistungsfähige Peers können durch den Challenge überfordert werden • ältere PCs, Pocket-PCs, etc. • Der Challenge selbst ist ein institutionalisierte Form des Denial-of-Service-Attacks

  18. Das Problem der byzantinischen Generäle • 3 Armeen stehen bereit die gegnerische Burg zu besiegen • Diese sind getrennt und kommunizieren über Boten • Greift nur eine Armee an, so verliert diese. • Greifen zwei an, so gewinnen diese • Greift keine an, so wird die Burg ausgehungert • Aber ein General ist übergelaufen • man weiß nicht, wer...

  19. Das Problem der byzantinischen Generäle • Der übergelaufene General X versucht nun • A zum Angriff zu überreden • B zum Abwarten • A übermittelt den Befehl an B • B übermittelt den Befehl an A • Widerspruch! A Attacke X B Abwarten

  20. Das Problem der byzantinischen Generäle • A übermittelt den Befehl an B • B übermittelt den Befehl an A • Widerspruch! • Weder B noch A können X als Betrüger überführen • da X A oder B als Überläufer darstellt A Attacke? Attacke Abwarten? X B Abwarten

  21. Byzantinische Abstimmung Theorem Das Problem der drei byzantinischen Generäle kann nicht gelöst werden Für vier Generäle ist das Problem lösbar: 1-General, 3 Offiziere-Problem • Betrachte einen (loyalen) General und 3 Offiziere. • Verbreite Information des loyalen Generals an alle General A: Attacke A: Attacke A: Attacke A: pfft! Überläufer

  22. Byzantinische Abstimmung A: Attacke B: Attacke C: Attacke D: Attacke Für vier Generäle ist das Problem lösbar: 1-General, 3 Offiziere-Problem • Betrachte einen (loyalen) General und 3 Offiziere. • Verbreite Information des loyalen Generals an alle Offizieren Algorithmus • General A sendet seinen Befehl an alle anderen (A bleibt bei seinem Befehl) • Jeder andere General sendet diesen erhaltenen Befehl an alle anderen • Jeder berechnet die Mehrheitsentscheidung aus den Befehlen von B, .., D General A: Attacke A D A: Attacke B: Abwarten C: Attacke D: Attacke pfft! B C Überläufer

  23. Byzantinische AbstimmungDer Überläufer als General A A: Abwarten B: Abwarten C: Abwarten D: Attacke A: Abwarten B: Abwarten C: Abwarten D: Attacke Für vier Generäle ist das Problem lösbar: 1-General, 3 Offiziere-Problem • Betrachte einen (loyalen) General und 3 Offiziere. • Verbreite Information des loyalen Generals an alle Offizieren Algorithmus • General A sendet seinen Befehl an alle anderen • Jeder andere General sendet diesen erhaltenen Befehl an alle anderen • Jeder berechnet die Mehrheitsentscheidung aus Befehl von B, .., D B C A: Attacke B: Abwarten C: Abwarten D: Attacke General A: pfft! A D Überläufer

  24. Lösung des Byzantinischen Generäle-Problems Theorem Falls m Generäle Überläufer sind, müssen mindestens 2m+1 Generäle ehrlich sein, damit das Problem der Byzantinischen Generäle lösbar ist. • Diese Schranke ist genau, wenn keine kryptographischen Annahmen gemacht werden • D.h. wenn man genug Zeit hat jede Verschlüsselung zu brechen Theorem Steht ein digitales Signaturschema zur Verfügung, dann kann eine beliebige Anzahl von falschen Generälen verkraftet werden Lösung: Jeder General unterschreibt seinen Befehl In jeder Runde gibt jeder General alle Befehle an alle anderen weiter Jeder inkonsistenter Befehl oder jede falsche Weitergabe kann sofort aufgedeckt und bewiesen werden Schweigt ein General, so kann das unter den ehrlichen Generälen festgestellt werden

  25. Byzantinische Generäle und Peer-to-Peer-Netzwerke - Ein Resumee • Durch den Einsatz von digitalen Unterschriften reduziert sich das Problem auf den (bösartigen) Ausfall von Knoten in einem Netzwerk • wenn die Nachbarn die Kommunikation rekonstruieren können • Problem • dafür werden O(n) Nachrichten pro Peer verwendet • In „Scalable Byzantine Agreement“ von Clifford Scott Lewis und Jared Saja, 2003 • wurde ein skalierbares Verfahren auch ohne Signatur vorgestellt • verkraftet n/6 bösartige Generäle • verwendet nur O(log n) Nachrichten pro Knoten im Erwartungswert • und findet eine Übereinkunft mit hoher Wahrscheinlichkeit

  26. Ein Zensor-Resistentes Peer-to-Peer-Netzwerk • Amos Fiat, Jared Saia, 2002 • „Censorship Resistant Peer-to-Peer Content Addressable Networks“ • Problemstellung • Ein Angreifer schaltet 50% aller Peers durch einen Angriff aus • Gibt es ein Netzwerk, dass solche Angriffe verkraftet? • Annahme: • Der Angreifer weiß nichts über die interne Netzwerk-Struktur • Verwendet man eine zufällige Zuweisung von Aufgaben, • fällt jeder Knoten mit W‘keit 1/2 aus

  27. Das Netzwerk Besteht aus einer Butterfly-Struktur mit Clustern der Größe c log n Die Cluster sind bipartite Expander-Graphen Definition Bipartiter Graph Ein bipartiter Graph besteht aus zwei disjunkten Knotenmengen A und B, so dass jede Kante einen Knoten aus A und B besitzt Definition Expander-Graph Ein bipartiter Graph ist ein Expander-Graph, wenn für jede Teilmenge X von A, deren Größe A um höchstens einen (gewissen) konstanten erreicht, die Menge der Nachbarknoten in B um einen (gewissen) konstanten Mindestfaktor größer ist A B

  28. Diskussion • Vorteile: • Sehr effizientes, robustes, einfaches Verfahren • Das Funktionsprinzip lässt sich auf alle bisher diskutierten Verfahren verallgemeinern • Problem: • Starke Annahme: • Der Angreifer weiß nichts/wenig über die interne Struktur • Funktioniert damit bei Systemen mit Zugangskontrolle • Falls der Angreifer die Struktur kennt: • Dann kann er jedes System mit konstanten Grad mit einem Denial-of-Service-Angriff auf wenige Peers aushebeln • Siehe auch • Baruch Awerbuch, Christian Scheideler • Eingeladener Vortrag am letzten Vorlesungstag

  29. Vielen DankEnde der 12. VorlesungNächste Vorlesung: Mo. 12.07.2004 9-11 UhrNächste Übung: Mo. 12.07.2004 16 Uhr (C) Fr. 16.07.2004 9-11 Uhr (A+B)

More Related