Bitcoin-UTXOs: Grundlagen und Lösungen des Dust-UTXO Problems
Bitcoin-UTXOs sind fundamentale Bestandteile der Bitcoin-Blockchain und spielen eine entscheidende Rolle bei Transaktionen im Netzwerk. Dennoch wird ihnen oft zu wenig Beachtung geschenkt, was gerade bei einem Sparplan zu späteren Komplikationen wie z. B. Dust-UTXOs führen kann. Deswegen ist es umso wichtiger, den Aufbau einer Bitcoin-Transaktion, UTXOs und die Probleme, die durch sie auftreten können, zu verstehen und Maßnahmen zu ergreifen, um zukünftige Probleme zu verhindern.
Kurz erklärt: Was ist ein UTXO?
Die Abkürzung UTXO steht für „Unspent Transaction Output“, was auf Deutsch in etwa „Nicht ausgegebene Transaktionsausgabe“ bedeutet. Ein UTXO repräsentiert einen bestimmten Bitcoin-Betrag in einer Wallet, der noch nicht ausgegeben oder verwendet wurde.
Um das Konzept von UTXOs und die Bedeutung des UTXO-Problems zu verstehen, ist es zuerst essentiell, das Prinzip einer Bitcoin-Transaktion näher zu betrachten.
Bitcoin-Transaktionen: Das Prinzip
Eine Bitcoin-Transaktion ist der wesentliche Baustein des Bitcoin-Netzwerks, der es ermöglicht, Bitcoin zwischen verschiedenen Parteien zu transferieren. Hierbei spielen verschiedene Faktoren eine Rolle:
Die Bausteine einer Bitcoin-Transaktion
- Transaktions-ID (TxID): Eine eindeutige Identifikationsnummer, die jede Transaktion im Netzwerk eindeutig kennzeichnet.
- Inputs: Die Inputs einer Transaktion verweisen auf bereits existierende UTXOs, die in früheren Transaktionen empfangen wurden. Diese Inputs geben an, wie viele Bitcoin in der Transaktion verarbeitet werden sollen und weisen auf die Bitcoin-Adressen der UTXOs hin.
- Outputs: Die Outputs bestimmen, wohin die Bitcoin gesendet werden sollen. Jeder Output enthält eine Bitcoin-Adresse und den Betrag an Bitcoin, der an diese Adresse gesendet wird.
- Gebühr: Eine Netzwerk-Gebühr, die die Person, welche die Transaktion tätigt, den Minern als Anreiz bietet, damit sie die Transaktion in einen Block der Blockchain aufnehmen. Transaktionen mit höheren Gebühren haben normalerweise Priorität bei der Verarbeitung.
Der Ablauf einer Bitcoin-Transaktion - Beispiel
Angenommen, Peter möchte Anna 0.1 Bitcoin senden, dann sieht der Ablauf wie folgt aus:
- Peter erstellt eine neue Transaktion in seiner Wallet, in der er Anna als Empfängerin angibt und den Betrag festlegt. In diesem Fall ist der Betrag 0.1 Bitcoin.
- Nun sucht die Wallet nach einer passenden UTXO in Peters Wallet, welche den gewünschten Betrag abdecken kann. Als Beispiel nehmen wir an, dass Peter einen UTXO mit 0.2 Bitcoin in seiner Wallet besitzt.
- Die Wallet verwendet nun diesen UTXO als Input für die neue Transaktion und gibt an, dass 0.1 Bitcoin an Anna gesendet werden sollen.
- Die Wallet generiert nun eine digitale Signatur, um zu beweisen, dass sie berechtigt ist, die Bitcoin aus dem ausgewählten UTXO zu verwenden.
- Die Transaktion wird an das Bitcoin-Netzwerk gesendet und von den Minern für eine Transaktionsgebühr in einen Block der Blockchain aufgenommen. In diesem Beispiel nehmen wir an, dass diese Gebühr 0.01 Bitcoin beträgt.
- Sobald die Transaktion im Block bestätigt wurde, erhält Anna die 0.1 Bitcoin in ihre Wallet und der UTXO von 0.2 Bitcoin in Peters Wallet wird als “ausgegeben” markiert und kann nicht mehr für weitere Transaktionen verwendet werden. Es entstehen somit zwei neue UTXOs. Der Rest des ursprünglichen UTXO minus die Gebühr von 0.01 Bitcoin ergibt einen neuen UTXO in Peters Wallet von 0.09 Bitcoin und ein UTXO in Annas Wallet über den Betrag von 0.1 Bitcoin.
Das UTXO-Prinzip und seine Auswirkungen
Wie bereits bei dem Aufbau und Ablauf der Transaktion erklärt, spielen UTXOs eine große Rolle in Bitcoin-Transaktionen. Um die Auswirkungen dieses Prinzips genauer zu verstehen, betrachten wir einige wichtige Aspekte:
Was ist ein UTXO?
Ein UTXO ist ein Output (Ausgabe) in der Bitcoin-Blockchain, der noch nicht in einer Transaktion als Eingabe (Input) verwendet wurde. Anders ausgedrückt, handelt es sich um einen Bitcoin-Betrag, der noch nicht in einer neuen Transaktion verwendet und ausgegeben wurde. Auf der anderen Seite werden Outputs, die bereits in einer Transaktion als Input verwendet wurden, als “Spent Transaction Output” bezeichnet.
Das Guthaben einer Bitcoin-Adresse ergibt sich somit aus der Summe der UTXOs, die dieser Adresse zugeordnet sind. Jedes Mal, wenn eine Bitcoin-Transaktion stattfindet, werden ein oder mehrere ungenutzte UTXOs als Eingabe verwendet und es werden neue Outputs, die wiederum als UTXOs verwendet werden können, erzeugt. Dieses Konzept ermöglicht eine transparente und sichere Verfolgung der Bitcoin-Transaktion in der Blockchain und verhindert das “Double-spending-Problem”, sprich das ein Bitcoin mehrmals ausgegeben werden kann.
Unterschied zwischen einer Transaktion und einem UTXO
Der Unterschied zwischen einer Transaktion und einem UTXO liegt in ihrer Funktion und ihrem Status in der Blockchain. Eine Transaktion ist der Prozess des Bitcoin-Transfers selbst, bei dem UTXOs als Eingaben verwendet werden. Ein UTXO hingegen ist der ungenutzte Bitcoin-Betrag, welcher noch nicht in einer Transaktion als Input verwendet wurde und daher weiterhin für zukünftige Transaktionen verfügbar ist.
Es ist wichtig zu verstehen, dass UTXOs nicht direkt übertragen werden können, sondern nur indirekt durch die Erstellung und Bestätigung neuer Transaktionen entstehen. Im Bitcoin-Netzwerk wird das UTXO-Modell verwendet, um sicherzustellen, dass nur genau so viele Bitcoin ausgegeben werden können, wie verfügbar sind.
Auswirkungen auf die Transaktionsgebühren
Die Netzwerkgebühr, die für eine Transaktion bezahlt werden muss, hängt nicht direkt mit der Menge der Bitcoins zusammen, die versendet werden, sondern vielmehr mit der Anzahl der UTXOs, die in dieser Transaktion involviert sind. Dies kann auf den ersten Blick verwirrend sein, da man meinen könnte, dass größere Bitcoin-Beträge automatisch höhere Gebühren verursachen würden.
Jedoch liegt der Hauptgrund für die Gebührenunterschiede in der Art und Weise, wie Transaktionen in der Bitcoin-Blockchain verarbeitet werden. Denn jeder UTXO muss einzeln in die Transaktion einbezogen werden, und jeder UTXO trägt zu der insgesamt benötigten Speicherplatzmenge bei. Je mehr UTXOs in einer Transaktion verwendet werden, desto größer wird der Speicherplatzbedarf.
Um dies zu verdeutlichen kann man folgendes Beispiel verwenden: Angenommen eine Transaktion besteht aus einer Kombination von zehn kleinen UTXOs im Wert von jeweils 0.001 BTC. Der Gesamtwert dieser UTXOs beträgt folglich 0.01 BTC. Eine andere Transaktion verwendet jedoch nur eine einzige UTXO im Wert von 0.01 BTC. Obwohl beide Transaktionen den gleichen Gesamtwert von 0.01 BTC besitzen, wird die erste Transaktion höhere Gebühren erfordern, da sie mehr Speicherplatz in einem Block beansprucht.
Somit führt dies dazu, wie in unserem Beispiel beschrieben, dass Transaktionen mit vielen kleinen UTXOs mehr Speicherplatz in einem Block brauchen als Transaktionen mit weniger, dafür aber größeren UTXOs, selbst wenn der Gesamtbetrag der Bitcoins in beiden Transaktionen gleich ist.
Zusammenfassend heißt dies, dass die Netzwerkgebühr nicht linear mit dem übertragenen Bitcoin-Betrag steigt, wie man vielleicht anfangs annehmen könnte, sondern vielmehr von der Anzahl der UTXOs und dem dadurch verursachten Speicherplatzbedarf beeinflusst wird.
Das Wichtigste zusammengefasst:
- UTXO steht für Unspent Transaction Output. Damit sind Outputs einer Transaktion gemeint, welche noch nicht ausgegeben wurden.
- Das UTXO-Modell wird verwendet, um “Double-spending” zu verhindern.
- UTXOs sind wichtige Bestandteile einer Bitcoin-Transaktion.
- Sobald ein UTXO ausgegeben wurde, wird er als “ausgegeben” gekennzeichnet und kann nicht wieder verwendet werden.
- Nachdem ein UTXO ausgeben wurde, entsteht ein neuer UTXO mit einem neuen Betrag.
- Die Gebühren einer Bitcoin-Transaktion berechnen sich aus der Speichergröße der Transaktion. Größere Transaktionen nehmen mehr Platz im Block ein und benötigen mehr Ressourcen von den Minern.
- Transaktionen mit vielen UTXOs haben höhere Gebühren als Transaktionen mit wenigen UTXOs.
Das Prinzip von Bitcoin ähnelt eher Bargeld als einem Bankkonto
Die Auswirkungen auf die Transaktionsgebühren lassen sich noch einfacher veranschaulichen, indem man UTXOs mit physischen Geldmünzen vergleicht: Wenn deine Wallet eine Bitcoin-Transaktion empfängt, ist es so, als würde jemand eine Geldmünze in deinen Geldbeutel legen. Denn eine Bitcoin-Wallet speichert alle einzelnen Transaktionen zusammen.
Stell dir also vor, du erhältst regelmäßig viele kleine UTXOs in deine Wallet, ähnlich wie wenn du viele kleine Geldmünzen in deinem physischen Geldbeutel aufbewahrst. Bei einer physischen Transaktion ist es einfacher, den Wert von 100 Euro mit einer 100-Euro- oder zwei 50-Euro-Scheinen zu bezahlen, als mit einer Vielzahl von Münzen. Denn ein 100-Euro-Schein braucht physisch weniger Platz als z.B. hundert 1-Euro-Münzen.
Dieses Prinzip besteht ebenfalls bei den UTXOs, denn ein UTXO braucht weniger Speicherplatz als zum Beispiel 100 UTXOs, wobei man die Annahme treffen müsste, dass der 100-Euro-Schein den gleichen Platz im Geldbeutel beansprucht, wie eine 1-Euro Münze. Somit bedarf es auch einem physisch größeren Aufwandes, hundert 1-Euro-Münzen aus dem Geldbeutel zu holen als einen 100-Euro-Schein. Der angesprochene höhere Aufwand ist in diesem Beispiel vergleichbar mit der höheren Transaktionsgebühr bei vielen UTXOs, da die Miner mehr Ressourcen aufwenden müssen um mehr Daten zu verarbeiten.
Ebenfalls hat man nach einer Bargeldtransaktion neue UTXOs. Denn muss man zum Beispiel 50 Euro bezahlen, hat aber nur einen 100-Euro-Schein zur Verfügung, dann erhält man 50 Euro zurück. Der 100-Euro-Schein kann also im Geldbeutel als UTXO betrachtet werden und wird nach dem Bezahlen in zweimal 50 Euro aufgeteilt, einmal in 50 Euro, welche die empfangende Person erhält und in ihrem Geldbeutel einen neuen UTXO abbildet und einmal in das erhaltene Rückgeld, ebenfalls 50 Euro, die nun einen neuen UTXO im Geldbeutel der zahlenden Person darstellen.
Das Dust-UTXO-Problem und seine Auswirkungen
Beim regelmäßigen Stapeln von Bitcoin im Rahmen eines Sparplans, um vom Durchschnittskosten-Effekt zu profitieren, können Dust-UTXOs zu einem potenziellen Problem werden. UTXOs werden als “Dust-UTXOs” bezeichnet, wenn der UTXO-Betrag kleiner als die aktuelle durchschnittliche Transaktionsgebühr ist. Folglich kann der Bitcoin-Betrag nicht mehr wegtransferiert werden bzw. “zerfällt zu Staub”, da er von den Transaktionsgebühren bei einer Überweisung vollständig “aufgefressen” wird.
Ein regelmäßiger Sparplan bietet hierfür ein gewisses Risiko, da im Laufe der Zeit, je nach Regelmäßigkeit und Höhe des Betrags, viele kleine UTXOs angesammelt werden, welche einen geringen Betrag an Bitcoin beinhalten.
Wenn man beispielsweise aktuell 100 Euro pro Woche in Bitcoin investiert, können die entstandenen UTXOs aktuell noch einigermassen gut ausgegeben werden, da die Transaktionsgebühren zurzeit (März 2024) nur ein paar Tausend Sats, also 1 bis 2 Euro, pro Transaktion betragen. Aber wenn du z. B. täglich 5 Euro investierst, sammelst du mit jeder Transaktion ziemlich kleine UTXOs, die in naher Zukunft zu Dust-UTXOs werden könnten. Schon heute würden bei einer Transaktion über 10 % des Betrags eines solchen kleinen UTXOs verbraucht werden.
Falls die Transaktionsgebühren jedoch weiter ansteigen, was in den nächsten Jahren auch zu erwarten ist, und zu dem Zeitpunkt wenn diese UTXOs mit den Beträgen von 0.00019 BTC oder 0.000076 BTC ausgegeben werden sollen, die durchschnittliche Transaktionsgebühr 0.0002 BTC oder mehr beträgt, dann muss die Person, welche die UTXOs ausgeben oder verschieben möchte, mehr Bitcoin in Gebühren bezahlen, als Bitcoin transferiert werden sollen. Somit ist der Bitcoin-Betrag “zu Staub zerfallen”, da er nicht mehr kostengünstig wegtransferiert werden kann.
Folglich ist es wichtig zu verhindern, dass solche Dust-UTXOs entstehen. Dies kann durch UTXO-Management sichergestellt werden. Das UTXO-Management ist gerade dann sehr wichtig, wenn es wahrscheinlicher wird, dass die Transaktionsgebühren steigen.
Für einen Anstieg der Transaktionsgebühren kann es mehrere Gründe geben. In der Vergangenheit sind die Gebühren zum Beispiel angestiegen, als das Ordinals-Upgrade eingeführt wurde. Aber auch nach einem Halving kann es theoretisch zu Anstiegen kommen, da sich der Blockreward halbiert.
Lösungen für das Dust-UTXO-Problem beim regelmäßigen Stacken von Bitcoin
- UTXO-Konsolidierung: Ein Weg, um das Dust-UTXO-Problem zu minimieren, besteht darin, deine regelmäßigen Bitcoin-Käufe zu konsolidieren, indem du mehrere kleine UTXOs zu größeren UTXOs zusammenführst. Dadurch wird die Anzahl der UTXOs in deiner Wallet reduziert, was zu weniger Transaktionsdaten und somit niedrigeren Gebühren führt. Beachte jedoch, dass das Zusammenführen von UTXOs auch Transaktionsgebühren verursacht und es deswegen ratsam ist, dies genau zu planen.
- Effiziente Gebührenberechnung: Wähle eine Bitcoin-Wallet, die Gebühren effizient berechnet und dir die Möglichkeit bietet, die Transaktionsgebühren manuell anzupassen. Indem du die Gebühren entsprechend den aktuellen Netzwerkbedingungen anpasst, kannst du sicherstellen, dass deine Transaktionen schnell oder kostengünstig bestätigt werden.
Das Potenzial des Lightning-Netzwerks
Um das Dust-UTXO-Problem langfristig zu lösen oder zu umgehen wird schon ausführlich an Lösungen gearbeitet. Denn gerade bei Mikrotransaktionen ist es wichtig, dass keine hohen Gebühren anfallen, die sich unverhältnismäßig auf einen kleinen Kauf auswirken.
Eine mögliche Lösung für dieses Problem ist das Lightning-Netzwerk. Das Lightning-Netzwerk bietet die Möglichkeit, kleinere Beträge zu stapeln und Transaktionskosten zu reduzieren. Indem mehr Transaktionen außerhalb der Blockchain ausgeführt werden, kann das Lightning-Netzwerk die Skalierbarkeit verbessern und das Dust-UTXO-Problem verringern.
Mit dem neuen Pocket Top-Up Service wird es so möglich sein, direkt über Lightning Bitcoin zu kaufen und in einer selbstverwahrten Wallet aufzubewahren. Dadurch entfällt das Problem der Dust-UTXOs, wichtig ist hierbei aber, dass Lightning-Wallets hot Wallets sind und nicht zum Stapeln großer Bitcoin-Beträge geeignet sind. Somit kann Lightning momentan keine endgültige Lösung des Problems bieten.
Zusammenfassung und Ausblick
Die Bitcoin-Community arbeitet ständig an neuen Entwicklungen und Lösungen, um das Netzwerk zu optimieren. Zukünftige Verbesserungen könnten die Verwaltung von UTXOs erleichtern und die Gebührenstruktur weiter optimieren. Für Personen, die Bitcoin nutzen, ist es daher ratsam, sich laufend über diese technischen Details und Entwicklungen zu informieren, um Bitcoin effizient und kostengünstig nutzen zu können. Durch bewusste UTXO-Konsolidierung und den Einsatz von effizienten Wallets kannst du die Auswirkungen des Dust-UTXO-Problems reduzieren und mögliche Vorteile des Lightning-Netzwerks nutzen.
Verbreite das Wissen
Wenn dir dieser Inhalt gefallen hat, dann teile ihn mit deinen Freunden. Wenn du denkst, dass hier etwas fehlt, schick uns eine kurze Nachricht.