Überprüfung der Transaktion, sobald die Transaktion gesendet wurde

Ich habe einige Zweifel bezüglich der Überprüfung der Transaktion und versuche, Antworten der letzten Tage zu finden. Ich stimme zu, dass es in diesem Portal ähnliche Beiträge gibt, aber ich bekomme keine zufriedenstellende Antwort auf meine Fragen. Es ist auch in Ordnung, wenn Sie einen Link einfügen können, der eine detaillierte Analyse der Transaktionsverifizierung enthält, wenn es lästig ist, immer wieder dieselben Fragen zu beantworten.

1) Da der Block nach einer konstanten Anzahl von Transaktionen erstellt wird, ist es der Fall, dass alle Transaktionen gehalten werden, bis diese Anzahl von Transaktionen angesammelt ist?

2) Da es nur eine Coinbase-Transaktion pro Block gibt, bedeutet dies, dass alle Belohnungen in einer einzigen Transaktion angesammelt und dann unter den Gewinnern verteilt werden?

3) Wenn eine Transaktion verifiziert wird, was genau verifiziert sie und wie sie verifiziert wird? Hier liegt der Hauptteil meiner Verwirrung. Nach meinem Verständnis überprüft es jede einzelne Transaktion von Anfang an, indem es Signaturen überprüft, um zu prüfen, ob bestimmte Transaktionen nicht ausgegeben wurden oder nicht, was ich für unpraktisch halte.

Vielen Dank für Ihre Zeit

Antworten (1)

1) Da der Block nach einer konstanten Anzahl von Transaktionen erstellt wird, ist es der Fall, dass alle Transaktionen gehalten werden, bis diese Anzahl von Transaktionen angesammelt ist?

Ihre Prämisse ist falsch. Blöcke werden nicht nach einer konstanten Anzahl von Transaktionen erstellt. Sie werden erstellt, wenn es jemandem gelingt, eine zu erstellen.

2) Da es nur eine Coinbase-Transaktion pro Block gibt, bedeutet dies, dass alle Belohnungen in einer einzigen Transaktion angesammelt und dann unter den Gewinnern verteilt werden?

Nein. Jeder Block hat eine Coinbase-Transaktion, die den Miner belohnt, der diesen Block generiert hat.

3) Wenn eine Transaktion verifiziert wird, was genau verifiziert sie und wie sie verifiziert wird? Hier liegt der Hauptteil meiner Verwirrung. Nach meinem Verständnis überprüft es jede einzelne Transaktion von Anfang an, indem es Signaturen überprüft, um zu prüfen, ob bestimmte Transaktionen nicht ausgegeben wurden oder nicht, was ich für unpraktisch halte.

Sie müssen dies nicht wirklich tun. Sie müssen nur die gleichen Ergebnisse erzielen, als würden Sie dies tun. Da Sie jede Transaktion während ihres Auftretens überprüfen, gibt es eine offensichtliche Optimierung – es besteht keine Notwendigkeit, Transaktionen zu überprüfen, die Sie bereits überprüft haben. Das wird jede vergangene Transaktion sein.

Grundsätzlich überprüfen Sie, ob die Transaktion wohlgeformt und ordnungsgemäß signiert ist, nicht mehr Geld ausgibt als einzieht (es sei denn, es handelt sich um eine Coinbase-Transaktion) und dass alle eingezogenen Gelder aus gültigen Transaktionen stammen und nicht noch ausgegeben.

Ich denke, ich sollte mehr über Blockerstellung graben. Danke für deine Antwort. Zu Frage 3, wie wird dann die doppelte Ausgabe für Broadcast-Transaktionen überprüft?
Bei einer doppelten Ausgabe versucht die an zweiter Stelle stehende Transaktion, Ausgaben auszugeben, die bereits ausgegeben wurden. Dadurch wird der Block ungültig. (Also würde kein Miner einen Block mit doppelten Ausgaben erstellen, da er keine Belohnung erhalten würde. Aber wenn er es tun würde, würden ihn alle einfach ignorieren, da er ungültig ist.)
Ok Betrachten Sie einfach dieses Szenario, wenn ich zwei Transaktionen habe, die mir zugewiesen sind, und ich sie ausgeben möchte, dann versuche ich, sie zu verdoppeln, indem ich heute eine einzelne Transaktion (mit beiden als Eingabe) durchführe und dann wieder dieselben Transaktionen 10 Jahre lang verwende nach. Ist dies ein mögliches Szenario und wenn ja, wird es im Netzwerk überprüft?
Ja, es wird geprüft. Das System verhält sich so, als ob jede Eingabe jeder Transaktion überprüft wird, um zu sehen, ob sie von irgendeiner anderen Transaktion ausgegeben wurde, die jemals verarbeitet wurde. (Natürlich werden offensichtliche Optimierungen vorgenommen. Beispielsweise verfolgen Server alle nicht ausgegebenen Ausgaben, sodass es sich nur um eine „Enthält diese Menge diesen Wert“-Operation handelt.)
oohh, ich denke, hier kommt das Indexkonzept ins Spiel, das Informationen über nicht ausgegebene Transaktionen gibt. Vielen Dank für die geduldige Beantwortung meiner Fragen.