Ich weiß nicht, wie getblocktemplate
genau das funktioniert, aber es scheint Transaktionen basierend auf der Priorität einzuschließen .
Die Auswahl von Transaktionen nach Priorität ist nicht die profitabelste Methode zum Erstellen eines Blocks (im Gegensatz zu Gebühr/Byte). Wird getblocktemplate
sie also nur von Bergleuten verwendet, die nicht herausgefunden haben, wie sie ihre eigenen Blöcke erstellen können?
Warum sollte jemand getblocktemplate
etwas anderes verwenden?
Getblocktemplate erstellt einen Block basierend auf Konfigurationsparametern. In neueren Versionen wird standardmäßig die Gebühr pro Byte als Kriterium für den gesamten Block verwendet.
Geschichte
In Bitcoin-Versionen bis 0.6 wurde für den gesamten Block eine prioritätsbasierte Auswahl verwendet. Es war ein Mittel, um die junge Bitcoin-Wirtschaft zum Wachstum anzuregen. Es hatte jedoch auch eine Mindesttransaktionsgebühr, die sich erhöhte, als der Platz in Blöcken näher an die Grenze heranwuchs.
In Version 0.7 wurde die -blockprioritysize
Einstellung eingeführt, die Blöcke in einen Vorrangbereich und einen Gebührenbereich unterteilt . Der Prioritätsbereich war dazu da, eine kleine Anzahl von Transaktionen mit niedrigen Gebühren weiterhin zu unterstützen, und war standardmäßig auf 27 kB begrenzt (50 kB seit Version 0.9 ). Der Gebührenbereich ist nach Gebühr pro Byte sortiert und maximiert die Gesamtgebühren für Miner.
Aktuelle Versionen
In Bitcoin Core 0.12 wurde die Standardeinstellung für die Prioritätsgröße auf 0 reduziert. Außerdem wurde ein effizienterer Algorithmus zur Auswahl von Transaktionen eingeführt, der für den Prioritätsbereich suboptimal funktioniert.
In der kommenden Version von Bitcoin Core 0.13 wird der Algorithmusauswahlalgorithmus erneut verbessert und verwendet die Child-pays-for-parent (CPFP)-Logik. Diese Logik verwendet Gebühren aus unbestätigten Nachkommentransaktionen, um zu bestimmen, ob Eltern eingeschlossen werden sollen. Es erhöht die Gesamtgebühren, die im Vergleich zum vorherigen Algorithmus erhoben werden können, und ermöglicht es Wallets, die Gebühren für eine Transaktion zu erhöhen, indem sie ihre Änderungsausgaben mit höheren Gebühren ausgeben.
inersha
Pieter Wuille