Wie viele Peers benötigen Sie, um sich sicher mit der Blockchain zu synchronisieren?

Was ist die Mindestanzahl an Peers, die erforderlich ist, um meine lokale Blockchain-Kopie sicher zu synchronisieren?

Antworten (1)

Eins! Ihr Full Node prüft beim Synchronisieren jede Transaktion und jeden Block auf Gültigkeit. Sie können daher sicher sein, dass alle Blockchain-Daten, die Ihr Knoten akzeptiert, allen Regeln von Bitcoin folgen. Wenn Ihnen die richtige Blockchain bereitgestellt wird, kann ein einzelner Knoten alle Daten bereitstellen, damit Sie den Blockchain-Tipp des Netzwerks einholen können.

Allerdings akzeptiert Ihr Knoten alle Daten, die allen Regeln von Bitcoin folgen. Wenn ein Angreifer wusste, dass Sie von Grund auf neu synchronisieren würden, es ihm gelang, Ihren Knoten zu sybilisieren, könnte er Sie auf zwei Arten angreifen. Erstens könnten sie Ihnen Daten vorenthalten, dh Ihnen nicht die komplette Blockchain geben. Der Angreifer könnte dies verwenden, um Sie für eine doppelte Ausgabe vorzubereiten, indem er Ihnen Geld schickt, das er bereits woanders in einem Block gesendet hat, von dem er Ihnen nichts gesagt hat. Dies lässt sich leicht abwehren, indem Sie eine Bestätigung verlangen, bevor Sie Zahlungen akzeptieren, oder indem Sie Ihren lokalen Blockchain-Tipp mit dem des Netzwerks über Ressourcen von Drittanbietern wie Blockchain-Explorer verifizieren.

Der zweite Angriff würde dazu führen, dass Sie eine Reihe von Blöcken füttern, die nicht Teil der Blockchain mit der größten Arbeit sind. Dies würde einen immensen Arbeitsaufwand erfordern, da die Blöcke dem aktuellen Schwierigkeitsgrad des Netzwerks entsprechen müssten, um die Überprüfung Ihres vollständigen Knotens zu bestehen. Diese Blöcke müssten auf einen Angriff auf Sie zugeschnitten werden, um eine oder mehrere Transaktionen einzuschließen, die Geld an Sie senden, von denen der Angreifer Ihnen glauben machen möchte, dass sie gültig sind. Das Mining gültiger Blöcke, die nicht Teil der Most-Work-Kette sind, ist eine Investition, die der Suche nach der gleichen Anzahl von Blöcken in der Most-Work-Kette gleichkommt. Sofern Sie nicht routinemäßig sehr große Zahlungen mit wenigen Bestätigungen akzeptieren, sind Sie wahrscheinlich kein Ziel eines solchen Angriffs auf die Bitcoin-Blockchain.

Die letzten beiden Szenarien sind der Grund, warum sich Bitcoin-Knoten im Allgemeinen mit acht Peers (und SPV-Knoten normalerweise mit vier) verbinden und die Informationen aller dieser Peers über ihren besten Blockchain-Tipp vergleichen. Ihr Knoten wird weiterhin jedes Stück Blockchain-Daten nur einmal herunterladen (da er überprüfen kann, ob es Teil der Blockchain mit der größten Arbeit ist).

Danke, bitte, haben Sie eine Dokumentquelle, um genau zu verstehen, wie der Synchronisierungsprozess durchgeführt wird und wie schwierig es ist, selbst mit nur einer Peer-Quelle eine gefälschte Blockchain zu erstellen?
@Noureddine: Der Schutz beruht nicht darauf, wie die Daten ausgetauscht werden, sondern darauf, dass alle Daten von jedem Knoten überprüft werden. Vielleicht sind diese von Interesse: bitcoin.stackexchange.com/a/21092/5406 , bitcoin.stackexchange.com/a/10351/5406 , bitcoin.stackexchange.com/q/12427/5406 , bitcoin.stackexchange.com/q /148/5406
Wenn Sie nur mit 1 Peer synchronisieren, vertrauen Sie darauf, dass dieser 1 Peer Ihnen den Verlauf der richtigen Kette gibt. Typische Full Nodes verbinden sich mit 8 oder mehr Peers, was die Wahrscheinlichkeit erhöht, dass sich Ihr Node mit der richtigen Kette verbindet und unter seinen verbundenen Peers zu einem Konsens kommt.
@ooomid: Danke, ich habe festgestellt, dass meine vorherige Antwort zu kurz war, um den Punkt, den ich machen wollte, richtig zu kommunizieren. Ich habe Teile meiner Antwort überarbeitet.