Für mehr Dezentralisierung: Gebrauchte RasPi als Full-Nodes unters Volk bringen

Hallo in die Runde.

Eine Idee, die ich seit Monaten mit mir trage und nun versuche sie zum Leben zu bringen. Um die Dezentralität des Bitcoin-Netzwerkes voran zu treiben, sollte die Anzahl der Full-Nodes steigen. Viele würden eine Full-Node in Betrieb nehmen, tun es allerdings nicht, weil die technische Hürde - scheinbar - zu hoch ist. Verständlich.

Hardware

Mein Gedanke: Um die Nachhaltigkeit und die gestiegenen Preise für Hardware zu berücksichtigen, würde ich auf eBay (Kleinanzeigen) gebrauchte Rasperry PI 4 (bestenfalls mit Zubehör wie Kabel, Gehäuse, Kühlung) erwerben (ca. 140 €). Dazu jeweils eine 1TB SSD mit Kabel/Case (ca. 100 €).

Software

Nach dem Erhalt der Hardware und dem Zusammenbau des Hardware-Setups würde ich z. B. Umbrel aufspielen und die Apps Bitcoin Node und Electrs installieren. Nach vollständigem Blockchain-Sync wäre die Node fertig eingerichtet. Da man keine Lightning Node installiert, komme ich auch mit dem Seed nicht in Berührung. Einen Hinweis wie das Umbrel-Passwort geändert kann, geb ich mit auf den Weg.

Die Full-Node wäre fertig und einsatzbereit. Auf einem Medium (Website, Twitter, Forum) würde ich dann das Setup als bestellbar markieren. Jeder, der will, kann das Setup zum Selbstkostenpreis + Versand erwerben. Alle Ankaufskosten der Hardware-Komponenten würde man transparent halten, so dass der Verkaufspreis ebenfalls flexibel bleibt.

Nach dem Kauf

Nach dem Erwerb und der Ankunft müsste die Full-Node lediglich an den Strom und das Internet angeschlossen werden. Umbrel fährt hoch, synct die fehlenden Blöcke, :rocket:.

Optional kann der Käufer die UI im Browser öffnen (könnte problematisch (aber nicht unmöglich) werden für einen Einsteiger), Passwort ändern, seine Wallet mit der Node mittels Electrs verbinden. Nice2Have.

Meinungen

Was sagt ihr dazu? Würde sich so etwas etablieren? Gäbe es dafür Nachfrage? Oder würden Nutzer eher zu professionelleren Lösungen wie RaspiBlitz, Ronin oder The Machine greifen? Ich kann mir vorstellen, dass der Nachhaltigkeitsaspekt (nicht immer alles neu kaufen) und der leicht kleinere Preis für Absatz sorgen könnten.

Als Negativpunkte würde ich das Bleibe-auf-den-Kosten-sitzen-Risiko und den hohen Support-Aufkommen in Betracht ziehen. Beides als Hobby-Projekt nicht zu vernachlässigen :wink:

1 „Gefällt mir“

Ich wüsste nicht was an einem RaspiBlitz Package bei Fulmo professioneller wäre. Du baust ja im Endeffekt genau das gleiche zusammen. :slightly_smiling_face:

Natürlich ist das ein offizieller Shop, der auch Gewährleistung geben muss. Dafür kostet es wahrscheinlich um einiges mehr.

Ich vermute mal bei den geringen Stückzahlen, die du anbieten kannst, finden sich sicher ein paar Interessierte, die nicht so versiert sind und sparen wollen oder müssen. Beispielsweise hier aus dem Forum.

Du kannst aber ja mal hier direkt fragen. Wer konkret Interesse hat, kann sich per PN bei dir melden.

Oder du fügst eine Abstimmung hier ein.

Die ganze Idee ist sehr nobel von dir. Allerdings finde ich, dass man für so einen Aufwand entschädigt werden sollte. Außer du baust nur alle paar Wochen mal einen zusammen.

1 „Gefällt mir“

Ich halte ehrlich gesagt nicht viel davon. Welchen Nutzen erhoffst Du Dir? Nodes sind imho ausreichend gut dezentralisiert. Heißt nicht, dass ich Dein Plan nicht ehrenswert finde. :slight_smile:

Wir können darüber streiten, ob es mehr Lightning-Nodes geben sollte. Wobei ich mich auch hier nicht für mehr, sondern qualitativ bessere Nodes einsetzen würde (hohe Liquidität, verbinden zu Nodes wo ein Channel gebraucht wird, etc.)

Eine günstig erworbene Fullnode + Lightning Node macht den oder die Anwender:in aber noch nicht zu einem versierten User.

1 „Gefällt mir“

Ich denke auch, dass das eine gute Idee ist, aber vermutlich nicht den gewünschten Effekt bringt.
Spätestens, wenn der Node sich das erste Mal in die Ecke stellt wird sich bei der Zielgruppe schnell Frust aufbauen.
Vermutlich wäre es für die User dann sogar besser sich den Node selber zusammen zu bauen, um so besser in den Umgang eingeführt zu werden.

1 „Gefällt mir“

Ich bin mir aktuell nicht ganz sicher, aber ich meine, eine Node wie zum Beispiel Umbrel die hinter Tor sitzt trägt Null zum Netzwerk und deren dezentralität bei.

Lasse mich da aber gerne eines besseren belehren @skyrmion @HODLer

2 „Gefällt mir“

Ne, das hast du falsch verstanden. Sonst würden all die Nodes von Umbrel, RaspiBlitz & Co. gar keinen Mehrwert liefern. Aber das tun sie, definitiv. @Blocktrainer hält ja nicht umsonst seine Node hoch bei jedem Live :wink:

Das kann er jetzt schon - Hardware und Anleitungen gibt es genügend.

Das kann sicherlich schnell passieren…

Eine LN-Node schließe ich vom Setup aus, weil es zu umständlich ist, sie am Leben zu erhalten (auch wenn es mit der Zeit immer einfacher wird). Plus nicht jeder will/kann Liquidität zur Verfügung stellen. Es geht also wirklich um eine reine OnChain-Full-Node mit Zero-Config (für den Nutzer).

Zu Beginn könnte man ja in der Tat dieses Thread dafür nutzen. Wird sich schnell zeigen, ob es eine kluge Idee war :wink:

Nicht das Du da etwas verwechselst. Klar ist beim Blocktrainer die Node jeden Stream mit dabei. Ich glaube aber da geht es eher um die eigene Souveränität nach dem Motto „nicht vertrauen sondern selber verifizieren / be your own bank“. Eine Node wie Umbrel hinter Tor hat für den Betreiber den beschriebenen und absolut notwendigen Vorteil bring dem Netzwerk aber Null.

2 „Gefällt mir“

Dann beantworte doch am besten Dir und uns die Frage:
Welchen Mehrwert liefert der n-te Node?

Ja, ein Node lässt Dich die Regeln prüfen und zwingt Miner sie einzuhalten „not your Node, not your rules“. Ja, Du kannst Deine eigenen Transaktionen mittels eigenem Node ins Netzwerk geben. Brauchst also keine Bank.

Aber für die Dezentralität? Imho gibt es einen Grenznutzen.

Man nehme Extrembeispiele:
Ein Node ist sicher zu wenig, aber brauchst es bei 6 Milliarden Nodes wirklich den sechsmilliardenundeinten Node?

2 „Gefällt mir“

Yep, sehe ich auch so. :point_up_2:

1 „Gefällt mir“

Das wäre mir wirklich neu. In Bitcoin-Kreisen wird ständig propagandiert, Nodes aufzusetzen, damit wir das Netzwerk weiter dezentralisierter bekommen. Es gibt sehr viele Plebs, die mehrere Nodes laufen lassen (und das machen sie sicherlich nicht, um die Wallet jeden Tag mit einer anderen Node zu verbinden).
Und jetzt sagt ihr, der Nutzen ist gar nicht da. Jetzt bin ich wirklich verwirrt.

Jede Node hat einen wichtigen Nutzen: die eigene Souveränität! Nach dem Motto nicht vertrauen sondern selber verifizieren / be your own bank.

3 „Gefällt mir“

Das ist fast schon ein nebensächlicher Effekt. Klar macht ein Node das Netzwerk robuster und dezentraler. Dafür ist aber auch eine globale Verteilung notwendig. 20 Nodes in einem Haus machen das Netzwerk nicht wirklich robuster.

Das Hauptargument für ein eigenen Node bleibt die monetäre Souveränität.

Der Betrieb einer Full Node ist der einzige Weg, Bitcoin ohne die Zuhilfenahme von Dritten zu nutzen. Wer monetäre Souveränität will, muss einen Node aufsetzen!

2 „Gefällt mir“

Das ist schon klar, dass man eine Node primär für die eigene Souveränität hinstellt. Mir geht es aber nicht darum, sondern wirklich um die Dezentralisierung des Netzwerks. Wenn jemand seine Node mit der Wallet verbinden KANN, dann ist es ein schönes Nebeneffekt, was wir gerne mitnehmen. Also ich spreche wirklich aus dem Winkel meiner Idee.

Gut, das will hoffentlich keiner tun.

Ok, ihr sagt also, Full-Nodes würden dem Netzwerk keinen signifikanten Mehrwert liefern, wenn private Haushalte sich Raspis anschaffen? Also ich spreche vom Netzwerk als Ganzes, nicht vom Nutzen der Souveränität des jeweiligen Haushalts.

Nur damit ich es verstehe, sonst gehe ich - wie bis dato - von falschen Annahmen aus.

Dein Eingangsbeitrag war ja aufgrund der einsteigerfreundlichen Handhabung auf Umbrel gemünzt und darauf beziehe ich mich. Umbrel hat Tor per default und das bringt dem Netzwerk Null.

Man kann aber auch andere Anbieter nehmen oder eine Node komplett selbst aufsetzen und dann entscheiden, ob man Tor verwendet. Ich würde aufgrund der privacy und Erreichbarkeit von außen nicht auf Tor verzichten. Aber es gibt genügend Pleps die ihren Node ohne Tor laufen lassen um das Netzwerk zu unterstützen.

Aber um das zu tun, muss man sich ersteinmal mit der Materie auseinander setzen und das würde deiner Grundidee Newbies bzw. technisch nicht versierten sofort eine fertige Node in die Hand zu drücken um die Dezentralität zu stärken zuwider sprechen.

Was deine Idee den technisch nicht versierten geben würde ist monitäre Souveränität und dahingehend finde ich deine Gedanken mega klasse!

1 „Gefällt mir“

Nochmal zum Gemeinnutzen für das Netzwerk, komplett unabhängig von den persönlichen Vorteilen einer eigenen Node.

Mit diesem Fokus ist der Sinn der Dezentralität, also eines verteilten Netzwerks von Nodes:

  • Das Netzwerk kann nicht abgeschaltet werden und es existieren immer Kopien der Blockchain.
  • Das Netzwerk ist permissionless, d.h. zensurresistent.

Angenommen jede Node wäre bereit dazu, mit beliebigen anderen Nodes zu kommunizieren (Routing Funktionalität). Und angenommen, alle Nodes würden eine eigene, komplette Version der Blockchain speichern (Full Node Funktionalität).

Dann wären ohne Berücksichtigung weiterer Aspekte alle Nodes gleichwertig und es gäbe sicher einen gewissen Grenznutzen, so wie von @HODLer beschrieben. D.h. wenn man eine weitere Node hinzufügt wird der zusätzliche Nutzen für das Gesamtnetzwerk bzw. die Dezentralität immer geringer, je mehr Nodes es schon gibt. Bei der heutigen Anzahl an Nodes vernachlässigbar gering.

Allerdings unterscheiden sich die Nodes schon bei der Routing und Full Node Funktionalität, während es im Detail auch noch weitere Unterscheidungsmerkmale gibt.

Routing

Beim Routing kenne ich mich leider selbst nicht wirklich aus. Vielleicht kann da noch jemand was zu sagen, der sich damit auskennt. Hier mein Verständnis:

Viele Nodes nutzen ausschließlich Tor und lassen keine Verbindungen ins Clearnet zu. Und soweit ich weiß müssen Nodes hinter Tor dafür konfiguriert werden, auch eingehende Verbindungen von anderen Nodes über Tor zuzulassen.

Damit das komplette Bitcoin Netzwerk untereinander kommunizieren kann, muss es Nodes geben, die sowohl im Clearnet, als auch über Tor kommunizieren. Man kann natürlich sagen, alle sollten Tor nutzen, aber k.A. ob das überhaupt machbar wäre.

Nodes, die keine eingehenden Verbindungen zulassen, haben aus meiner Sicht auf jeden Fall keinen Gemeinnutzen.

Dazu:
bitcoinbook/ch08.asciidoc at develop · bitcoinbook/bitcoinbook · GitHub
Setting up a Tor hidden service - Bitcoin Wiki
bitcoin/tor.md at 65e9ca22785f4a799cbcff6d95cbe1ce4b4a6bd2 · bitcoin/bitcoin · GitHub

Bei der Raspibolt Einrichtung wird die Node nach meinem Verständnis so konfiguriert, dass ausschließlich Tor genutzt wird, aber Verbindungen in beiden Richtungen zugelassen werden.

Weitere Aspekte

Im Hinblick auf das sichere, nicht abschaltbare Netzwerk, ist evtl. auch eine möglichst globale Verteilung auf möglichst viele unabhängige Internet Service Provider sinnvoll.
Zusätzliche Nodes in Ländern, in denen es bisher kaum Nodes gibt, tragen also wahrscheinlich mehr zum Gemeinnutzen bei, als weitere Nodes in Deutschland oder den USA.

Ansonsten unterscheiden sich Nodes auch dadurch, wie stark sie genutzt werden. Man kann sich darüber streiten, ob Nodes mit einer hohen Anzahl verbundener Wallets besser oder schlechter für das Netzwerk sind.
Wenn man eine stark genutzte Node abschaltet, würde man auf einen Schlag viele Nutzer treffen (→ schlecht). Viele Nutzer sind aber wiederum auf die Full Nodes anderer angewiesen (→ gut).
Optimal ist wahrscheinlich eine gewisse, nicht zu kleine und nicht zu große Anzahl an Wallet Nutzern pro Full Node. Wenn meine Node ausschließlich von meiner Wallet Software genutzt wird, leistet sie in diesem Sinne keinen Beitrag, außer für mich selbst.

Auch zur Durchsetzung eines gewissen Konsens-Regelwerks muss ich z.B. nicht zwingend eine eigene Node betreiben, sondern kann eine andere verwenden, die mir passt.

Wahrscheinlich gibt es noch viele andere Aspekte, so dass die Abwägung wie wichtig eine weitere Node ist, recht subjektiv ist.

5 „Gefällt mir“

@skyrmion danke für diese umfangreiche Ausführung :pray:

1 „Gefällt mir“

Also ich melde mich schonmal als potentieller Käufer…!

Alles klar. Ich habe schon einige „Aufträge“. Sobald ich sie abgearbeitet habe, melde ich mich.

2 „Gefällt mir“