Ein Friend-to-Friend (F2F) oder auch Freund-zu-Freund Computernetz ist ein dezentrales P2P Netzwerk, bei dem Benutzer ausschließlich direkte Verbindungen mit Leuten herstellen, denen sie auch vertrauen. Zur Authentifizierung und meist auch zur Verschlüsselung des Austauschs dienen Kennwörter oder digitale Schlüssel. Außer dem direkten Kontakt von vertrauten Personen erlauben einige F2F Programme durch Overlay-Netzwerke auch indirekte Verbindungen zu unbekannten Clients. Dieser Austausch läuft dann über eine Kette vertrauter Verbindungen (Hop-Ketten oder Freundes-Hops), so dass auch hier nur direkte F2F Verbindungen hergestellt werden und der Datenverkehr über eine Hop-Kette hinaus anonymisiert ist.
Nutzung eines F2F als Overlay-Netzwerk
BearbeitenEin F2F Overlay-Netzwerk besteht aus mehreren kleinen F2F Netzwerken, in dem Dateipakete generell nur über die Knotenpunkte von Freunden übertragen werden. Die Knotenpunkte des Internets (ISP etc.) passieren die Pakete verschlüsselt.
Beispiel: Alice und Bob sind Freunde von Peter, kennen sich aber nicht näher. Wenn Alice nun eine Datei an Bob senden möchte, kann Alice die Datei an ihren Freund Peter senden und Peter sendet die Datei an seinen Freund Bob. Da Peter der vertraute Freund von Alice ist und der vertraute Freund von Bob, kann über Peter ein Austausch von Bob und Alice stattfinden. Mit F2F Software verläuft die Kommunikation zwischen den Beteiligten verschlüsselt, es gibt also keine Chance sich in diese Kette einzuklinken und die Kommunikation mitzulesen. Außerdem bleiben Alice und Bob im Internet anonym, da der Verkehr zwischen den beiden über Peter läuft und sie somit nicht die IP Adresse des jeweils anderen kennen.
Die Verbindung zweier anonymer Benutzer heißt auch Hop-Kette, da Peter nur als Mittelsmann fungiert und "übersprungen" wird (engl. hop). In herkömmlichen P2P Netzen sind diese Hop-Ketten durch öffentliche Peers genutzt worden, bei denen die IP Adressen der Mittelsmänner leicht herauszufinden waren. Dieses gilt insbesondere für den ersten Hop des Hochladenden.
F2F Sofware wie I2Phex, Mute oder ANts_P2P bauen deswegen IP Verbindungen bestenfalls über eine vertraute und verschlüsselte Verbindung zu persönlich bekannten und geprüften Verbindungen auf.
Ein Freund-zu-Freund-Netzwerk ist daher eine Art Instant Messenger, der jedoch nicht zentral über einen Server organisiert werden darf (sonst sind ja die IP Adressen aller Teilnehmer wieder bekannt), sondern über eine dezentrale Verbindung der Teilnehmer organisiert wird.
F2F Programme
BearbeitenErste Netzwerke, die das umsetzen sind WASTE sowie
Weitere Beispiele von Software, die jedermann benutzen kann, um F2F Netze zu errichten sind:
Retroshare Instant Messenger
BearbeitenRetroshare_Instant_Messenger ist eine Art Instant Messenger, indem man alle seine Freunde mit einem Schlüssel einträgt und mit diesen verschlüsselte Verbindungen aufrecht erhält. So besteht die Möglichkeit, mit den Freunden verschlüsselt zu chatten und Dateien zu senden. Dieses ist jedoch nur die erste, nahe liegende Funktion, die viele Instant Messengers ebenso umsetzen, auch verschlüsselt wie Skype oder Jabber.
Das neue an dem Netzwerk mit Turtle F2F ist jedoch, dass der Messenger nicht zentral über einen Server läuft (ähnlich wie CSpace, der erste serverlose Messenger) - zudem kann jedoch Turtle Verbindungen ausführen, die über mehrere Hops von Freunden geht: Alice sendet die Datei an Peter, Peter lädt diese herunter und sendet sie weiter an Otto, Otto lädt die Datei herunter und sendet sie wieder weiter an Bob. So kann über einen Freund-zu-Freund-Tunnel die Datei ohne IP-Adresse des Senders anonym gesendet werden. Turtle hat diese Funktion eingebaut, die ausschließlich auf vertrauten, verschlüsselten und geprüften Freundes-Verbindungen basieren. Andere Hop-Netzwerke oder Peer-Overlay-Netze wie TOR oder I2p nutzen Peers, die wahllos und öffentliche IP Adressen sind - somit also immer eine IP Adresse anklagen oder beschnüffeln können.
Nutzung von F2F
Bearbeiten- Ein F2F-Netzwerk hindert unbekannte Leute daran, die IP Adresse zu erkennen sowie auch, nachdem der Freund mit seinem Schlüssel geprüft wurde, Fremde selbst aus dem Port der Firewall auszuschließen. Nur die Verbindung zu dem geprüften Freund wird zugelassen.
- Da die Verbindungen verschlüsselt sind, besteht keine Möglichkeit des ISP oder weiterer Knotenpunkte im Internet, auf die transferierten Dateien zuzugreifen.
- Der Verschlüsselungsmechanismus ist so angelegt, dass der Schlüssel über einen anderen Kanal als das Internet übertragen wird (Telefon, persönlich oder ein anderer Instant Messenger mit anderem Port), so dass Angreifer eines F2F-Programms an dem dafür vorgesehenen Port keine Chance haben sich des Schlüssels zu bemächtigen. Das ist die symmetrische Verschlüsselung mit Austausch des Schlüssel über einen persönlichen anderen Weg, als den Weg, über den später die verschlüsselten Datenpakete gehen sollen.
Was F2F nicht ist
Bearbeiten- Ein Freund-zu-Freund Netzwerk ist immer dezentral organisiert, darf also niemals über einen zentralen Server gesteuert werden. Das erstmalige Verbinden nach dem Starten des Computers oder einer Sitzung - es wird auch Bootstrappen genannt - ist daher dezentral zu organisieren und nicht wie beim IRC oder bei anderen Messengern üblich über einen zentralen Server, da dieser alle IP Adressen der Teilnehmer kennt.
- Ein F2F Netz ist auch nicht ein privates Hub oder ein privater FTP Server, an dem sich alle Freunde anmelden. Es muss sichergestellt werden, dass ich nur die IP-Adresse meiner Freunde kenne, aber nicht die IP-Adressen der Freunde meiner Freunde.
- Freenet und zum Teil auch WASTE in seinem broadcasting Modus sind kein F2F-Netzwerk, da sich automatisch unbekannte Teilnehmer mit dem Client verbinden.
- CSpace ist ein serverloser Messenger, der Dateien zwar verschlüsselt überträgt, aber nicht die Möglichkeit bietet, dass diese an Freunde von Freunden automatisch weitergeleitet werden.
- Ein F2F-Netzwerk besteht erst, wenn die Freunde eines Messenger wiederum denselben Client nutzen und somit Hop-Ketten im Dateitransfer gebildet werden können.
Zukünftiger Gebrauch von F2F-Netzwerken
Bearbeiten- Reputation wird online zukünftig durch die Überprüfung von Freunden abhängen, wenn jemand eine Datei weiterreicht und diese sich als falsch erweisen wird, hat der Freund die Möglichkeit, die Freundschaftsbeziehung abzubrechen und somit wird das Netzwerk insich zur Vertrautheitsprüfung beitragen.
- Geld funktioniert als ein zentraliziertes Reputationssystem. F2F könnte also normales Geld entweder zusätzen oder sogar ersätzen, indem es die Anwendung eines dezentralizierten Reputationssystems (wie zum Beispiel die Altruistische Wirtschaft) ermöglicht.
- Die Nutzung von starker symmetrischer Verschlüsselung (, d.h. Übertragung des Schlüssels über einen zweiten Kommunikationsweg) wird dazu führen, dass vertraute Dokumente online vermehrt ausgetauscht werden können.
- Die Ablage und Speicherung von Dokumenten im Web wird erleichert, indem Freund-zu-Freund Verbindungen genutzt werden können und so der ISP ausgeschlossen wird, der bislang immer Dokumente einsehen kann.
Einige Sicherheits-Brüche in den gegenwärtigen P2P-Netzen und ihre Lösung durch F2F
BearbeitenAußer der Tatsache, daß gegenwärtige p2p-Netze keine Verschlüsselung oder nicht genügend starke Schlüssel verwenden, sind hier einige andere Brüche zu nennen:
- In den Ländern, in denen anonymes P2P verboten ist, wird die Nutzung ermöglicht, in dem der Transfer zu einem Freund genutzt wird.
- Die Auswertung von Verbindungsdaten ist zwar möglich, wird aber durch die symmetrische Verschlüsselung der Pakete irrelevant. Zusätzlich ist es möglich, wie in Waste, irrelevante zusätzliche Datenpakete zu senden, um die Analyse zu stören.
- In den Ländern, in denen starkes Verschlüsseln verboten ist (oder, wo du gezwungen werden kannst, deine Schlüssel preis zu geben), wird die Nutzung von F2F Netzwerken wichtig, da die Prüfung der vertrauten Freunde ein wesentlicher Schritt ist, sich gegen dritte Angreifer abzusichern.
Dateitranfer über mehrere F2F-Verbindungen
BearbeitenNachdem auch die Freunde von Freunden F2F-Verbindungen etabliert haben, beispielsweise in Turtle_F2F, eröffnet sich erst die tiefergehende Funkion von Freund-zu-Freund-Netzwerken: Die Weiterleitung von Informationen an andere über mehrere Freundes-Hops.
Ein Client, der Dateien weiterleiten kann ist das Filesharing-Programm giFT, das im Zusammenspiel mit Turtle den bislang sichersten Weg der Dateiübertragung darstellt, da keine IP-Adressen von Unbekannten an den eigenen PC herangetragen werden.
Siehe auch
BearbeitenSoftware
Bearbeiten- Anonshare
- Retroshare_Instant_Messenger
- Galet
- Alliancep2p http://alliancep2p.sf.net
- GNUnet with "F2F topology" enabled
- Retroshare_Instant_Messenger http://retroshare.sf.net
- Hybridshare http://hybrid-share.sf.net
- Turtle F2F
- Jetiants - see AntsP2P with F2F Messenger Jeti
- WASTE with "ping packets" disabled
Weblinks
Bearbeiten- Research paper, mit Andrew Tanenbaum als Co-Autor, über Turtle F2F und über die F2F-Architektur im Allgemeinen.
- A Survey of Anonymous Peer-to-Peer File-Sharing. LECTURE NOTES IN COMPUTER SCIENCE, 2005 - lix.polytechnique.fr Dieser Beitrag bietet zu Beginn eine Definition von F2F-Netzwerken an.
- Diskussion über F2F mit Ian Clarke vom Freenet-Projekt: http://zgp.org/pipermail/p2p-hackers/2005-December/003272.html
- Dan Bricklin beleuchtet den Begriff F2F in this article
- F2F-Seite bei altruists.org: http://www.altruists.org/projects/ff/
- Adding simple and effective trust measurements to F2F P2P networks: Artikel über die Verwendung einer zeitbasierten Währung als Vertrauensmaß in F2F-Netzwerken