Gibt es eine Möglichkeit, Proof-of-Work-Systeme einzurichten, damit sie noch nützlicher sind?

Eines der Argumente, die gegen die Designentscheidungen von Bitcoin vorgebracht werden, ist, dass es Ressourcen verschwendet, um Transaktionen zu authentifizieren. Insbesondere das Finden kleiner Hashes ist für die Welt völlig nutzlos.

Gibt es Ansätze (oder andere Kryptowährungen), die Proof-of-Work verwenden, indem sie an einem nützlichen schwierigen Problem arbeiten? Es gibt viele Projekte wie SETI@home oder Folding@home, die schwierige, aber potenziell nützliche Berechnungen auf verschiedene Benutzer verteilen. Gibt es eine Möglichkeit, solche nützlichen Berechnungen zum Aufbau eines Proof-of-Work-Systems in einer Kryptowährung zu verwenden, oder gibt es eine Gibt es einen grundlegenden Grund (wirtschaftlich oder rechnerisch), dass ein Proof-of-Work nutzlose Arbeit beinhalten muss?

Diese Frage ist ungültig; nutzlos ist willkürlich. Was Sie als nutzlos beschreiben, ist nützlich. Das vorhandene Proof-of-Work-System ermöglicht eine gleichmäßige Verteilung von Bitcoins
@ user9704 Ich habe klare Kriterien dafür aufgestellt, was ich unter nützlicher Arbeit verstehe. Das heißt, Arbeit, die einen Nutzen außerhalb einfacher authentifizierender Interaktionen bietet.
@Serith Ich bin mit Ihrer Titeländerung zu dieser Frage nicht einverstanden. Es gibt ein paar Benutzer, die von meiner Verwendung des Wortes „nutzlos“ beleidigt sind, aber ich verwende es wirklich in der Umgebung von Berechnungen, die für Dinge außer Bitcoin nutzlos sind. Es wäre besser, meine Frage zu bearbeiten, um dies deutlich zu machen, anstatt die Frage selbst darauf hinzuweisen, dass das aktuelle Proof-of-Work-System eine nützliche Berechnung durchführt und nicht nur Zyklen zur Authentifizierung verschwendet.
NooShare ist ein solcher Vorschlag – reddit.com/r/Bitcoin/comments/pve08/…
@ ripper234 : Bitte erwägen Sie, diese Antwort mit etwas mehr Details als Antwort zu geben. Dies ist bei weitem die beste Antwort, die die Frage richtig beantwortet. Schade, dass es in den Kommentaren versteckt ist.
@RaphaelJolivet - fertig. bitcoin.stackexchange.com/a/9395/78

Antworten (13)

Ich denke, die Prämisse der Frage ist nicht richtig. Die Arbeit ist nicht nutzlos, sie sichert die Transaktionen. Die öffentliche Hash-Kette stellt sicher, dass Bitcoins nur einmal ausgegeben werden können. Der Mechanismus stapelt Berechnungen über legitime Transaktionen, sodass der Empfänger weiß, dass ein Angreifer mindestens so viel Rechenleistung benötigen würde, um die Transaktion rückgängig zu machen.

Derzeit ist kein Weg bekannt, die Arbeit nützlicher zu machen. Das Problem ist, dass der primäre Zweck der Sicherung von Transaktionen eine Reihe von Anforderungen an die geleistete Arbeit stellt:

  1. Die Arbeit muss viel, viel einfacher zu überprüfen als zu tun sein. Es muss also so ziemlich darin bestehen, nach etwas Seltenem zu suchen und Milliarden von Suchen durchzuführen, um zu testen, ob eine Eingabe eine bestimmte Eigenschaft hat. Auf diese Weise erfordert die Überprüfung lediglich die Bestätigung, dass die von Ihnen gefundene Eingabe diese Eigenschaft aufweist.
  2. Die Arbeit muss die Transaktionen tatsächlich sichern und darf nicht von ihnen getrennt werden. Wenn ich sehe, dass Sie mir 10 Bitcoins geschickt haben und dann Milliarden von Berechnungen darauf gestapelt werden, darf es nicht möglich sein, diese Transaktion zu entfernen und dann dieselben Berechnungen auf eine widersprüchliche Transaktion zu stapeln. Sie können also nicht das Ergebnis eines beliebigen Stücks Arbeit verwenden, um die Arbeit an der Bitcoin-Kette zu beweisen.

Es ist schwer vorstellbar, dass zusätzliche nützliche Arbeit geleistet werden könnte, während diese Anforderungen weiterhin erfüllt werden.

Ich denke, der Titel der Frage ist etwas irreführend und sollte geändert werden in "Gibt es eine Möglichkeit, Proof-of-Work-Systeme einzurichten, damit es noch nützlicher wäre?"
Wie wäre es, Primzahlen zu finden? Das sollte zumindest Kriterium 1 erfüllen. Ich weiß aber nicht, wie sinnvoll es ist.
@David: Wie ist es nützlich, Primzahlen zu finden, die an Bitcoin-Transaktionen angehängt sind?
@DavidSchwartz Ich meinte, neue Primzahlen zu finden, die zuvor nicht entdeckt worden waren.
Das Finden von Primzahlen ist die Basis hinter Primecoin. Das Auffinden von Primzahlen ist bis zu einem gewissen Grad nützlich.
Ich kann nicht antworten, weil ich nicht genug Reputation habe, aber es gibt dieses Papier zu diesem Thema: eprint.iacr.org/2017/203.pdf

Primecoin ist die erste:

In Peer-to-Peer-Kryptowährungsdesigns wird eine neue Art von Proof-of-Work eingeführt, die auf der Suche nach Primzahlen basiert. Drei Arten von Primärketten, die als Cunningham-Kette erster Art, Cunningham-Kette zweiter Art und Bi-Twin-Kette bekannt sind, werden als Proof-of-Work qualifiziert. Prime Chain ist mit Block-Hash verknüpft, um die Sicherheitseigenschaft von Nakamotos Bitcoin zu bewahren, während ein kontinuierliches Schwierigkeitsbewertungsschema so konzipiert ist, dass Prime Chain als Arbeitsnachweis mit einstellbarer Schwierigkeit in einer Bitcoin-ähnlichen Kryptowährung fungieren kann.

Überprüfen Sie http://ppcoin.org/primecoin

Man kann die Verwendung der Kenntnis von Cunningham-Ketten von Primzahlen in Frage stellen, aber es ist wohl nützlicher, als Hashes mit Folgen von Nullen zu finden. Und oft findet sich bei Mathe der praktische Nutzen erst später. (Sogar ein Preisgeld ist im Spiel: „$250.000 to the first individual or group who discovers a prime number with at least 1.000.000.000 decimal digits“, von der EFF, nicht weniger, https://www.eff.org/awards/coop )

Hier ist ein ausführlicher Artikel zu dieser Frage: Fragen Sie Ars: Warum Zeit und Geld damit verbringen, neue Primzahlen zu finden?

Vor allem, jetzt, wo es eine mathematisch nützliche Münze gibt, werden wahrscheinlich weitere folgen.

Curecoin ist ein weiterer sehr interessanter Ansatz mit Merged Mining. 45 % der neuen Münzen für SHA-Miner, für die Blockchain-Sicherheit, 45 % für die Proteinfaltung von GPU/CPU-Leistung. 10 % gehen in die Entwicklung.

Warum ist es nützlich, eine Cunningham-Kette zu kennen?
@Nick, da stimme ich dir voll und ganz zu. Was ist der Punkt? Ich sehe nicht, wie Cunningham-Ketten nützlicher sind als SHA256-Hashes.
@NickODell Cunningham-Ketten werden jetzt in kryptografischen Systemen als nützlich angesehen, da "sie zwei gleichzeitige geeignete Einstellungen für das ElGamal-Kryptosystem bieten ... [die] in jedem Bereich implementiert werden können, in dem das Problem des diskreten Logarithmus schwierig ist." en.wikipedia.org/wiki/Cunningham_chain
@Janus Troelsen Wie viele davon wären genau nützlich und wofür? Würden wir sie verwenden, um die Kommunikation zu sichern? Interessante Arbeiten schreiben? Ich sehe hier kein zwingendes Argument, aber ich bin bereit, mir eines anzuhören.
Ein bisschen ähnlich wie Curecoin gibt es auch Gridcoin , die das verwenden, was sie " Proof of Research " nennen. Im Gegensatz zu Curecoin ermöglicht Gridcoin nicht nur die Arbeit an der Proteinfaltung, sondern an mehreren Aufgaben des verteilten Berechnungsprojekts BOINC .

NooShare ist eine Idee für:

ein dezentralisiertes Hauptbuch ähnlich Bitcoin mit der neuartigen Funktion, dass seine Arbeitsnachweise Iterationen von im Wesentlichen willkürlichen Markov-Chain Monte-Carlo (MCMC)-Ketten sind, deren Planung mit der Währung selbst erworben werden kann. Es ist eine neuartige wirtschaftliche Basis für die gemeinsame Nutzung brachliegender Rechenressourcen.

Ich weiß nicht, ob es die anfängliche Designphase bestanden hat, aber es ist eine Lektüre wert.

Das klingt interessant, aber sind MCMC-Ketten sinnvoll?
Es sieht so aus, als ob NooShare unsicher ist und nie gestartet wurde, da ich nirgendwo feststellen kann, dass NooShare verwendet wird. NooShare war nur eine Idee, aber es scheint in der Praxis nicht funktioniert zu haben.

Das Problem ist, dass niemand ein auf nützlicher Arbeit basierendes Proof-of-Work-System entwickelt hat, das auch:

  • Generiert leicht überprüfbare Lösungen
  • Kann die Schwierigkeit haben, eine Lösung zu finden, angepasst

Wenn das System beispielsweise nach Primzahlen suchen würde, würde es lange dauern, bis die Lösungen als Primzahlen verifiziert werden. Auch die Schwierigkeit, die nächste Primzahl zu finden, lässt sich nicht kontrollieren, sie nimmt einfach weiter zu.

Jedes NP-vollständige Problem hat per Definition eine leicht zu verifizierende Lösung. Es ist relativ einfach, den Schwierigkeitsgrad schrittweise zu erhöhen, indem Sie die Eingabegröße erhöhen. Darüber hinaus gibt es in der Wissenschaft viele nützliche NP-schwere Probleme: sagen wir Proteinfaltung oder Schaltkreis-Layout-Optimierung.
Das Problem mit @Artems Vorschlag ist, dass Sie die Lösungen für viele Probleme vorberechnen können. Die Blockchain macht Block N+1 von Block N abhängig, sodass eine Vorausberechnung nicht möglich ist.
@ ripper234 Mein Vorschlag ist definitiv falsch, da er sonst verwendet würde. Der Punkt meines Kommentars war jedoch ein Gegenbeispiel zu dem, was Chris als Antwort vorgeschlagen hatte. Die Leute scheinen seine Antwort jedoch zu mögen. Es wäre jedoch schön, wenn er erklären würde, warum ein allgemeines NP-schweres Problem nicht qualifiziert wird. Was meinen Kommentar betrifft, so kann er von vorherigen Blöcken abhängig gemacht werden, indem die Eingabe für das nächste zu lösende Problem vom vorherigen Block abhängig gemacht wird (sagen wir, es gibt eine Datenbank mit schwierigen Probleminstanzen, die gelöst werden müssen, dann kann der Hash von Block N verwendet werden um das nächste zu lösende Problem auszuwählen).
Sie würden so viele Probleme wie Hashes benötigen. Andernfalls beweist der Proof of Work nicht wirklich Arbeit. (Jemand kann einfach Transaktionen auswählen, um den Hash zu erhalten, der das bereits gelöste Problem auswählt.) Der Arbeitsnachweis muss schlüssig mindestens vom Hash des vorherigen Blocks und den darin enthaltenen Transaktionen abhängen, sodass der Arbeitsnachweis nachweislich unpraktisch ist an andere Arbeiten anhängen.
Primecoin löst das Primzahlproblem mit Cunningham-Ketten, bei denen die Schwierigkeit kontrollierbar ist.

Nehmen wir für eine Sekunde an, dass wir einen Proof-of-Work-Algorithmus gefunden haben, der alle guten Eigenschaften von sha256 hat, aber auch für SETI und die Aufrechterhaltung des Weltfriedens nützlich ist.

Nehmen wir nun an, eine Gruppe von Bergleuten hat zusammen mehr als 51 % der Hashing-Macht. In welchen der folgenden Szenarien ist es wahrscheinlicher, dass sie mit einer 51-%-Attacke zusammenarbeiten, um die Ausgaben zu verdoppeln:

A) Wenn der Proof-of-Work-Algorithmus so etwas wie sha256 ist und nur zum Sichern des Bitcoin-Netzwerks nützlich ist

B) Wenn der Proof-of-Work-Algorithmus hilft, Außerirdische zu finden und den Weltfrieden zu wahren, zusätzlich zur Sicherung des Bitcoin-Netzwerks.

Wenn BTC in Szenario B seinen gesamten Wert aufgrund eines 51-prozentigen Angriffs/Doppelausgaben verlieren würde, wäre die Hardware der Miner immer noch wertvoll, denn obwohl sie Bitcoin nicht abbauen könnte, könnte sie immer noch Aliens finden und den Weltfrieden aufrechterhalten.

Wenn BTC in Szenario A seinen Wert verlieren würde, würde die Hardware der Bergleute mitgehen, da diese Hardware für etwas anderes als das Schürfen von Bitcoin unbrauchbar ist.

Kurz gesagt, ein „nutzloser“ Proof-of-Work-Algorithmus (wobei „nutzlos“ nur bedeutet, das Bitcoin-Netzwerk sichern zu können und nichts anderes) ist ein Plus (für das Bitcoin-Netzwerk), da die Miner weniger versucht sein werden, Bitcoin zu vernichten, wissend, dass ihre Hardware wertlos wäre, wenn sie dies tun würden.

Interessant. Ich glaube nicht, dass es Teil des ursprünglichen Konzepts war. Aber interessant.

„Merged Mining“ (gleichzeitiges Mining auf mehreren Blockchains mit dem gleichen Arbeitsaufwand) mag im „echten“ Sinne nicht sinnvoll sein, aber zumindest produziert es auch Namecoins oder Solidcoins oder was auch immer Sie bei der Produktion von Bitcoins haben .

Nein, denn es ist ein erheblicher Vorteil, dass die Arbeit am tatsächlichen Transaktionsdatensatz und nicht an einem willkürlichen Problem durchgeführt werden muss.

Indem das Problem die Transaktionsaufzeichnungsdaten enthält, erfordern Änderungen an der Transaktionshistorie die Bereitstellung einer neuen Lösung, und dies verhindert, dass eine Partei Lösungen langsam "speichert" und sie alle auf einmal freigibt, da es immer neue Blöcke von gibt Transaktionen werden der Blockchain hinzugefügt, was bedeutet, dass sich die erforderliche Lösung ständig ändert, je nachdem, was der letzte Transaktionsblock ist.

Wenn Sie die Berechnung in einem anderen Sinne „nützlich“ gemacht haben, könnten Sie diese „nützliche“ Ausgabe im Prinzip einfach verkaufen und dadurch die wirtschaftlichen Nettoausgaben zur Sicherung der Blockchain verringern, wodurch sie weniger sicher wird. Die „nutzlose“ Berechnung von Bitcoin ist also nützlich, unabhängig davon, ob sie einen anderen Zweck hat oder nicht.

Ich habe diese Frage kürzlich in meinem Blog beantwortet, weitere Details finden Sie hier: https://blog.sldx.com/is-bitcoins-proof-of-work-useless-work-a411480d3eb3

Inhalt unter der URL ist nicht mehr verfügbar.
Wie denkst du über diejenigen, die Salz oder Gold abgebaut haben? Salz/Gold ist nützlich, abgesehen davon, dass es eine Liquiditätsquelle ist (zum Aromatisieren von Lebensmitteln und zum Verhindern des Verrottens oder zum Herstellen hübscher Dinge). Aber sie sichern keine Blockchain ...

Ich dachte, ich würde die Antwort geben, die ich auf diese Frage kenne, und das ist eine wirtschaftliche.

Einer der Gründe für die Verwendung von Proof-of-Work (abgesehen von der technischen Nützlichkeit) ist die Möglichkeit, der Währung von Natur aus einen Wert zu verleihen. Wenn der Wert der Währung so hoch ist, dass es weniger kostet, die Rechenleistung zum Fälschen von Währungen zu kaufen, als es kostet, die Währung direkt zu kaufen, dann gibt es einen wirtschaftlichen Anreiz, zu fälschen und den Preis zu stabilisieren.

Wenn wir ein Problem verwenden, das nicht nutzlos ist, besteht die Möglichkeit, dass es für einige nützlicher ist als für andere. Beispielsweise könnte die Lösung eines Problems X für Person N ein Einkommen von Y $ generieren und für Person M kein Einkommen. (Angenommen, wir falten Proteine ​​und Person N ist ein Pharmaunternehmen, das damit ein neues Medikament herstellen kann, während Person M eine zufällige Person ist). Wenn es dann $K kostet, die Währung durch den Kauf von Rechenzeit zu fälschen, dann würde es für Person N $(K - Y) kosten, während es für Person M $K kosten würde. Dies könnte zu einer Destabilisierung des Wertes der Währung führen.

Wenn es also ein nützliches Problem gibt, muss es für ALLE Benutzer der Währung gleichermaßen nützlich sein.

könnte jemand was zu den downvotes sagen? Liegt es daran, dass ich mir selbst geantwortet habe, oder habe ich in meiner Antwort etwas Falsches angegeben?
Ich habe nicht abgelehnt, aber Ihre Antwort scheint mir nicht ganz richtig zu sein. Eigentlich kann man Bitcoins nicht fälschen. Wenn Sie jedoch einen Großteil der Rechenleistung des Netzwerks kontrollieren, können Sie einen Double-Spend-Angriff durchführen. Ich bin mir jedoch nicht sicher, wie dies mit den Kosten für die Suche nach Lösungen zusammenhängt. Haben Miner, die nicht für Strom bezahlen müssen, einen größeren Anreiz, das Netzwerk anzugreifen, als diejenigen, die zahlen müssen?
Bergleute, die nicht für Strom bezahlen müssen, werden mit größerer Wahrscheinlichkeit weiter schürfen, auch wenn es unrentabel ist, wenn die Stromkosten berücksichtigt werden. Aus diesem Grund wird das Schürfen wahrscheinlich für alle, außer für diejenigen, die umsteigen müssen, tendenziell etwas unrentabel bleiben Strom zum Heizen sowieso oder haben überschüssigen Strom, den sie nicht speichern können.
@DavidSchwartz: Wie können Miner nicht für Strom bezahlen müssen? Stehlen sie es?
@Hans-PeterStricker: Viele Erneuerbare produzieren bedarfsunabhängig Energie. Zum Beispiel investierte Südafrika stark in Wasserkraft für eine Stahlindustrie, die nicht florierte. Windenergie ist noch nicht speicherbar, also stoppen entweder Turbinen, was Probleme verursachen kann, oder die Energie wird für einen Kühlkörper oder eine andere Deponie verwendet - wie beim Bitcoin-Mining. Der Energieverbrauch ist ein Hauptkritikpunkt an Bitcoin, aber die Wirtschaft drängt auf nutzlose Energie, nicht nützlich, und Einnahmen können erneuerbare Energien unterstützen

Ein weiterer hervorragender Grund, einen Algorithmus zu wählen, der in keinem anderen Kontext als Bitcoin allein nützlich ist, besteht darin, dass die Infrastruktur, die für Zwecke der alleinigen Sicherung von Bitcoin vorbereitet wird, immer nur mit der Sicherung von Bitcoin anreizkompatibel ist.

Betrachten Sie die kürzliche Einführung zahlreicher Altcoins, die dieselben PoW-Algorithmen verwenden. Wenn die geleistete Arbeit in verschiedenen Kontexten sinnvoll ist, werden sich die Bergleute nicht der Sicherung von Bitcoin widmen, da es wirtschaftliche Überlegungen darüber gibt, wofür die Arbeit aufgewendet werden sollte . Da beispielsweise Bitcoin Cash und Bitcoin den gleichen SHA256d-PoW-Algorithmus verwenden, gab es eine größere Volatilität der Hash-Rate in beiden Kryptowährungen, was indirekt die Sicherheit schwächt, da ein Teil der Arbeit an einen anderen Ort umgeleitet werden muss und es auch die Benutzerfreundlichkeit verringert aufgrund größerer Varianz in den Blockankunftszeiten.

Dieser Beitrag ist alt, aber ich wurde hierher umgeleitet und habe viele Kommentare gelesen.

Viele Argumente darüber, warum der Algorithmus nichts außerhalb des Systems tun sollte, haben eine Problemumgehung.

Einige sagen, dass die Lösung mit einem extrinsischen Wert das System desestabilisieren könnte, weil nützliche Lösungen einen intrinsischen Wert haben.

Ich meine, Menschen sind auf Aufgaben spezialisiert und nach ihrer Spezialisierung gruppiert, eine Gruppe weiß wenig über die andere und dann gibt es kaum plattformübergreifende Lösungen.

Zunächst einmal gibt es Gold und es hat Verwendungsmöglichkeiten, also hat es auch einen inneren Wert, es gibt Gold auf unseren Computern, unseren Zähnen und vielen Dingen, die langlebig sein sollen, aber es ist nicht nützlich als Auto oder ein Kilogramm Kartoffeln.

Ein Äquivalent zu Gold in Berechnungen wäre jedes Problem, das keine direkte Anwendung hat und möglicherweise nie haben wird, aber es ist immer noch nützlich für das Wissen, nur um die Neugier zu befriedigen. Es gibt viele nicht angewandte mathematische Probleme dieser Art, denke ich, und sie sind wertlos weil Niemand würde sich darum kümmern, aber es ist ein Problem, das für Menschen interessant ist, die eine Lösung gefunden haben.

Eine andere Sache, die hinzugefügt werden muss, ist, dass die Computerleistung zugenommen hat, seit dieser Beitrag und Bitcoin irgendwie funktionierten, um den Wert zu erhalten, indem sie Schwierigkeiten hinzufügten, daher ist die Aufrechterhaltung von Transaktionen, soweit ich weiß (nicht sehr), jetzt ein einfaches Problem, also eine zusätzliche Aufgabe, die Hausierer zu lösen Strahlung wäre eine zusätzliche Schwierigkeit, von der ich Ihnen versichere, dass sie einen verdammten wirtschaftlichen Wert hat.

Ich kann mich fragen, ob das eigentliche Problem darin besteht, dass Ökonomen nur wenige unpraktische Lösungen außerhalb ihres selbst erstellten Systems kennen, und dass es ein Wunder gibt, dass einige Hacker daran beteiligt sind, Bitcoin zu erstellen.