Ich versuche, besser zu verstehen, wie das Ethereum-Netzwerk funktioniert, aber ich habe noch keine klare Antwort auf diese Frage gefunden.
Ich verstehe, dass die ETH "verwendet werden kann , um für die Berechnungen zu bezahlen, die Sie vom Netzwerk verlangen ". Ich denke, diese vom Netzwerk durchgeführten Berechnungen sind ein anderer Name für dezentral ausgeführte Apps.
Außerdem habe ich gelesen, dass das Ausführen von " einem vollständigen Knoten [...] keine Ether-Belohnung erhält. ".
Wenn ich richtig liege, implizieren die beiden obigen Punkte, dass Ressourcen, die die Ausführung von dApps ermöglichen, nicht von vollständigen Knoten bereitgestellt werden. Sie werden auch nicht von Bergleuten bereitgestellt (Bergleute übermitteln nur Hashes, um Transaktionen AFAIK zu validieren). Wo laufen also konkret dApps und wer bekommt dafür ETH? Kann ich es schaffen?
Was auch immer Ihre Transaktion ist (Aufrufen einer Funktion für einen Vertrag, Bereitstellen eines Vertrags oder einfaches Senden einer Zahlung), Sie müssen Gas dafür bezahlen.
Bevor der TX in einen Block gesteckt wird, verbraucht jeder Miner seine Rechenleistung, um Ihren TX auszuführen. Sobald Ihr TX im Txpool ankommt, würden Miner es greifen, prüfen, ob es gültig ist, es durchlaufen lassen, die Ausgabe erhalten und versuchen, es in einen Block zu stecken. (Hier kommt der Proof-of-Work ins Spiel)
Sobald es sich in einem Block befindet, muss jeder vollständige Knoten die Blöcke validieren, die er im P2P-Netzwerk hört, bevor er es akzeptiert. Ein Teil des Validierungsprozesses erfordert die Ausführung jedes einzelnen TX und den Vergleich mit der Ausgabe, die sie im veröffentlichten Block sehen. Wenn sie übereinstimmen, wird der Block vom Knoten akzeptiert.
Zusammenfassend also: Jeder Blockchain-Teilnehmer (Miner + Full Nodes) gibt schließlich seine Rechenleistung aus, um Ihren TX zu betreiben.
Nur der Miner, der erfolgreich den Block findet, der Ihre TX enthält, erhält Ihre TX-Gebühr.
Bitcoin funktioniert genauso.
Wo laufen dApps und wer bekommt dafür ETH?
Es ist wichtig zu verstehen, dass jeder Knoten eine exakte Kopie der gleichen Ethereum-Blockchain und des gleichen Hauptbuchs führt und dass alles in Ethereum deterministisch konzipiert ist.
Damit ein Knoten mit dem Rest des Ethereum-Netzwerks synchron bleibt, muss er die gleichen Transaktionen sehen wie der Rest des Netzwerks und diese deterministischen Transaktionen ungefähr zur gleichen Zeit wie die übrigen Knoten im Netzwerk ausführen.
Dies bedeutet, dass jeder Knoten*, wenn er einen neuen, neuesten und gültigen Block erhält, jede Transaktion (Saldoübertragung, jeden Smart-Contract-Funktionsaufruf usw.) verarbeitet, um diese Änderungen auf seine lokale Kopie der Blockchain anzuwenden. .
Allerdings erhalten nur die Miner die Blockbelohnung und die Transaktionsgebühren, die in jedem erfolgreich integrierten Block enthalten sind.
Das Tolle an Ethereum ist, dass es ein offenes, öffentliches Netzwerk ist – Sie können einen Knoten betreiben und am Netzwerkbetrieb teilnehmen. Sie können Ihren Knoten sogar so einstellen, dass er versucht, einen neuen Block abzubauen ; Ohne eine beträchtliche Menge an Hashing-Leistung ist es jedoch unwahrscheinlich, dass Sie in der Lage wären, einen Block im Hauptnetzwerk abzubauen.
Ich stelle mir eine DApp (dezentralisierte Anwendung) gerne als mehr als nur die Smart Contracts von Ethereum vor - @Eth bietet einen sehr guten Überblick darüber, was eine DApp ist :
Eine DApp kann Frontend-Code und Benutzeroberflächen haben, die in jeder Sprache geschrieben sind (genau wie eine App), die Aufrufe an ihr [Ethereum Smart Contract] Backend machen kann. Darüber hinaus kann das Frontend auf dezentralen Speichern wie Swarm oder IPFS gehostet werden.
Im Fall, dass der Front-End-Code von einem dezentralen Dateisystem wie Swarm, Storj usw. gehostet wird, gibt es andere Knoten, die Ressourcen (in diesem Fall Dateispeicherung) bereitstellen und Zahlungen in Ether oder Token für diesen Dienst erhalten.
Abhängig von der Komplexität Ihrer DApp muss sie möglicherweise auch einen Anreizmechanismus bieten, um wirklich dezentral zu arbeiten. Zum Beispiel verlangt BTC Relay – und fördert – dass Bitcoin-Block-Header einem Vertrag vorgelegt werden:
Relayer sind diejenigen, die Blockheader an BTC Relay übermitteln. Um die Community dazu anzuregen, Relayer zu sein, und damit BTC Relay autonom und mit der Bitcoin-Blockchain auf dem neuesten Stand zu sein, können Relayer Block-Header an BTC Relay übermitteln. Wenn eine Transaktion im Block verifiziert oder der Header abgerufen wird, werden Relayer mit einer Gebühr belohnt
Nachdem ich darüber recherchiert habe, denke ich, dass die eigentliche Antwort lautet, dass sich dapps auf etwas wie iExec verlassen werden , um ihnen die erforderlichen Rechenressourcen bereitzustellen. Zahlungen/Einnahmen werden also nicht in ETH, sondern in Token wie RLC erfolgen.
Gas ist nur ein Spitzname für die Kosten (bezahlt in ETH) einer Transaktion. Beim Senden von Ether wird beispielsweise ein kleiner Teil Ihres ETH-Guthabens verwendet. Die Bergleute nehmen dieses „Gas“ (Äther) als Transaktionsgebühr auf. Das ist ein anderes Thema als „wo laufen dApps“, was die Frage war.
libertylocked