Schädliche vollständige Knoten, die Denial-of-Service-Angriffe verursachen

Die Kontrolle von >51 % der Mining-Power in Bitcoin ist aufgrund der immensen Investitionen, die erforderlich sein werden, nicht praktikabel. Außerdem verfügt der Bitcoin Core-Client über einen DoS-Schutz gegen böswillige Knoten, die eine Flut von Transaktionen weiterleiten. Aber was würde passieren, wenn ein Angreifer, der mehrere Full Nodes auf der ganzen Welt platziert hat, die Transaktionen nicht an die anderen ehrlichen Nodes weiterleitet? Es gibt über 10.000 vollständige Knotenim Bitcoin-Netzwerk. Ein Angreifer kann die 10-fache Menge dieser Knoten sehr effizient in Bezug auf die geografische Streuung verteilen, sodass er einer der ersten ist, der die übertragenen Transaktionen sieht. Um zu verhindern, dass der bösartige Knoten vom ehrlichen Knoten fallen gelassen wird, kann er von Zeit zu Zeit Transaktionen weiterleiten, um die Verbindung aktiv zu halten. Angesichts der Tatsache, dass es 10x mehr bösartige Knoten als ehrliche gibt, kann es sehr wahrscheinlich sein, dass Miner die übertragenen Transaktionen nicht sehen und sie nicht in den Block aufnehmen. Wurden Untersuchungen durchgeführt, um ein solches Szenario zu verhindern?

Antworten (1)

Es gibt deutlich mehr als 10.000 Full Nodes im Netzwerk. Die 10.000-Zahl ist einfach die Anzahl der erreichbaren Knoten, die öffentlich auf neue Verbindungen warten. Es gibt viel mehr als diese Menge, die keine offenen Ports haben. Luke-jr veröffentlicht Informationen über Knoten, die er selbst kennt [1] , was darauf hindeutet, dass es in der Größenordnung von 100.000 Knoten gibt.

Es bedarf nur einer ehrlichen Verbindung, um unehrliche Verbindungen aufzudecken. Die Standardeinstellung in der Bitcoin-Core-Software ist, dass ein Knoten 8 ausgehende Verbindungen zu anderen Peers herstellt. Standardmäßig akzeptiert die Software auch bis zu 125 eingehende Verbindungen, aber insbesondere Miner werden diese Zahl erhöhen. (Miner verwenden auch separate P2P-Netzwerke wie Glasfaser).

Wenn eine böswillige Partei 90 % der Knoten im globalen Netzwerk kontrolliert, dann beträgt die Wahrscheinlichkeit, dass eine einzelne ausgehende Verbindung sie erreicht, wenn sie zufällig ausgewählt wird, 0,9. Die Wahrscheinlichkeit, dass alle 8 ausgehenden Verbindungen sich dann mit den bösartigen Knoten verbinden, wäre 0,9^8. 10x die Knoten wären nicht ausreichend.

Es gibt ein Papier, Eclipse Attacks on Bitcoin’s Peer-to-Peer Network, das sich mit dem Problem befasst und auch mehrere Gegenmaßnahmen vorstellt, die die Wahrscheinlichkeit begrenzen können, dass ein Angreifer dies durchziehen könnte, selbst wenn es ihm gelingen würde, die große Anzahl von Eclipse Attacks in Gang zu bringen Knoten erforderlich.