Ich habe viele Links zu Bitcoin-Trxs und zum Generieren von ScriptSig studiert. Schließlich konnte ich nicht verstehen, wie man diesen Teil macht.
Zum Beispiel lese ich diese Links:
Was ist die Beziehung zwischen scriptSig und scriptPubKey?
https://bitcoin.org/en/developer-guide#transactions
Wie erstellen Sie einen Skriptsig für einen neuen Roh-TX?
Wie löse ich einen Basis-Tx ein?
Wie erstelle ich den <sig> <PubK>-Teil in "scriptSig"?
http://www.righto.com/2014/02/bitcoins-hard-way-using-raw-bitcoin.html
https://en.bitcoin.it/wiki/Protocol_documentation#tx
https://en.bitcoin.it/wiki/Transaktion
Ich habe festgestellt, dass ich etwas unterschreiben muss, aber was ist das für ein Ding?
genau und Schritt für Schritt Was soll ich zusammenstellen und dann unterschreiben?
besonders wenn ich mehr als 1 Eingabe hatte, wie mache ich Sigscript?
Ich habe eine Bibliothek, die die Zeichenoperation für mich durchführt. Ich weiß jedoch nicht, welche Struktur ich für die zu signierende Nachricht verwenden muss, insbesondere wenn mehrere Ausgaben vorhanden sind.
Die zu signierenden Daten werden Hash Preimage genannt . Dann signieren Sie das doppelte SHA256 des Hash-Preimage, das 256 Bit lang ist. Vor dem Hashing müssen die Daten wie in dieser Antwort gezeigt gebildet werden . Wenn Sie eine SegWit-Transaktion signieren, ändert sich der Inhalt des Preimage, wie in BIP 143 definiert .
Dann können Sie die Formeln hier verwenden , Gl. 2:
(x1, y1) = k × G(x, y) mod p
r = x1 mod n
k
ist eine Zufallszahl, G
ist der Generator, p
ist die Primzahl Modulo usw.
Dann,
s = (k^-1 (h(m) + d * r)) mod n
d
der private Schlüssel ist, h(m)
ist das doppelte SHA256-Ergebnis. Jetzt können Sie mit r
, s
die DER-codierte Signatur erstellen.
sagte ezzati
MCCCS
hashOutputs
.sagte ezzati
MCCCS
sagte ezzati