Wie weist eine Transaktion ihr Eigentum an ihrer Quelle nach, bei der es sich um eine oder mehrere nicht ausgegebene Ausgaben handeln kann?

Folgendes habe ich aus dem Buch << Mastering Bitcoin >> gelesen

„Wie Sie vielleicht bemerkt haben, enthält die Transaktion eine leere scriptSig, weil wir sie noch nicht signiert haben. Ohne eine Signatur ist diese Transaktion bedeutungslos, wir haben noch nicht bewiesen, dass wir die Adresse besitzen, von der die nicht ausgegebene Ausgabe stammt.“

Ich frage mich, wie eine Signatur beweisen kann, dass diese Transaktion die Adresse besitzt, von der die nicht ausgegebene Ausgabe stammt.

Antworten (2)

Angenommen, Sie verstehen, wie Public-Key-Kryptografie funktioniert. Kurz gesagt, man kann den Besitz einer Adresse überprüfen, indem man die Signatur überprüft. Eine gültige Signatur kann nur vom Besitzer des privaten Schlüssels erzeugt werden.

Das Detail der Signaturüberprüfung in Bitcoin wird hier beschrieben

Ohne in die Details zu gehen, OP_xxxsind Stack-Operationen. Zum Beispiel OP_DUPist oben auf dem Stapel zu duplizieren. Im Grunde es

  • hasht zunächst den öffentlichen Schlüssel per Operation OP_HASH160und prüft, ob das Ergebnis mit der pubKeyHashOperation identisch istOP_EQUALVERIFY
  • dann überprüft sigund pubKeydurch BetriebOP_CHECKSIG

Hier können Sie mehr darüber lesenOP_CHECKSIG

Bitte erläutern Sie auch, was die Links in der Antwort erklären. Derzeit ist diese Antwort nicht hilfreich, wenn die Links nicht mehr funktionieren.

Die Eigentümerschaft wird für jede Eingabe durch eine gültige Signatur im scriptSigFeld nachgewiesen. Fehlt eine der Signaturen, ist die gesamte Transaktion ungültig.

Die scriptPubKeyfür jede Ausgabe in dem von Ihnen bereitgestellten Beispiel ist an eine Bitcoin-Adresse gebunden. Eine Bitcoin-Adresse ist, kurz gesagt, ein Hash eines öffentlichen Schlüssels. Um also eine gültige Signatur bereitzustellen, ist der geheime Schlüssel erforderlich, der zu demselben Schlüsselpaar des öffentlichen Schlüssels gehört, auf den in jeder Eingabe verwiesen wird.