Was sind die Einschränkungen eines Clients, der sich über TOR mit dem Netzwerk verbindet?

Ich habe kürzlich die Wiki-Seite "Schwächen" zum Thema "Angriff auf alle Benutzer" gelesen und bin auf diese Aussage gestoßen:

Die IP-Adressen der meisten Benutzer sind vollständig öffentlich. Sie können Tor verwenden, um dies zu verbergen, aber das Netzwerk funktioniert nicht, wenn alle dies tun.

Das bedeutet, dass ein Client, der sich über TOR mit dem Netzwerk verbindet, nicht alle seine Aufgaben auf diese Weise erfüllen kann. Was sind die Einschränkungen eines Clients, der sich über TOR mit dem Netzwerk verbindet, im Gegensatz zu einer Standardverbindung?

Antworten (2)

Der Bitcoin-Client ist als Peer-to-Peer-Netzwerk konzipiert. Um dem Netzwerk beizutreten, müssen Sie eine Verbindung zu einem Knoten herstellen, der eingehende Verbindungen akzeptiert. Zum Schutz vor bestimmten Arten von Sybil-Angriffen versucht ein Client, 8 ausgehende Verbindungen zu geografisch unterschiedlichen Knoten herzustellen.

Wenn Sie über eine Verbindung zum Netzwerk herstellen tor, können Sie keine eingehenden Verbindungen akzeptieren. Sie verbrauchen 8 Slots für eingehende Verbindungen, die im Netzwerk verfügbar waren (mit den ausgehenden Verbindungen, die Sie herstellen), aber Sie werden selbst keine hinzufügen. Dies kann dazu führen, dass dem Netzwerk die Slots für eingehende Verbindungen ausgehen, wodurch die Zuverlässigkeit des Netzwerks verringert wird. Das Bitcoin-Netzwerk hatte in der Vergangenheit Probleme mit Engpässen bei verfügbaren Slots für eingehende Verbindungen. Es ist nicht genau klar, warum, aber eine Möglichkeit ist der absichtliche böswillige Konsum dieser Slots.

Der Grund, warum Sie Clients, die eine eingehende Verbindung zu Ihnen herstellen, nicht vollständig vertrauen können, liegt darin, dass ein Angreifer trivialerweise alle Ihre eingehenden Verbindungsslots verbrauchen kann und alle diese Verbindungen von verschworenen Knoten stammen können, die von demselben Benutzer betrieben werden. Sie haben jedoch die vollständige Kontrolle darüber, mit wem Sie ausgehende Verbindungen herstellen.

Im Allgemeinen sollten Sie sicher sein, solange mindestens eine Ihrer Verbindungen zu einem gut verbundenen Knoten geht, der sich nicht mit allen anderen Knoten verschworen hat, mit denen Sie verbunden sind.

Es wäre schön, wenn Sie die Möglichkeit hätten, Ihre Antwort zu aktualisieren. Aktuelle Versionen von Bitcoin Core haben die Tor-Steuerung integriert und können eingehende Verbindungen über das Tor-Netzwerk annehmen. Eine Einrichtungsanleitung gibt es hier .

Derzeit muss ein Bitcoin-Knoten, der Tor verwendet, um sich mit einem anderen Bitcoin-Knoten zu verbinden, einen Ausgangsknoten passieren.

An einer Lösung dafür wird gearbeitet, wie hier beschrieben :

Die Unterstützung von IPv6 auf eine etwas allgemeine Art und Weise würde den Weg dafür ebnen, dass Bitcoin beispielsweise als Tor- oder I2P-Hidden-Dienst funktioniert, indem Onioncat-ähnliche Tor-codierte-in-IPv6-Adressen verwendet werden.