Wie kooperativ oder kompetitiv ist der Mining-Prozess?

Wenn jeder Miner herausfindet, welche Nonces er ausprobiert hat, benachrichtigt er das Netzwerk, damit keine Energie verschwendet wird, um dasselbe von jedem Knoten erneut zu verarbeiten? Oder ist es ein totaler Wettbewerb mit jedem für sich?

Antworten (4)

Bergleute, die nicht kooperieren, werden die Arbeit niemals wiederholen, weil sie alle einen anderen Block als nächsten offiziellen Block erhalten wollen. Nicht zuletzt ist das Konto, auf das die Mining-Gebühr gezahlt wird, ein anderes. (Und das reicht bis zum Header.)

Für kooperierende Miner werden Arbeitseinheiten vom Mining-Pool zugewiesen. Der Pool wird typischerweise eine andere Coinbase in die Arbeitseinheiten einbetten, die er jedem Miner zuweist. Wenn ein Miner die Verarbeitung einer Arbeitseinheit beendet, fordert er eine neue Arbeitseinheit (mit einer neuen Coinbase) aus dem Mining-Pool an.

Es sollte also niemals replizierte Arbeit geben.

Das ist irreführend. Obwohl es keine genau replizierte Arbeit gibt, ist die Anstrengung jedes Miners, der seinen Block erledigt , verschwendete Arbeit, wenn sie stattdessen kooperieren könnten.
@Lohoris: Sie kooperieren voll und ganz. Sie versuchen alle auf unterschiedliche Weise, dasselbe Problem zu lösen, und sobald eine Person es gelöst hat, gehen sie alle zu etwas anderem über. Wie könnten sie mehr kooperieren?
David, könnten Sie ein wenig erläutern, was eine „Coinbase“ ist? Vielen Dank
Der Begriff "Coinbase" wird verwendet, um zwei verschiedene Dinge zu bedeuten. Die „ Coinbase-Transaktion “ ist die Transaktion im Block, die dem Miner seine (derzeit) 50 Bitcoins für das Mining des Blocks zahlt. Es gibt auch an, wohin die Transaktionsgebühren fließen. Innerhalb der "Coinbase-Transaktion" gibt es einen "in"-Teil, der normalerweise angibt, woher die Coins kommen. Es hat ein Feld namens "Coinbase-Feld", das jeden beliebigen Wert enthalten kann. Miner können es also als Extra-Nonce verwenden (und es wird manchmal als „Extra-Nonce“ bezeichnet).

Jeder Miner arbeitet an einem etwas anderen Block, da jeder Block die Blockbelohnung an eine andere Adresse auszahlt. Es besteht fast keine Chance, dass das Netzwerk zweimal dasselbe hasht.

Wenn Sie "etwas anderer Block" sagen, versucht es immer noch, den nächsten Block in die Kette einzufügen, richtig? Ich habe vergessen, dass die Adresse dort auch gehasht ist und wahrscheinlich verschiedene Gruppen von Transaktionen enthält? Jeder würde also sowieso etwas anderes hashen und es gibt keine Möglichkeit zu kooperieren: Verstehe ich das richtig?
Ja, jeder versucht, seine Version des nächsten Blocks zur "offiziellen Version" zu machen. Blöcke können sich auf verschiedene Weise unterscheiden, obwohl der größte Teil der Entropie von den separaten Auszahlungsadressen stammt. Offensichtlich sind Pools in der Lage, eine Zusammenarbeit zu schaffen, obwohl Pools verhindern müssen, dass ihre Miner dieselben Daten hashen.

Solo-Miner und Mining-Pools als Ganzes treten gegeneinander an, um den richtigen Hash zu finden, um den Block zuerst zu lösen. Da jeder möchte, dass eine andere Adresse Teil der Lösung ist (damit sie Münzen mit ihrer Bitcoin-Adresse verdienen können), gibt es per se keine Überschneidung. Es ist nur ein Rennen, um eine Lösung für Ihr Problem unter gemeinsamen Regeln zu finden.

Gepoolte Miner, das heißt die Miner, die zusammen in einem Pool abbauen, arbeiten andererseits zusammen, um dasselbe Problem zu lösen, wobei jedem eine Reihe möglicher Lösungen zur Prüfung zugewiesen wird. Da die Pools ihre Gewinne maximieren wollen, sollten sie die gleiche Arbeit nicht mehr als einem Miner zuweisen, es sei denn, sie wollen doppelt überprüfen, ob sie richtig gelöst wurde (und der Miner nicht betrogen hat).

Aber wenn Miner miteinander konkurrieren, muss ein Betrüger eigentlich nicht mehr Rechenleistung haben als alle integrierten Knoten, er muss nur mehr Rechenleistung haben als die besten der integrierten Knoten. Und mehr noch, das System kann nicht für eine große Anzahl von Transaktionen verwendet werden, wenn eine Transaktion Milliarden von USD umfasst, kann ich eine riesige Farm von Computerpools vorbereiten, um die Blockchain zu überarbeiten.

Ich habe dies abgelehnt, weil es teilweise falsch und teilweise zu vage ist, um nützlich zu sein. – „der muss nur mehr Rechenleistung haben als der Beste der Integrierten“ → Das ist falsch: Warum gewinnt nicht immer derselbe Miner? . –– „um die Blockchain zu überarbeiten“ → Bitte lesen Sie: Was kann ein Angreifer mit 51% Hash-Power tun? .