Cree una transacción sin procesar y transmítala a blockchain usando el núcleo de bitcoin

Tengo una dirección n3xYQtxvVwpBPSbgGsGRdMWz1YTUjakiMV, la cantidad que quiero enviar 1 BTC, y tengo un private key. ¿Cómo puedo crear una transacción sin procesar usándola y transmitirla a blockchain usando el núcleo de bitcoin?

He probado este comando:

bitcoin-cli createrawtransaction '[{"txid":"dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303‌​091b3c6a514848c","vo‌​ut":1}]' '{"n3xYQtxvVwpBPSbgGsGRdMWz1YTUjakiMV":1}' 

y esto:bitcoin-cli sendrawtransaction XXX

Probé este comando: bitcoin-cli createrawtransaction '[{"txid":"dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303091b3c6a514848c","vout":1}]' '{"n3xYQtxvVwpBPSbgGsGRdMjakiWz1:Ybitcoin-transaction'send cliraw MV this:YTU1}
Pero quiero realizar una transacción usando una clave privada específica
No quiero importar la clave privada en la billetera

Respuestas (2)

EDITAR: según la solicitud de OP, pongo ejemplos aquí:

hay muchos ejemplos para diferentes tipos de tx en bitcoin.org, en los ejemplos para desarrolladores . Básicamente necesitarás tres pasos. Suponiendo que está en OpenBSD/MacOS/Linux, puede hacerlo de esta manera:

1.) createrawtransaction : esto es lo que ya tiene y se ve bien. No sé si el tx ID o v_out anterior es correcto, suponiendo que conozca los detalles, su cadena está bien (de lo contrario, verifique con "bitcoin-cli -regtest listunspent" y adopte TX_ID y V_OUT en consecuencia). También asumo que la dirección es una que está en su billetera. De lo contrario, puede crear una dirección y proceder después de esta manera:

UTXO_TXID=dbdc2e2c7f143af70c5e7e8725f55d226b3c058d7bf34a303‌
UTXO_VOUT=1
NEW_ADDRESS=n3xYQtxvVwpBPSbgGsGRdMWz1YTUjakiMV
bitcoin-cli -regtest createrawtransaction '''
    [
      {
        "txid": "'$UTXO_TXID'",
        "vout": '$UTXO_VOUT'
      }
    ]
    ''' '''
    {
      "'$NEW_ADDRESS'": 1
    }'''

proporciona esta cadena hexadecimal devuelta a otra variable:

RAW_TX=01000...

2.) signrawtransaction : el comando anterior devuelve una cadena hexadecimal, que usará para firmar la transacción; nuevamente, consulte los documentos. Primero verifico mi tx creado y luego firmo:

bitcoin-cli -regtest decoderawtransaction $RAW_TX
bitcoin-cli -regtest signrawtransaction $RAW_TX

de nuevo asignas el resultado a una variable:

SIGNED_RAW_TX=01000...

3.) sendrawtransaction : nuevamente toma la cadena hexadecimal del comando anterior como parámetro y/o ve los documentos.

bitcoin-cli -regtest sendrawtransaction $SIGNED_RAW_TX

y tal vez una verificación como paso 4:

bitcoin-cli -regtest generate 1

esto genera un bloqueo y puede ver en $NEW_ADDRESS si se han transferido los fondos.

Acabo de ingresar las dos palabras clave aquí en la función de búsqueda y también encontré muchas respuestas.

¿Puede proporcionarme algunas formas de crear txid en rawtransaction? Sería mejor si puedes publicarlo en tu respuesta.
¿Hay algún comando único disponible en el núcleo de bitcoin que sea equivalente acreaterawtransaction,signrawtransaction,sendrawtransaction
No estoy al tanto de tal comando...

Puede usar signrawtransaction, este método acepta una matriz de claves privadas como argumento.

Parámetro n.º 3: claves privadas para firmar:

Una matriz que contiene claves privadas. Si se proporcionan claves, solo se utilizarán para firmar la transacción (incluso si la billetera tiene otras claves coincidentes). Si esta matriz está vacía o no se usa, y el soporte de billetera está habilitado, se usarán las claves de la billetera

¿Puede proporcionarme algunas formas de crear txid en rawtransaction?
@AjitSoman hay muchos ejemplos, en la documentación .