Betrug beim Pooled Mining

Was hält mich davon ab, die Mining-Software so zu hacken, dass ich, wenn ich zufällig den richtigen Hash bekomme, ihn für mich selbst behalte, aber wenn nicht, dann gebe ich einfach meine erledigte Arbeit ab und erhalte meinen Anteil am geschürften Einkommen.

Die einzige Möglichkeit, die mir einfällt, um dies zu überprüfen, besteht darin, dass die Pools die Blockkette überwachen und nach verdächtigen Aktivitäten suchen, aber ich bin mir nicht sicher, was diese Aktivität in der Praxis möchte, und das wäre nicht nur eine höhere als eine erhöhte Rate von was auch immer sie betrachten.

Es scheint mir, dass dies bei Pools wie Eligius, die CPPSRB machen, besonders attraktiv wäre, und noch attraktiver, je höher meine Hash-Rate ist, da ich dann eine hohe Chance habe, Blöcke ganz für mich zu bekommen.

Antworten (1)

So wie du es beschreibst ist es nicht möglich. Der Pool sendet Ihnen die Vorlage des Blocks, an dem Sie arbeiten sollten. Sollten Sie tatsächlich einen Block finden, ist dieser an die Blockvorlage gebunden, die Sie aus dem Pool erhalten haben, dh die noncedie Proof-of-Work-Schwierigkeit erfüllt, ist nur gültig, weil sie in Kombination mit der Vorlage gültig ist. Da die Blockvorlage auch die Coinbase-Transaktion beinhaltet, die die Belohnung an den Poolbetreiber überträgt, können Sie die Belohnung nicht stehlen.

Daher können Sie nicht für den Pool arbeiten, gültige Anteile erstellen und gleichzeitig für sich selbst arbeiten. Sie könnten nur die Nonce für den gültigen Block nicht an den Mining-Pool senden, aber das würde auch Ihren Anteil an der Belohnung verringern.

Es ist jedoch möglich, einen Block-Withholding-Angriff durchzuführen: bitcoin.stackexchange.com/q/1338/516
Dies ist zwar ein praktikabler Angriff auf einen PPS-Pool, bei dem der Poolbetreiber geschädigt werden kann, aber es ist keine Methode, die die Poolgewinne in Abhängigkeit von den Aktien verteilt (kein fester Aktienwert wie bei PPS).
Ich gehe davon aus, dass diese „Vorlage“ auch dafür verantwortlich ist, dass man nicht schummeln kann, wenn man die gleiche Arbeit für mehrere Mining-Pools erledigt. Was passiert, wenn Sie einen korrekten Hash finden (vorausgesetzt, Sie halten die Lösung nicht zurück)? Müssen Sie eine Antwort an den Pool zurücksenden oder können Sie den Block einfach dem Bitcoin-Netzwerk mitteilen (und der Pool wird ihn erhalten)? Muss der "Map-Server" etwas zusätzliches tun (dh den Block signieren) oder nicht? Ich frage, weil ich mich frage, ob Sie im Namen von jemand anderem schürfen können. Ich weiß, dass es keinen Sinn macht, etwas zu arbeiten und jemand anderen die Belohnung verdienen zu lassen. Aber
Was hindert mich daran, den Server bezüglich meiner Hash-Rate anzulügen?
Stellen Sie sich das so vor, als würden Sie nach Primzahlen suchen. Jedes Mal, wenn Sie eins finden, rufen Sie es heraus, und der Pool kann überprüfen, ob es sich um einen Prime handelt, und Ihnen einen Anteil gutschreiben. Sie müssen jede einzelne Zahl überprüfen, um zu sehen, ob es sich um eine Primzahl handelt, Sie können also nicht einfach von Primzahl zu Primzahl springen und die Anteile einsammeln, Sie müssen tatsächlich die Arbeit erledigen. Dasselbe passiert in PoW: Der Server bittet Sie, ein PoW mit geringem Schwierigkeitsgrad zu finden, das Sie nur finden können, indem Sie alle Möglichkeiten ausschöpfen, und der Server kann sicher sein, dass Sie die Arbeit geleistet haben, um es zu finden.