Was bedeutet Peer-to-Peer (P2P)?

In der Informatik wird ein Peer-to-Peer-Netzwerk (P2P) als eine Gruppe von Geräten definiert, die gemeinsam Dateien speichern und teilen. Jeder Teilnehmer (Knoten) fungiert als individueller Peer. Typischerweise haben alle Knoten die gleiche Leistung und führen die gleichen Aufgaben aus.

In der Finanztechnologie bezieht sich der Begriff Peer-to-Peer normalerweise auf den Austausch von Kryptowährungen oder digitalen Vermögenswerten über ein verteiltes Netzwerk. P2P-Plattformen ermöglichen Käufern und Verkäufern die Durchführung von Transaktionen, ohne dass Zwischenhändler erforderlich sind. In einigen Fällen können Websites auch eine P2P-Umgebung bereitstellen, die Kreditgeber und Kreditnehmer miteinander verbindet.

Die P2P-Architektur eignet sich zwar für verschiedene Anwendungsfälle, erfreute sich jedoch vor allem in den 1990er Jahren großer Beliebtheit, als die ersten Filesharing-Programme entwickelt wurden. Heutzutage dienen P2P-Netzwerke als Grundlage für die meisten Kryptowährungen und machen einen großen Teil der Blockchain-Industrie aus. Sie werden jedoch auch in anderen verteilten Computeranwendungen verwendet, einschließlich Websuchmaschinen, Streaming-Plattformen, Online-Marktplätzen und dem Webprotokoll InterPlanetary File System (IPFS).


Wie funktioniert ein P2P-System?

Im Wesentlichen werden P2P-Systeme von verteilten Benutzernetzwerken verwaltet. Normalerweise verfügen sie nicht über einen zentralen Administrator oder Server, da jeder Knoten über eine Kopie der Dateien verfügt und sowohl als Client als auch als Server für die übrigen Knoten fungiert. Somit kann jeder Knoten Dateien von anderen Knoten herunterladen oder auf diese hochladen. Dies unterscheidet P2P-Netzwerke von traditionelleren Client-Server-Systemen, bei denen Client-Geräte Dateien von einem zentralen Server herunterladen.

In P2P-Netzwerken teilen verbundene Geräte Dateien, die auf ihren Festplatten gespeichert sind. Mithilfe von Softwareanwendungen, die den Datenaustausch vermitteln sollen, können Benutzer andere Geräte im Netzwerk abfragen, um Dateien zu finden und herunterzuladen. Sobald ein Benutzer eine bestimmte Datei heruntergeladen hat, kann er als deren Quelle fungieren.

Mit anderen Worten: Wenn ein Knoten als Client fungiert, lädt er Dateien von anderen Knoten im Netzwerk herunter. Wenn es als Server fungiert, wird es zur Quelle, von der andere Knoten die Dateien herunterladen können. In der Praxis können jedoch beide Funktionen gleichzeitig ausgeführt werden (z. B. Datei A herunterladen und Datei B hochladen).

Da jeder Knoten Dateien speichert, überträgt und empfängt, werden P2P-Netzwerke mit zunehmender Benutzerbasis tendenziell schneller und effizienter. Darüber hinaus machen P2P-Systeme aufgrund ihrer verteilten Architektur eine hohe Widerstandsfähigkeit gegen Cyberangriffe. Im Gegensatz zu herkömmlichen Modellen gibt es bei P2P-Netzwerken keinen Single Point of Failure.

Wir können Peer-to-Peer-Systeme nach ihrer Architektur kategorisieren. Die drei Haupttypen von P2P-Netzwerken heißen: unstrukturiert, strukturiert und hybrid.


Unstrukturierte P2P-Netzwerke

Unstrukturierte P2P-Netzwerke weisen keine spezifische Organisation der Knoten auf. Die Teilnehmer kommunizieren zufällig miteinander. Diese Systeme gelten als robust gegenüber hoher Churn-Aktivität (d. h. wenn mehrere Knoten häufig dem Netzwerk beitreten oder es verlassen).

Obwohl sie einfacher aufzubauen sind, können unstrukturierte P2P-Netzwerke eine höhere CPU- und Speicherauslastung erfordern, da Suchanfragen an möglichst viele Peers gesendet werden. Dadurch wird das Netzwerk tendenziell mit Anfragen überschwemmt, insbesondere wenn nur wenige Knoten den gewünschten Inhalt anbieten.


Strukturierte P2P-Netzwerke

Im Gegensatz dazu weisen strukturierte P2P-Netzwerke eine organisierte Architektur auf, die es den Knoten ermöglicht, effizient nach Dateien zu suchen, selbst wenn der Inhalt nicht weit verbreitet ist. In den meisten Fällen wird dies durch den Einsatz von Hash-Funktionen erreicht, die die Datenbanksuche erleichtern.

Obwohl strukturierte Netzwerke effizienter sein können, weisen sie tendenziell einen höheren Zentralisierungsgrad und in der Regel höhere Installations- und Wartungskosten auf. Darüber hinaus sind strukturierte Netzwerke weniger robust gegenüber hohen Abwanderungsraten.


Hybride P2P-Netzwerke

Hybride P2P-Netzwerke kombinieren das herkömmliche Client-Server-Modell mit einigen Aspekten der Peer-to-Peer-Architektur. Sie können beispielsweise einen zentralen Server festlegen, der die Verbindung zwischen Peers erleichtert.

Im Vergleich zu den beiden anderen Typen weisen Hybridmodelle tendenziell eine verbesserte Gesamtleistung auf. Sie kombinieren in der Regel einige der Hauptvorteile beider Ansätze und ermöglichen es ihnen, gleichzeitig ein erhebliches Maß an Effizienz und Dezentralisierung zu erreichen.


Verteilt vs. dezentral

Obwohl die P2P-Architektur von Natur aus verteilt ist, ist es wichtig zu beachten, dass es unterschiedliche Grade der Dezentralisierung gibt. Daher sind nicht alle P2P-Netzwerke dezentralisiert.

Tatsächlich sind viele auf eine zentrale Autorität angewiesen, die die Netzwerkaktivitäten steuert, was sie gewissermaßen zu zentralisierten Systemen macht. Einige P2P-Dateifreigabesysteme ermöglichen es Benutzern beispielsweise, nach Dateien von anderen Peers zu suchen und diese herunterzuladen, können jedoch nicht an anderen Prozessen teilnehmen, beispielsweise an der Verwaltung von Suchanfragen.

Darüber hinaus kann der Grad der Zentralisierung kleiner Netzwerke, die von einer begrenzten Nutzerbasis kontrolliert werden und gemeinsame Ziele haben, trotz des Fehlens einer zentralisierten Netzwerkinfrastruktur als höher angesehen werden.


Die Rolle von P2P in Blockchains

In den frühen Stadien von Bitcoin definierte Satoshi Nakamoto es als „Peer-to-Peer Electronic Cash System“. Bitcoin wurde als digitale Geldform geschaffen. Es kann über ein P2P-Netzwerk, das ein verteiltes Hauptbuch namens Blockchain verwaltet, von einem Benutzer zum anderen übertragen werden.

In diesem Zusammenhang ermöglicht die der Blockchain-Technologie inhärente P2P-Architektur den weltweiten Transfer von Bitcoin und anderen Kryptowährungen, ohne dass Zwischenhändler oder zentrale Server erforderlich sind. Darüber hinaus kann jeder einen Bitcoin-Knoten einrichten, wenn er am Blockverifizierungs- und Validierungsprozess teilnehmen möchte.

Daher gibt es keine Banken, die Transaktionen im Bitcoin-Netzwerk verarbeiten oder aufzeichnen. Stattdessen fungiert die Blockchain als digitales Hauptbuch, das alle Aktivitäten öffentlich aufzeichnet. Grundsätzlich enthält jeder Knoten eine Kopie der Blockchain und vergleicht diese mit anderen Knoten, um sicherzustellen, dass die Daten korrekt sind. Das Netzwerk weist jede böswillige Aktivität oder Ungenauigkeit schnell zurück.

Im Kontext von Kryptowährungs-Blockchains können Knoten verschiedene Rollen übernehmen. Vollständige Knoten sind beispielsweise solche, die dem Netzwerk Sicherheit bieten, indem sie Transaktionen anhand der Konsensregeln des Systems überprüfen.

Jeder vollständige Knoten verwaltet eine vollständige und aktuelle Kopie der Blockchain und kann so an der gemeinsamen Arbeit zur Überprüfung des wahren Status des verteilten Hauptbuchs teilnehmen. Es ist jedoch zu beachten, dass nicht alle vollständigen Validierungsknoten Miner sind.


Vorteile

Die Peer-to-Peer-Architektur von Blockchains bietet viele Vorteile. Zu den wichtigsten zählt die Tatsache, dass P2P-Netzwerke eine höhere Sicherheit bieten als herkömmliche Client-Server-Anordnungen. Die Verteilung von Blockchains auf eine große Anzahl von Knoten macht sie nahezu immun gegen Denial-of-Service-Angriffe (DoS), die zahlreiche Systeme betreffen.

Da die meisten Knoten einen Konsens herstellen müssen, bevor sie Daten zu einer Blockchain hinzufügen, ist es für einen Angreifer ebenfalls nahezu unmöglich, die Daten zu ändern. Dies gilt insbesondere für große Netzwerke wie Bitcoin. Kleinere Blockchains sind anfälliger für Angriffe, da eine Person oder Gruppe schließlich die Kontrolle über die Mehrheit der Knoten erlangen könnte (dies wird als 51-Prozent-Angriff bezeichnet).

Infolgedessen verleiht das verteilte Peer-to-Peer-Netzwerk in Verbindung mit der Anforderung eines Mehrheitskonsenses Blockchains einen relativ hohen Grad an Widerstandsfähigkeit gegen böswillige Aktivitäten. Das P2P-Modell ist einer der Gründe, warum Bitcoin (und andere Blockchains) die sogenannte byzantinische Fehlertoleranz erreichen konnten.

Über die Sicherheit hinaus macht die Verwendung der P2P-Architektur in Kryptowährungs-Blockchains diese auch resistent gegen die Zensur durch zentrale Behörden. Im Gegensatz zu herkömmlichen Bankkonten können Regierungen Kryptowährungs-Wallets nicht einfrieren oder leeren. Dieser Widerstand erstreckt sich auch auf Zensurbemühungen privater Zahlungsabwicklungs- und Content-Plattformen. Einige Content-Ersteller und Online-Händler haben Kryptowährungszahlungen eingeführt, um zu verhindern, dass Dritte ihre Zahlungen blockieren.


Einschränkungen

Trotz der vielen Vorteile weist die Nutzung von P2P-Netzwerken auf Blockchains auch gewisse Einschränkungen auf.

Da verteilte Ledger auf jedem Knoten und nicht auf einem zentralen Server aktualisiert werden müssen, erfordert das Hinzufügen von Transaktionen zu einer Blockchain viel Rechenleistung. Dies sorgt zwar für mehr Sicherheit, verringert jedoch die Effizienz erheblich und ist eines der Haupthindernisse für Skalierbarkeit und breite Akzeptanz. Allerdings untersuchen Kryptographen und Blockchain-Entwickler Alternativen, die als Skalierungslösungen eingesetzt werden können. Bemerkenswerte Beispiele sind das Lightning Network, Ethereum Plasma und das Mimblewimble-Protokoll.

Eine weitere mögliche Einschränkung betrifft Angriffe, die bei Hard-Fork-Ereignissen auftreten können. Da die meisten Blockchains dezentralisiert und Open Source sind, können Gruppen von Knoten den Code kopieren und ändern und sich von der Hauptkette trennen, um ein neues paralleles Netzwerk zu bilden. Hard Forks sind völlig normal und stellen an sich keine Gefahr dar. Wenn jedoch bestimmte Sicherheitsmethoden nicht ordnungsgemäß angewendet werden, können beide Ketten anfällig für Replay-Angriffe werden.

Darüber hinaus ist es aufgrund der verteilten Natur von P2P-Netzwerken relativ schwierig, sie zu kontrollieren und zu regulieren, nicht nur in der Blockchain-Nische. Mehrere P2P-Anwendungen und Unternehmen waren an illegalen Aktivitäten und Urheberrechtsverletzungen beteiligt.


Abschließend

Die Peer-to-Peer-Architektur kann auf vielfältige Weise entwickelt und genutzt werden und ist der Kern der Blockchains, die Kryptowährungen ermöglichen. Durch die Verteilung von Transaktionsbüchern über große Knotennetzwerke bietet die P2P-Architektur Sicherheit, Dezentralisierung und Zensurresistenz.

Zusätzlich zu ihrem Nutzen in der Blockchain-Technologie können P2P-Systeme auch andere verteilte Computeranwendungen bedienen, die von Filesharing-Netzwerken bis hin zu Energiehandelsplattformen reichen.