1 / 51

Ähnliche Ziele, verschiedene Wege: Freehaven & GNUnet

Ähnliche Ziele, verschiedene Wege: Freehaven & GNUnet . Sam Joachim joachim@informatik.hu-berlin.de. Vergleich & Einschätzung. Der Rohbau. Definition von Anonymität. Realisierung. Realisierung. Design. Design. Anforderungen. Anforderungen. Freehaven. GNUnet. Agenda.

marcello
Download Presentation

Ähnliche Ziele, verschiedene Wege: Freehaven & GNUnet

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. Ähnliche Ziele, verschiedene Wege: Freehaven & GNUnet Sam Joachim joachim@informatik.hu-berlin.de Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  2. Vergleich & Einschätzung Der Rohbau Definition von Anonymität Realisierung Realisierung Design Design Anforderungen Anforderungen Freehaven GNUnet Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  3. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  4. Grundlegende Begriffe • Agenten in P2P-Systemen: • Publisher möchten Dokumente auf einem Server (und damit im P2P-System) speichern, um verschiedene Lesern den Zugriff zu ermöglichen • Servnet Verbund von Servern Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  5. Formen der Anonymität Anonymität für • Autoren • Publisher • Leser • Server • Dokumente • Abfrage Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  6. Author, Publisher & Reader Anonymity • Anonymität  das Verbergen des wahren Namens und des Standortes • Ein P2P System hat Autoren, Publisher oder Leser Anonymität, wenn es keine Möglichkeit gibt, ein bestimmtes Dokument mit den einzelnen Rollen in Verbindung zu bringen. Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  7. Server Anonymity • Server kann nicht mit einem bestimmtes Dokument in Verbindung gebracht werden • oder: aus der Identifikation eines Dokumentes kann nicht auf den Speicherort geschlossen werden Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  8. Document Anonymity • Server hat keine Kenntnis von den auf ihm gespeicherten Dokumente • sehr wichtiger Bestandteil beider Architekturen (hauptsächlich zum Schutz der Server-Betreuer) Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  9. Query Anonymity • Server kann nicht identifizieren, welches Dokument (welche Anfrage) er ‚served‘, oder welchen Inhalt das Dokument hat • schwächere Form: ‚server deniability‘ • es kann nur mit einer gewissen Wahrscheinlichkeit festgestellt werden, was auf einem Server liegt Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  10. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  11. Anforderungen an das Design • Operationen: • anonymes Einspielen von Dokumenten • anonymes Wiederauffinden und Echtheitsverifikation • Ablaufen von Dokumenten, d.h. löschen des Dokumentes bei Ende des beim Einspielen angegebenen Zeitraumes • Hinzufügen von Servern zum Netzwerk, ohne Beeinträchtigung der Funktion • Finden von inaktiven und ‚toten‘ Servern Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  12. Guidelines 1 • Robustes System • kein Verlust von Dateien bei Ausfällen von etwa 50% der Server • Schaden von ‚bösen‘ Servern soll beschränkt werden (trust-net) • Einfachheit • komplexe Systeme laden Fehler ein  • Eigenständiges System basierend auf realistischen technischen Möglichkeiten. Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  13. Guidelines 2 • Modularität • Dezentralisiertes System • Flexibilität • Open Source • Inhaltsneutralität • Popularität oder öffentliche Meinung soll nicht die Verfügbarkeit beeinflussen Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  14. Bemerkung Effizienz ist bewußt nicht aufgeführt und wird zugunsten von stärkerer Anonymität ‚geopfert‘. Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  15. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  16. Freehaven – Teile des Designs • Veröffentlichungsystem • verantwortlich für Speicherung und Bearbeitung • Kommunikationskanal • verantwortlich für die vertrauenswürdige und anonyme Kommunikation Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  17. Kommunikation • im Moment über das Remailersystem Cypherpunks Remailer Network oder über MIX Remailer • ermöglicht das anonyme Versenden von e-Mails • sehr langsam, aber auch sehr sicher Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  18. Das Servnet • jeder Server ‚beherbergt‘ Daten von anderen Servern im Austausch für die Möglichkeit, seine Daten ins Servnet einzustellen • Austausch = Handel • Servnet ist dynamisch • Daten bewegen sich von Server zu Server, basierend auf Zufall und Vertrauen Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  19. Serverbestandteile • public key • einen oder mehrere Remailer-Blöcke von bekannten Servern • Datensätze über andere bekannte Server mit einer Einschätzung des Vertrauens zu ihnen Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  20. Mixnet (Internet) Struktur des FreeHeaven Servers Comm Modul Node DB Haven Modul Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  21. Publikation im FreeHeaven System • Dokument wird in f1, …, fn Teile (shares) zerteilt, von denen k beliebige shares zur Rekonstruktion ausreichen, jeder share bekommt einen ‚Buddy‘ • in jedem share: Zeitstempel, Buddy, Ablaufinformationen, PK, Anzahl und Nummer der Segmente, Signatur • Server generiert Schlüsselpaar (PKdok, SKdoc) • Server konstruiert und signiert Datensegmente für jedes fn und nimmt jedes share in seinen lokalen Speicher auf Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  22. Anmerkungen zum Buddy • Aufgrund des implementierten Handelssystem, speziell zur Absicherung gegen feindliche Clienten, eingeführt • Jedes share ‚weiß‘ immer, oder sollte wissen, wo (auf welchem Server) sich sein Buddy befindet • weiteres später … Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  23. Wiederauffinden der Dateien … • Indizierung durch Hash des Public-keys H(PKdoc) • Leser erzeugt Schlüsselpaar (PKclient, SKclient) und einen Einmal-Remailer-Antwortblock • Server sendet einen Broadcast nach H(PKdoc) zusammen mit Remailerblock und PKclient • jeder Empfänger testet, ob er einen Teil der Datei mit H(PKdoc) hat • jeden gefundenen Teil mit PKclient verschlüsseln, über den Remailerblock zurücksenden Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  24. H(PKdoc)PKclientOTRM E(PKclient)OTRM … in Motion ‚Bob‘ ? H(PKdoc) ‚Alice‘ PKclient, SKclient OT-Remailer Block ‚Chriss‘ ? H(PKdoc) ‚Dandy‘ ? H(PKdoc) Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  25. Handel der Datensegmente • Warum? • Schutz des Publishers • Server können das System verlassen oder hinzukommen • wichtig für das Reputation System • längere Ablauffristen • moralischen Bedenken der Operatoren • ‚to provide a moving target‘ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  26. Ablauf des Handels • ‚Alice‘ wählt ‚Bob‘ und bietet sharex und fragt nach einem anderen share (Größe und Speicherdauer) • ‚Bob‘ ist interessiert, antwortet mit share y • Fairness beim Handeln basiert auf (Größe*Speicherdauer) • gegenseitiges zusenden der shares und von Belegen (receipts), auch zu den Buddies Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  27. Receipts • beinhaltet: • Hash des PK vom Quellserver und vom Zielserver • Informationen über die zu gesendete und empfangene share traded • einen Zeitstempel • Hash des Dokumenten-Schlüssels • share Nummer, Ablaufdatum und Größe • Alle Informationen sind von A signiert. Falls sich B (oder ein anderer Server) eine Beschwerde sendet, ist dies ein erster, einfacher Beweis für A’s Unschuld. • ist kein Beweis für die Korrektheit der Transaktion, aber für die Hälfte einer Transaktion • Achtung: Handelssystem ist nicht ‘bullet-proof’, es existieren verschiedene Angriffspunkte Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  28. Transfer Gitaw Transfer Tuney Receipt for Tuney Receipt for Tuney Receipt for Gitaw Receipt for Tuney Receipt for Gitaw Receipt for Gitaw Trade in FreeHaven ‚Alice‘ Gitaw ‚Bob‘ Tuney ‚Charlie‘ Gitax ‚David‘ Tunez Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  29. Back to Buddies • Server sollen von Zeit zu Zeit die Existenz der Buddies ihrer shares überprüfen • Server sind für die korrekte Weiterleitung von diesen Prüfungen verantwortlich, falls das betreffende share den Server schon verlassen hat • wenn ein share verschwindet, wird der zuletzt verantworliche Server bekannt gegeben Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  30. Reputation System • verantworlich für den Aufbau von Vertrauen • 2 wichtige Werte: • Ansehen (reputation) • Hält sich der Server an das FreeHaven Protokoll? • Glaubwürdigkeit (credibility) • Versendet der Server valide Daten? • Server sollten Empfehlungen unter bestimmten Umständen versenden: • erfolgreiches Beenden eines Handels • im Falle des Verlustes eines Buddies • bei gravierenden Änderungen von Ansehen und Glaubwürdigkeit Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  31. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  32. Anforderungen an das Design • Anonymität für Benutzer • Deniability („Abstreitbarkeit“) für alle Teilnehmer • Dezentralisation • erst an 2ter Stelle Effizienz • Netzwerk belohnt Teilnehmer für ‚gutes‘ Verhalten •  dadurch kann z.B. das Routen von Anfragen hostspezifisch durchgeführt werden Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  33. Guidelines 1 • Higher-Level-Protocols sollen bei Routing-Entscheidungen beteiligt werden • H-L-Ps entdecken Missbrauch und ‚belohnen / bestrafen‘ • Rechenzeit ist eine kritische Resource  Reduzierung des Verschlüsselungs-overheads für Server Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  34. Guidelines 2 • GNUnet soll ‚wichtige‘ Inhalte von ‚Müll‘ unterscheiden können (Zugriffshäufigkeit) • Daten von ‚guten‘ Servern soll eine höhere Überlebenschance haben, als Daten von potentiel ‚bösen‘ Servern • Bearbeitung von Anfragen abhängig vom Ansehen des Servers Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  35. Bemerkung Allerdings sind implizit die viele der Guidelines von FreeHaven auch hier gültig oder berücksichtigt. Zusätzlich wurde beim Entwurf berücksichtigt, dass GNUnet vielleicht über verschiedene Protokolle getunnelt werden könnte. Ein HTTP-Transport Dienst ist seit dem 26.5. als Beta verfügbar. In Planung: TCP, SMTP Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  36. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  37. Aufbau • ein Server-Prozess • 3 Komandozeilen-Tools zum Einstellen, Suchen & Bewerten und runterladen • GUI geplant Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  38. GNUnet – Verteilte sichere Kommunikation • ähnlich zu SSH • 2-Schlüssel RSA für den Session-key • jede Node ist durch PK (oder H(PK)) identifiziert • aber: statt TCP wird UDP genutzt • TCP: overhead durch handshake, garantiert Reihenfolge der Pakete und Verlust • in GNUnet sind höherliegende Protokolle darauf nicht angewiesen • Vorteil von UDP: leichterer Einsatz von Strom-chiffrierern; wenig Protokoll-overhead Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  39. Verwendete Algorithmen • RSA • gute Sicherheit, patentfrei • Blowfish • gedacht für SW-Implementation, frei, schnell • RIPE160 als Hash • längste Hashfunktion (Ausgabe) in OpenSSL • CRC32 als Checksumme für Daten • 32 bit in jeder iNode übrig, wenn jede 51 Hashes enthält  Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  40. Effiziente Kommunikation • optimale Paketgröße: 1472 bytes (optimal für Ethernet) • Output wird für jede Zielnode gepuffert, um die Anzahl der Pakete niedrig zu halten • Heuristik, wem Daten gesendet werden sollen, ist nicht im Protokoll festgelegt Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  41. Der erste Kontakt … • jede Node muss nicht nur den PK von anderen Nodes, sonder auch derzeitige IP und Port-Adresse kennen • beim Eintritt ins Netzwerk senden an alle bekannten Nodes diese Daten + Ablauf-zeitstempel in signierter HELO-Nachricht • HELO-Nachrichten werden zufällig an andere Nodes weitergeleitet Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  42. Ranking • zum Schutz des Netzwerks • ‚böse‘ Nodes entdecken • ihren Einfluss minimieren • neue Nodes starten immer als ‚untrusted‘ • können Anfragen absenden, diese werden jedoch nur bei freien Kapazitäten beantworted Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  43. Content Ranking • durch Nutzer • kann festlegen, wie wichtig der Inhalt ist • andere Nodes können je nach Vertrauen den Wert übernehmen, oder verringern • auf den Nodes • durch häufiges Anfordern wird das Ranking erhöht Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  44. Publikation und Handel • Publikation: • auf einer Node werden neue Inhalte bereit gestellt • andere Nodes können gefragt werden, ob sie diese kopieren wollen • Handel • hierbei werden Teile zwischen Nodes gehandelt • vergrößert die Menge der vermutlichen Autoren Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  45. Anfragen & Aufbewahrung • Indizierung durch Hash des Schlüsselwortes H(H(H(Keyword)) (Sicherheit) • Hashes können mit and, or und not kombiniert werden • Hashcodes werden in ‚indirection nodes‘ gruppiert (vergleichbar mit UNIX iNodes) • Unterscheidung zwischen Daten und MetaDaten schwierig • GNUnet stellt ‚on the fly‘ Verschlüsselung zur Verfügung Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  46. grafisch … • Zerlegen in 1k Blöcke B1 bis Bn • berechnen von H(B) und H(H(B)) • verschlüsseln von B mit H(B) • speichern unter H(H(B)) • nur 2% Overhead • eintragen in iNodes I1 bis Im • I = H(B1), … ,H(B51),CRC32(B1 • Inodes zusammenfassen • Rekursives Vorgehen  • Root-Inode mit Beschreibungen • mit Keywords verschlüsseln Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  47. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  48. Projektvortschritt • Free Haven: • sehr theoretisches Projekt • letzte Newseintragung 15.08.02 • keinerlei lauffähige Versionen • GNUnet: • lauffähige Version 0.5.4 am 19.5. freigegeben (Linux) • GUI auch schon fertig Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  49. Agenda • Begriffserklärung • Definition von Anonymität • Freehaven • Idee & Anforderungen • Design & Umsetzung • GNUnet • Idee & Anforderungen • Design & Umsetzung • Vergleich • Projektvortschritt • Vor/Nachteile der „Kontrahenten“ Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

  50. Vorteile • Free Haven • Sehr gute Anonymität • Ablauf der eingestellten Daten • GNUnet • schnelle Kommunikation • gute Sicherheit bei geringem Overhead Seminarpräsentation "The Economics of Peer-to-Peer Architectures" von Sam Joachim

More Related