Ich versuche, eine Rohtransaktion mit Bitcoin Core v0.10.0 (unter Windows 7 x64 und mit Option txindex=1) zu erstellen.
Bitcoin Core v0.10.0 wird mit einem neuen ausführbaren Bitcoin-tx- Dienstprogramm geliefert. Das Hilfemenü sieht wie folgt aus (unter Windows 7 x64):
Bitcoin Core bitcoin-tx utility version v0.10.0
Usage:
bitcoin-tx [options] <hex-tx> [commands] Update hex-encoded bitcoin transaction
bitcoin-tx [options] -create [commands] Create hex-encoded bitcoin transaction
Options:
-? This help message
-create Create new, empty TX.
-json Select JSON output
-txid Output only the hex-encoded transaction id of the resultant transaction.
-regtest Enter regression test mode, which uses a special chain in which blocks can be solved instantly.
-testnet Use the test network
Commands:
delin=N Delete input N from TX
delout=N Delete output N from TX
in=TXID:VOUT Add input to TX
locktime=N Set TX lock time to N
nversion=N Set TX version to N
outaddr=VALUE:ADDRESS Add address-based output to TX
outscript=VALUE:SCRIPT Add raw script output to TX
sign=SIGHASH-FLAGS Add zero or more signatures to transaction
This command requires JSON registers:
prevtxs=JSON object
privatekeys=JSON object
See signrawtransaction docs for format of sighash flags, JSON objects.
Register Commands:
load=NAME:FILENAME Load JSON file FILENAME into register NAME
set=NAME:JSON-STRING Set register NAME to given JSON-STRING
Bei der Verwendung der Windows-CLI stoße ich auf Probleme mit createrawtransaction , da der Befehl nicht so analysiert wird wie im Bitcoin-QT-Konsolenfenster.
bitcoin-cli createrawtransaction [{"txid":"dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303091b3c6a514848c","vout":1}] {"1BCi1L25GC9hUSvtSyGjmEvSyywoYubk4P":0.00011}
Gibterror: Error parsing JSON:[{txid:dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303091b3c6a514848c,vout:1}]
Ebenso bitcoin-tx
funktioniert das Dienstprogramm damit nicht:
bitcoin-tx.exe -create in=dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303091b3c6a514848c:1 locktime=0 nversion=1 outaddr=2000:1BCi1L25GC9hUSvtSyGjmEvSyywoYubk4P outscript=0:687474703a2f2f676f6f2e676c2f7869556243555
Wie kann ich eine Rohtransaktion mit Bitcoin-cli und bitcoin-tx erstellen ?
Für den ersten Befehl müssen Sie den JSON wie folgt in einfache Anführungszeichen einfügen:
$ bitcoin-cli createrawtransaction '[{"txid":"dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303091b3c6a514848c","vout":1}]' '{"1BCi1L25GC9hUSvtSyGjmEvSyywoYubk4P":0.00011}'
01000000018c8414a5c6b39130304af37b8d053c6b225df525877e5e0cf73a147f2c2edcdb0100000000ffffffff01f82a0000000000001976a9146fe8102ebe0fccb56de43ec82601ba16c68496af88ac00000000
Das bitcoin-tx
Dienstprogramm verwendet eine Abkürzung, die in den Bitcoin-Einheitentests eingesetzt wird. Dieses Beispiel könnte Ihnen bei der Verwendung dieses Befehls helfen:
$ ./bitcoin-tx -create in=0fb9df5614be8b33be0434ce4062750d83f1b7ce05cc1296604f82eb9abf802b:0 outscript=0.00159999:"DUP HASH160 0x14 0x6793a38f79b8cd51dbb6face6dc75a4af5c1bf29 EQUALVERIFY CHECKSIG"
01000000012b80bf9aeb824f609612cc05ceb7f1830d756240ce3404be338bbe1456dfb90f0000000000ffffffff01ff700200000000001976a9146793a38f79b8cd51dbb6face6dc75a4af5c1bf2988ac00000000
Den Code zum Parsen der Skripte finden Sie hier . Ich finde es jedoch auch hilfreich, sich nur einige Beispiele in den Unit-Test-Daten anzusehen.
Nick Odell
Error parsing JSON:
, gibt es Ihnen das Token, das es verwirrt hat, genau so, wie es es bekommen hat. Frisst deine Muschel deine"
Charaktere?