Kritik zum Video vom 21.09.22: Macht von Mining Pools über Miner

Hallo Liebe Leute
Ich bin, aufgrund des heute veröffentlichen Videos von @Blocktrainer Roman, etwas verunsichert und möchte gerne Eure Meinung dazu hören.
Bitte seht euch folgenden Kommentarverlauf an:


Chris:
Hi Roman, dein Punkt zu den Mininern in Miningpools und dass diese selber entscheiden was für einen Code sie aufspielen, ist nicht korrekt. Die Minier in Pools haben keine eigene Node. Die Pools entscheiden welchen Code ihre Node hat. Dennoch sind die wirtschaftlichen Anreize nicht gegeben, dass Pools bescheissen.
Roman:
Die Miner können jederzeit den Pool wechseln oder einen eigenen Gründen. Poolbetreiber sind Dienstleister für die Miner und können ihnen NICHTS vorgeben.
Chris:
Klar, die Miner können und werden den Pool verlassen. Solange die Miner für den Pool minen, läuft alles über die Pool-Node


Was ist eure Meinung dazu?
Ich bin der Meinung Roman macht im Video eine Falschaussage.

LG, Chris

Und wieso genau ist das jetzt ein Nachteil?

Wenn ein Miner sich für einen Pool entscheidet, dann entscheidet er sich auch für die Bedingungen und Anforderungen dieses Pools. Sind diese Bedingungen nicht zufriedenstellend oder verändern sich, kann der Miner jederzeit den Pool verlassen.

Allgemein: Nur weil ich keine eigene Node habe bedeutet das nicht dass ich nicht entscheiden kann welche z.B. Regeln ich unterstützen möchte. Ich kann mich schließlich für eine Node entscheiden.

Jeder Miner kann außerdem eine eigene Node betreiben (oder eine vertrauenswürdige Node nutzen) um Angaben des Pools zu verifizieren. Betrugsversuche würden sofort auffallen und dazu führen dass der Miner den Pool verlässt.

Habe das Video nicht gesehen, aber seiner Antwort auf deinen Kommentar würde ich so zustimmen.

Ich sage ja nicht, dass es ein Nachteil ist. Deinen Punkten stimme ich voll zu.

Roman sagte im Video, dass die Pools nichts zu sagen haben, da die Miner ihre eigenen Regeln/Nodes haben. Das stimmt meiner Meinung nach nicht.
Die Pools haben ihre eigene Node und die Miner (ich zB) müssen dem Pool vertrauen, bzw. können den Pool verlassen, wenn es zu Missbrauch kommt.

Übersehe ich da etwas?

Ja, das ist natürlich richtig.

Du musst dem Pool z.B. vertrauen dass er dir deinen Anteil auszahlt. Der Pool hat aber gar keinen Anreiz das nicht zu tun (sofern er relevant bleiben will), weshalb sich das nötige Vertrauen hier auch in Grenzen hält. Das hast du in deinem Kommentar ja auch schon geschrieben.

Aber so wie ich die Argumentation von Roman verstehe geht es darum dass Pools keine Macht über die Miner haben. Wie gesagt, das Video habe ich nicht gesehen.

Wenn man keinem Pool vertrauen will kann man auch einen Peer-to-peer Pool nutzen, womit dann der eigentlich zentrale Pool Server dezentralisiert wird.

Nö, glaube nicht. :slight_smile:

Dann sind wir ± der selben Meinung.

Dennoch:
Bsp. ein Soft oder Hardfork steht zur Debatte.
Wenn ich als Miner in einem Pool mine, dann weiss ich nicht, welchen Code er auf seiner Node laufen lässt.
Bei den Transaktionen ist es ähnlich. Wenn ich will, dass meine Regeln, bzw. der Code verwendet wird den ich bevorzuge, dann muss ich meine Transaktionen über die eigene Node laufen lassen.

Das ist schon richtig, aber irgendwie auch wieder nicht. :smiley:

Wenn es um zukünftige Entscheidungen geht werden sich Pools eigentlich immer positionieren wollen, da sie ihre „Macht“ (die sie denken zu haben) ausspielen wollen. Beim Signalisieren für eine Änderung (siehe Taproot) ist das ganze natürlich noch offensichtlicher. Da Miner (bzw. in diesem Kontext Pools) aber ohnehin keine effektive Macht über die Nutzer haben spielt das auch keine so große Rolle.

Was einzelne Regeln und/oder Zensur angeht kann der einzelne Miner wie gesagt seine eigene Node parallel laufen lassen und mit Angaben des Pools vergleichen. Wenn der candidate Block den ich vom Pool Server erhalte verdächtige Unterschiede [1] zu einem lokal bzw. mit meiner Node erzeugten Block Template aufweist kann ich daraus meine Schlüsse ziehen.

  • Es fehlen Transaktionen mit P2TR Outputs → Pool unterstützt Taproot nicht
  • Es fehlen immer mal wieder Transaktionen, obwohl dessen Feerate sehr hoch gewesen wäre → Eventuell Zensur

Alle Regeln drehen sich um die Frage „Ist diese Transaktion gültig?“ und da der Pool diese Entscheidung an seine Miner zwangsweise veröffentlicht kann ich den Pool auch „politisch“ (aufs Netzwerk bezogen) einordnen.

Natürlich kann man sagen dass sich viele Miner dafür nicht interessieren werden, aber das ist dann auch deren Entscheidung und kein „Problem“ von Bitcoin an sich.


  1. kleinere Unterschiede können vorkommen wenn der Pool einen besseren Block building Algorithmus verwendet als getblocktemplate der eigenen Core Node ↩︎

https://morereese.medium.com/bitcoin-minings-new-protocol-stratum-v2-93f9503d9dd2

Figure 5. Represents basic workflow for how miners negotiate their own work. In the figure above, HC represents “hashrate consumer”, which is an upstream node to which shares (i.e. completed jobs) are being submitted. The most common hashrate consumers are pools. D represents the actual miner, or device, computing the hashes. P represents a proxy, or intermediary node, between the upstream pools and downstream mining devices. JN, or Job Negotiator, is a node which negotiates with a pool on behalf of one or more miners to determine which jobs they will work on. This node also communicates with a block template provider (e.g. bitcoind) and sends jobs to mining proxies to be distributed to miners. Source (image and description): https://braiins.com/stratum-v2

Bedeutet für mich, dass die Miner auch eigene Nodes in den Prozess einbeziehen können, aber wirklich tief stecke ich auch nicht in der Materie.

1 „Gefällt mir“