Warum empfiehlt der Segwit-Entwicklerleitfaden, die Gebühren auf der Grundlage der Größe statt des Gewichts zu schätzen?

Der Segwit Wallet Development Guide enthält einen kleinen Abschnitt zur Gebührenschätzung :

Schätzung der Transaktionsgebühr

  • Anstelle der Transaktionsgröße wird eine neue Metrik namens „virtuelle Größe“ ( vsize) definiert.
  • vsizeeiner Transaktion dem 3-fachen der Größe mit ursprünglicher Serialisierung plus der Größe mit neuer Serialisierung entspricht, teilen Sie das Ergebnis durch 4 und runden Sie auf die nächste Ganzzahl auf. Wenn beispielsweise eine Transaktion mit neuer Serialisierung 200 Bytes groß ist und mit marker, flag, und witnessentfernt 99 Bytes wird, vsizeist das (99 * 3 + 200) / 4 = 125 mit Aufrundung.
  • vsizeeiner Nicht-Segwit-Transaktion ist einfach ihre Größe
  • Die Transaktionsgebühr sollte geschätzt werden, indem man sie vsizemit anderen Transaktionen vergleicht, nicht die Größe.
  • Entwickler sollten darauf achten, dass sie bei der Gebührenschätzung keinen 4-fachen Fehler machen.

vsizeist daher ein Wert, der einen einfachen Vergleich mit der zuvor verwendeten Transaktionsgröße ermöglicht. Aus welchem ​​Grund wird es als Grundlage für die Honorarschätzung empfohlen? Wäre es nicht sinnvoller, Honorarschätzungen direkt nach Gewicht zu berechnen?

Antworten (1)

Der Vorteil der Verwendung von vsize besteht darin, dass es sich um einen reibungslosen Übergang von der Größe handelt; jede Nicht-Witness-Transaktion hat vsize gleich size.

Alle Codes und Infrastrukturen, die zuvor Satoshi/Byte verwendet haben, funktionieren weiterhin, wenn size durch vsize ersetzt wird, und liefern konsistente Ergebnisse. Der Wechsel zu Gewicht wäre verwirrend – würden wir über satoshi/weightbyte sprechen?