Können Transaktionseingaben auf Ausgaben ausstehender Transaktionen verweisen?

Die Eingaben einer Transaktion beziehen sich auf Ausgaben früherer Transaktionen. Diese früheren Transaktionen

  • muss bereits in der Blockchain vorhanden sein, oder
  • können auch ausstehende Transaktionen sein?

Ich weiß nicht, ob der Begriff ausstehende Transaktionen eine Bedeutung hat, die mir nicht bekannt ist. In diesem Zusammenhang meine ich Transaktionen, die noch nicht in der Blockchain sind, aber in dem Block vorhanden sind, der die neue Transaktion enthält.

Beispiel : Ein bestimmter Block Benthält mehrere Transaktionen, darunter eine Transaktion Xund eine Transaktion Y. Die Transaktion Xverweist auf die Ausgabe(n) der Transaktion Y. Die Transaktion Ybefindet sich noch nicht in der Blockchain, ist aber auch im Block vorhanden B. Ist dies möglich, da die Transaktion Ynoch nicht bestätigt ist?

Hinweis : Ich verwende den Begriff unbestätigte Transaktion nicht, da es sich meines Wissens um Transaktionen handelt, die in keinem Block erscheinen. und in diesem Fall Ywäre die Transaktion in einem Block, dem gleichen Block wie die Transaktion X.

Antworten (1)

Wenn Transaktion Y in Block B ist, dann wird sie – zum Zwecke der Entscheidung, ob die Eingaben von X gültig sind – bestätigt.

In Bezug auf die Konsensregeln kann eine Transaktion X Ausgaben von einer Transaktion Y ausgeben, die sich irgendwo in der Blockkette vor X befindet. Das bedeutet, dass sich entweder Y in einem früheren Block als X befindet oder im selben Block, aber an einer früheren Position .

Das P2P-Transaktionsrelais unterstützt dies ebenfalls. Es leitet Transaktionen weiter, die unter bestimmten Bedingungen Ausgaben von unbestätigten Transaktionen ausgeben. Bei zwei voneinander abhängigen unbestätigten Transaktionen können die Miner entscheiden, beide in denselben Block zu stellen oder nur die erste in einen Block aufzunehmen (wobei die andere im Speicherpool bleibt, um sie in einen späteren Block aufzunehmen).