Wer führt eine Liste von Bitcoin-Knoten und sind sie nicht ein schwaches Glied in der Sicherheit des Systems?

Ich verstehe, dass zwischen den Leuten, die Bitcoin-Knoten und damit das Bitcoin-Protokoll betreiben, das System vertrauenslos und sicher ist.

Es scheint jedoch ein schwaches Glied zu geben – die offizielle Liste der Bitcoin-Knoten.

Wer auch immer die offizielle Liste führt, kann sich theoretisch verschwören, um sicherzustellen, dass 51% der Knoten unter seiner Kontrolle sind und schändliche Operationen wie doppelte Ausgaben und/oder das Ändern von Transaktionen durchführen können.

Wie wird dieses Problem gehandhabt?

Können Sie klarstellen, was Sie mit „offizieller Liste von Bitcoin-Knoten“ meinen? Sprechen Sie über die fest codierte Liste von DNS-Seeds ? Das Ändern dieser Liste würde bestenfalls sicherstellen, dass Personen , die diese Liste verwenden, zumindest vorübergehend nur Knoten sehen würden, die unter der Kontrolle des Angreifers stehen. Es würde Ihnen nicht helfen, 51 % der gesamten realen Mining-Kapazität im Netzwerk zu kontrollieren.
Ja, der DNS-Seed. Wenn Sie den DNS-Seed kontrollieren, kontrollieren Sie die Nodes, an die alle neuen Transaktionen gesendet werden, und Sie kontrollieren den „offiziellen Datensatz“ der Blockchain (da Sie Ihren Nodes mitteilen können, welche Version der Blockchain zurückgegeben werden soll). Ich spreche nicht unbedingt von Mining
auf DNS-Seeds: Sie erhalten einen DNS-Vorschlag, der mit der Software geliefert wird, und während der Arbeitszeit ändern sich die DNS-Verbindungen (basierend auf Erreichbarkeit, Geschwindigkeit und wahrscheinlich mehr). Die DNS-Seeds dienen also nur zum Starten Ihres Knotens. DNS selbst ist ein Dienst "des Internets", und wer dort die Tabellen kontrolliert, kann das Datenrouting manipulieren. Es gibt Diskussionen über DNSSEC, aber es kommt nicht wirklich zum Einsatz, daher vertrauen offensichtlich die meisten Menschen DNS im Internet. Sicherlich gibt es in Bitcoin Core kein Sicherheitsproblem aufgrund der Verwendung von DNS-Servern. Das Sicherheitsproblem würde unter der Bitcoin-Core-App liegen ...

Antworten (1)

Zunächst einmal gibt es nicht wirklich eine "offizielle" Liste von DNS-Seeds. Sie denken wahrscheinlich an die Liste, die von Bitcoin Core verwendet wird. Anderen Kunden steht es jedoch frei, eine andere Liste auszuwählen oder Peers auf ganz andere Weise zu entdecken. Benutzern von Bitcoin Core steht es auch frei, ihre Software neu zu konfigurieren, um eine andere Liste zu verwenden. Diese Liste ist also lediglich die Voreinstellung für einen bestimmten Client.

Diese Liste wird von den Bitcoin Core-Entwicklern ausgewählt, genau wie alles andere im Bitcoin Core-Quellcode. Sie können hier über die Kriterien lesen, die sie (behaupten) verwenden, wenn sie Knoten für diese Liste auswählen.

Es ist wahr, dass die Bitcoin Core-Entwickler, wenn sie sich entscheiden würden, böse zu sein, diese Liste so ändern könnten, dass sie nur DNS-Seeds enthält, die nur Adressen für von ihnen kontrollierte bösartige Knoten zurückgeben. Das würde es ihnen ermöglichen, einen Sibyl-Angriff auf jeden Benutzer von Bitcoin Core durchzuführen .

Aber wenn Sie darüber nachdenken, wenn die Bitcoin Core-Entwickler sich entschieden haben, böse zu sein, könnten sie viel schlimmere Dinge viel einfacher tun. Sie könnten einfach einen Code eingeben, der ihnen sofort alle Münzen in der Brieftasche direkt zusendet, sobald die Software ausgeführt wird. Warum sich die Mühe machen, mit DNS-Seeds und all dem herumzuspielen?

Und wenn Sie noch etwas darüber nachdenken, besteht bei jeder Software, die Sie jemals verwenden, dieselbe Art von Risiko: Sie vertrauen darauf, dass die Software nichts Böses enthält.

Also, was ist unser Schutz dagegen? BitcoinCore ist Open Source. Sie und alle anderen können alle Änderungen sehen, die bis jetzt vorgenommen wurden, und Sie können selbst beurteilen, ob eine dieser Änderungen schlecht war. Sie und alle anderen können die in der Liste bereitgestellten DNS-Seeds testen und sehen, ob sie anscheinend gut erzogene Knoten zurückgeben. Wenn dies nicht der Fall ist, besteht eine gute Chance, dass Sie an anderer Stelle im Internet Warnungen darüber finden, genau wie Sie es wahrscheinlich tun würden, wenn die Bitcoin Core-Entwickler eine andere böse Änderung vorgenommen hätten.

Wenn alle derzeit aufgelisteten DNS-Seed-Betreiber plötzlich beschließen, sich zum Bösen zu verschwören, ist die Situation ähnlich: Die Leute werden es wahrscheinlich ziemlich schnell bemerken, und Sie werden davon erfahren. Aber die Entwickler von Bitcoin Core wählen Samen aus, die, soweit sie das beurteilen können, von unabhängigen Personen betrieben werden, die individuell ehrlich zu sein scheinen und keinen besonderen Grund haben, sich zu verschwören.


Wenn sich dagegen ein einzelner DNS-Seed-Betreiber dazu entschließt, böse zu werden, sind die Risiken ohne die Zusammenarbeit der Bitcoin Core-Entwickler viel geringer. Solange zumindest ehrlicher Seed übrig bleibt, werden Sie sich wahrscheinlich zusätzlich zu den unehrlichen mit einigen ehrlichen Knoten verbinden. Und wenn Sie sich erfolgreich mit mindestens einem ehrlichen Knoten verbinden, funktioniert ein Sibyl-Angriff nicht: Der ehrliche Knoten sendet Ihnen die richtige Blockchain, und Sie werden an seiner höheren Schwierigkeit erkennen, dass es die richtige ist und die anderen gefälscht sind .


Im Allgemeinen sollten Sie vorsichtig sein, wenn Sie mit Begriffen wie „vertrauenswürdig und sicher“ um sich werfen. Diese Begriffe sind niemals absolut. Sie müssen immer jemandem vertrauen, und es gibt immer Möglichkeiten, die Sicherheit zu verletzen. Das Beste, was Sie tun können, ist zu versuchen, genau zu verstehen, wem Sie vertrauen, was Sie ihnen zutrauen und welche Beweise Sie verwenden können, um zu entscheiden, ob sie dieses Vertrauens wert sind.