Wie kann die Transaktionshistorie überprüft werden, wenn neue Adressen generiert werden?

Wenn eine neue Transaktion über einen Bitcoin-Client ausgeführt wird, hat der Absender eine andere Adresse als bei früheren Transaktionen. Ich weiß auch, dass alle vollständigen Knoten im Bitcoin-Netzwerk ein Hauptbuch führen, das im Grunde eine Historie aller jemals getätigten Bitoin-Transaktionen ist, damit die Knoten die Integrität des Systems und die aktuelle Menge an Bitcoins überprüfen können, die die Leute in ihren Brieftaschen haben. Wie ist es überhaupt möglich, alle Transaktionen zu überprüfen, wenn ständig neue Adressen generiert werden? Sie können nicht einmal eine aktuelle Transaktion mit der vorherigen verknüpfen. Gibt es etwas, das ich vermisse?

Antworten (2)

Eine Sache, die Sie vielleicht vermissen, ist "es gibt keine Salden". Das Netzwerk kennt keine Brieftaschen oder Guthaben, es kennt nur Ausgaben. Diese Ausgaben werden entweder ausgegeben oder nicht ausgegeben. Sobald Sie dieses Konzept haben, ist es einfacher zu verstehen.

Wenn Ihre Brieftasche sagt, dass Sie ein Guthaben von 1,2345 BTC haben, bedeutet dies, dass sie „denkt“, dass es eine Anzahl von X nicht ausgegebenen Ausgaben gibt, die Sie „kontrollieren“, die sich zu 1,2345 summieren. Es basiert auf den Schlüsseln, die es kennt, und den Transaktionen, die es bisher gesehen hat. Es könnte 1 Ausgang mit einem Wert von 1,2345 oder 100 Ausgänge mit einer Summe von 1,2345 oder eine beliebige Kombination geben.

Sehen Sie sich jede Transaktion auf blockchain.info an und Sie sehen die Eingaben auf der linken Seite. Diese Eingaben sind zuvor nicht ausgegebene Ausgaben.

https://blockchain.info/tx/ad646bbac1e44e4db199420e12fec2966903a0e078da99fab97b3156455f252a

Auf der rechten Seite befinden sich die neuen nicht ausgegebenen Ausgaben. Sobald eine Ausgabe verwendet wird, ist sie jetzt ausgegeben und trägt kein Guthaben. Da die Ergebnisse, die Sie verwenden, wahrscheinlich nicht genau das ergeben, was Sie wollen, gibt es ein Änderungskonzept.

https://en.bitcoin.it/wiki/Change

Und was ist mit neuen Adressen? Das Netzwerk muss nichts über neue Adressen wissen . Wenn ein Knoten eine neue Transaktion sieht, muss er nur überprüfen, ob die ausgegebenen Ausgaben noch nicht ausgegeben wurden, dh sie wurden nicht von einer anderen Transaktion verwendet (zusammen mit anderen Überprüfungen wie Unterschriften, Beträgen usw.).

Auf diese Weise sind also alle Transaktionen mit vorherigen verknüpft.

Sehr klare Erklärung, verstanden, vielen Dank :D

Wenn eine neue Transaktion über einen Bitcoin-Client ausgeführt wird, hat der Absender eine andere Adresse als bei früheren Transaktionen.

Das ist falsch. Sie können Geld nur von der Adresse senden, an der Sie es erhalten haben.

Beispiel:
Alice sendet 1 BTC an Bobs address A. Wenn Bob nun Geld an Carol sendet, signiert seine Client-Software die Transaktion mit dem privaten Schlüssel, der address A. Die nicht ausgegebenen Transaktionsausgaben address Awerden dann aufgebraucht und ein neues Guthaben wird auf Carols Adresse verfügbar sein.