Ist es theoretisch möglich, die Hash-Rate zu begrenzen?

Ich denke darüber nach, einen Altcoin zu entwickeln, der wirklich Asic/Pool Proof ist. Ich habe es noch nicht versucht (oder sogar den Quellcode heruntergeladen), aber ich habe mich gefragt, ob es möglich ist, dass sich das Netzwerk so verhält, dass es einen von einem Peer gefundenen Block nicht akzeptiert, wenn die Hash-Rate dieses Peers über einer bestimmten Schwelle liegt.

Wird das möglich sein? Wenn nicht, wie könnte man es erreichen?

Ich sehe kein Problem mit ASIC-Hashing, tatsächlich ist es eine gute Sache für eine Währung, billigere Transaktionsvalidierung. Es ist nur eine schlechte Sache für Bergleute, die reich werden wollen – aber darum geht es bei digitalen Währungen nicht. Haftungsausschluss: Ich bin Bergmann.

Antworten (3)

Ja es ist möglich. Sie brauchen nur ein paar Regeln. Alle Miner müssen ihre Blöcke signieren. Alle Miner müssen ihren öffentlichen Schlüssel "registrieren", bevor sie mit diesem Schlüssel schürfen dürfen. Blöcke, die mit demselben öffentlichen Schlüssel signiert sind, sind ungültig, wenn sie durch eine Regel zu nahe beieinander liegen.

Der Trick besteht darin, das Registrierungssystem so zu steuern, dass eine einzelne Partei nicht einfach Tausende von öffentlichen Schlüsseln registrieren kann. Sie können dies tun, indem Sie eine Gebühr für die Registrierung erheben. Sie können dies auch tun, indem Sie im Registrierungsprozess eine menschliche Genehmigung einholen.

Du kannst die Gebühr so ​​gestalten, dass wenn du einen Monat minst, deine Gebühr bezahlt wird. Auf diese Weise können nur Personen schürfen, die langfristig schürfen oder in den Coin investieren möchten. Dies schützt Sie etwas vor Hit-and-Run-Angriffen.

Aber fürs Protokoll, ich denke, die gesamte Argumentation dahinter ist falsch. ASICs machen Münzen sicherer, weil sie die Investition erhöhen, die erforderlich ist, um die Münze anzugreifen, genau wie dieses Schema es tun würde. Bei ASICs ist es bereits erledigt – die Leute müssen in die Münze investieren, um sie anzugreifen.

Entscheidend ist der letzte Absatz. Es scheint, dass Bergleute (ich meine) den Sinn des Bergbaus verfehlen: die Transaktionen zu validieren, nicht die Bergleute reich zu machen, obwohl das schön ist. Je früher wir wirklich effiziente ASIC-Miner online bekommen, desto besser und stabiler wird das System.
Danke, David, für dieses sachliche Denken. Für das, was ich im Sinn habe, denke ich, dass dies tatsächlich funktionieren kann.
Können Sie vorschlagen, wie dies in Go-Ethereum implementiert werden kann? Ich werde wirklich dankbar sein.
@RameshPareek Kannst du eine genauere Frage stellen? An welchem ​​Teil steckst du fest?

Angesichts des aktuellen Proof-of-Work-Paradigmas, nein. Was meine ich damit? Eine Münze, die durch Berechnung des Hash* von Daten in Abhängigkeit sowohl vom vorherigen Block (damit die Integrität der Blockchain gewahrt bleibt) als auch von der Nutzlast des aktuellen Blocks (damit die Integrität jedes einzelnen Blocks gewahrt bleibt) abgebaut wird als Nonce, so dass der Hash bestimmte Kriterien erfüllt (normalerweise kleiner als ein bestimmter Wert, der durch die Schwierigkeit bestimmt wird). In einem solchen Fall gibt es keine Möglichkeit zu sagen, ob ein Hash gefunden wurde, nachdem es Billionen Mal versucht wurde, oder nur eine glückliche Vermutung.

Wie gesagt, ganz ausschließen würde ich es nicht. Aber es wird sehr schwer. Tatsächlich kann ich einige der Annahmen lockern, die ich gerade gemacht habe, und es wäre immer noch nicht möglich, basierend auf der Hashrate zu diskriminieren. Um effektiv diskriminieren zu können, müssen Sie eine Möglichkeit haben, jemanden mit einer großen Hashrate daran zu hindern, so zu tun, als wären sie mehrere Personen mit kleinen Hashraten.

*Technisch gesehen gilt jede kollisionsresistente Funktion, die auf eine Folge von n Bits abgebildet wird. Ich glaube, das PoW von Primecoin ist auch anwendbar.

Erstens: Ich bezweifle, dass es Sinn macht, dies zu tun. Viel Arbeit und Potenzial für die Erstellung von DOS- und anderen Exploit-Möglichkeiten für wahrscheinlich keinen Gewinn.

Allerdings: Eine Möglichkeit, die ich mir vorstellen könnte, besteht darin, dass die Miner irgendwie jeden Block signieren müssen, sodass Sie von jedem Miner nur 1 Block pro x Tage akzeptieren können. Das bedeutet, dass Sie jedem Miner einen privaten Schlüssel geben müssen, mit dem er seine Blöcke signiert.

Das nächste Problem ist dann, dass Sie eine Möglichkeit brauchen, um zu verhindern, dass derselbe Miner einfach 100 verschiedene private Schlüssel verwendet. Sie müssen also einen Mechanismus haben, um diese privaten Schlüssel zu regulieren: eine zentrale Organisation, die sie ausgibt, oder einen Trick, bei dem diese Schlüssel wieder in der Blockchain nachverfolgt werden. Am Ende haben Sie immer das Problem, dass Sie nicht wissen, wem Sie einen Schlüssel geben: Vielleicht hat er schon 20 Schlüssel.