De acuerdo con la documentación RPC incorporada, la firma para createrawtransaction
es: createrawtransaction [{"txid":"id","vout":n},...] {"address":amount,...}
.
El códigocreaterawtransaction
en el núcleo de bitcoin para analizar las entradas es:
BOOST_FOREACH(const Value& input, inputs) {
const Object& o = input.get_obj();
uint256 txid = ParseHashO(o, "txid");
const Value& vout_v = find_value(o, "vout");
if (vout_v.type() != int_type)
throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, missing vout key");
int nOutput = vout_v.get_int();
if (nOutput < 0)
throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, vout must be positive");
CTxIn in(COutPoint(txid, nOutput));
rawTx.vin.push_back(in);
}
createrawtransaction
Entonces, ¿cómo se usa exactamente scriptPubKey
y redeemScript
?
Sí, los acepta (y cualquier otro parámetro que desee especificar en el JSON). No, no los usa, y no sé por qué Gavin los usó en su ejemplo.
Hay un ejemplo más detallado y actualizado de gastar una salida multisig P2SH en la página de ejemplos para desarrolladores de Bitcoin.org .
doug peters
bananaColor=yellow
para asegurarme). Veré los ejemplos que me sugieres, ¡gracias!