No puedo acceder a mis bitcoins porque mi billetera aún se está sincronizando. ¿Qué puedo hacer para gastarlos inmediatamente?

Compré bitcoins y descargué Bitcoin-QT, pero mi billetera tarda una eternidad en sincronizarse con la red.

No puedo acceder a mi billetera porque todavía está en proceso de sincronización. Tengo el registro de mi pago por los Bitcoins, el correo electrónico de confirmación, etc., y la dirección a la que se envió. Quiero desesperadamente empezar a gastarlos. ¿Qué puedo hacer para obtener acceso de inmediato sin esperar a que la sincronización siga su curso?

@Murch Pero, ¿cuál es el objetivo de esta pregunta? Como en, ¿el objetivo es hacer que la sincronización sea más rápida para que aparezcan las monedas, o sacar las monedas de la billetera que se está sincronizando y colocarlas en una billetera diferente? Creo que sería útil si la pregunta especificara esto.
@ StephenM347: "Quiero desesperadamente comenzar a gastarlos" fue clave para mí, pero tiene razón, debería quedar más claro. Dado que el autor de la pregunta no ha estado aquí durante más de 2,5 años, creo que podemos adaptar esta pregunta a nuestras necesidades... ¿Qué opinas de esta versión?
Tuve que hacer esto una vez por una billetera Dogecoin que no estaba sincronizada, y no tenía ganas de esperar a que se pusiera al día. Escribiré una respuesta esta noche o mañana describiendo lo que hice y tal vez incluso dando un guión para ayudar a hacerlo.

Respuestas (4)

Una solución es exportar (en su privacidad) la clave privada conectada a la dirección en la que recibió sus Bitcoins (o simplemente todas las claves privadas). Esto se puede hacer usando una herramienta de línea de comandos conocida como pywallet.

Luego, puede importar esta clave (o todas sus claves) a otra billetera. Las billeteras basadas en navegador, como https://blockchain.info/wallet , no requieren sincronización. Por lo tanto, puede gastar inmediatamente sus monedas. Para la billetera bĺockchain.info, el procedimiento se describe en su sitio web.

¿Cómo averiguo mi clave privada? He encriptado mi billetera. He buscado en la red la interfaz CLI pero no entiendo. he creado una nueva billetera en línea y espero exportar los bitcoins a esa billetera si puedo
Las instrucciones de @AlexJackson para exportar claves privadas de bitcoin-qt están aquí bitcoin.stackexchange.com/a/5933/2531

Tuve que hacer esto para una billetera Dogecoin que estaba muy desincronizada una vez. Describiré los pasos que funcionaron para mí. Sin embargo, mi ejemplo será para Bitcoin, ya que eso es probablemente lo que la mayoría de la gente necesitará.

Precaución: esto es un poco técnico, pero funciona. Espere que esto tome probablemente 10-30 minutos. Esto también supone que está utilizando una dirección Pay-To-Pubkey-Hash estándar (para bitcoin, esto solo significa una dirección que comienza con 1).

1.

Obtenga la dirección a la que le enviaron las monedas. Esta es una dirección que generó previamente la billetera Bitcoin-QT no sincronizada. Para este ejemplo, usaré

13x1ZipMJJbVawV7voCtW5qSoBUTwx13Nr

como mi dirección de la que necesito sacar monedas.

2.

Vaya a https://insight.bitpay.com/address/ {{ su dirección }}.

Encuentre el TXID de la transacción, el índice de salida y la cantidad de monedas que está tratando de gastar desde el explorador de bloques.

  • Para obtener la identificación de la transacción, use el código hexadecimal en la parte superior del cuadro de transacción.
  • Para obtener el índice de salida, cuente las salidas de transacciones desde cero hasta que encuentre su dirección. Por ejemplo, en la transacción que se muestra a continuación, mi dirección 13x... recibió monedas en la primera salida, lo que significa índice cero. Si estuviera en la segunda salida sería el índice 1, etc.
  • Para obtener la cantidad, asegúrese de seleccionar "BTC" como las unidades del sitio web (en la parte superior derecha). Luego copie la cantidad de la salida donde ve su dirección recibiendo monedas.

Entonces, para mí, la información importante aquí es:

txid:   83a1007401a6acb656668afc137b9c02ca023ae274e0f12abbc79395a89b6b79
index:  0
amount: 0.00231499

ingrese la descripción de la imagen aquí

3.

El otro dato que necesitamos es el scriptPubKey. Esto es básicamente una codificación de la dirección de más bajo nivel.

Para obtener esto, haga clic en el ícono "+" a la izquierda del TXID (todavía en la misma página de información que antes). Debajo de su dirección, dirá algo como:

OP_DUP OP_HASH160 205799b3b8bdba5824b0129eec27450b0cfde7eb OP_EQUALVERIFY OP_CHECKSIG

Ahora, la scriptPubKey que desea está usando esos 40 caracteres hexadecimales del medio, y algunos más. La fórmula básica es:

scriptPubKey = "76a914" concat {{ hex chars from above }} concat "88ac"

Así que para mi ejemplo, tenemos:

scriptPubKey: 76a914205799b3b8bdba5824b0129eec27450b0cfde7eb88ac

4.

¡Casi termino!

Obtenga la dirección a la que desea enviar las monedas también. usaré

1PwFdFxP7uXrun8sToCrWXxVdpeDeX6dfq.

5.

Ahora vamos a crear una transacción y enviarla a la red.

Abra la billetera Bitcoin-QT no sincronizada (o inicie el demonio bitcoind), vaya al menú Ayuda y seleccione Consola de depuración. En la ventana que se abre, reemplace los campos apropiados y luego escriba:

createrawtransaction '[{ "txid": "{{ your txid }}", "vout": {{ your index }} }]' '{ "{{ your address from step 4 }}": {{ amount - fee }} }'

Por lo general, se aplica una tarifa de alrededor de 0.0001.

Entonces, para mí esto se ve así:

createrawtransaction '[{ "txid": "83a1007401a6acb656668afc137b9c02ca023ae274e0f12abbc79395a89b6b79", "vout": 0 }]' '{"1PwFdFxP7uXrun8sToCrWXxVdpeDeX6dfq": 0.00221499}'

Y el resultado es

0100000001796b9ba89593c7bb2af1e074e23a02ca029c7b13fc8a6656b6aca6017400a1830000000000ffffffff013b610300000000001976a914fb9570085ff3acfef21eac307223eaa499e1e21188ac00000000

Ahora solo tenemos que firmarlo. Esto debe hacerse en el mismo demonio que generó la dirección, para que tenga las claves privadas. Reemplace con sus campos apropiados y luego ejecute:

signrawtransaction {{ hex from createrawtransaction step above }} '[{ "txid": "{{ your txid }}", "vout": {{ your index }}, "scriptPubKey": "{{ your scriptPubKey }}" }]

Entonces, para mí esto se ve así:

signrawtransaction 0100000001796b9ba89593c7bb2af1e074e23a02ca029c7b13fc8a6656b6aca6017400a1830000000000ffffffff013b610300000000001976a914fb9570085ff3acfef21eac307223eaa499e1e21188ac00000000 '[{ "txid": "83a1007401a6acb656668afc137b9c02ca023ae274e0f12abbc79395a89b6b79", "vout": 0, "scriptPubKey": "76a914205799b3b8bdba5824b0129eec27450b0cfde7eb88ac" }]'

El resultado se parece a:

0100000001796b9ba89593c7bb2af1e074e23a02ca029c7b13fc8a6656b6aca6017400a183000000006a4730440220000000000000000000000000000000000000000000000000000000000000000002200000000000000000000000000000000000000000000000000000000000000000012102e25c37498e9e62b2ebcc85780e10949eaacd29826b5ca97a1031ee22e55f0ab5ffffffff013b610300000000001976a914fb9570085ff3acfef21eac307223eaa499e1e21188ac00000000

6.

Usando el resultado final del paso 5, vaya a

https://live.blockcypher.com/btc-testnet/pushtx/

E ingrese el hexadecimal de transacción sin procesar. ¡Seleccione la red "Bitcoin", presione el botón "Difundir transacción" y habrá eliminado con éxito sus monedas de la billetera no sincronizada!

(No tengo ninguna afiliación con ninguno de los servicios utilizados aquí, simplemente los encontré útiles para esta respuesta).

Abra la consola en Bitcoin Core. Tipo dumpprivkeyy la dirección pública. Te dará la clave privada. A continuación, importe la clave privada al cliente ligero que desee.

Incluso podría enviar la transacción desde esa misma billetera si crea, firma y transmite una transacción sin procesar desde la consola. No es algo para alguien que quiera hacer su primer pago, pero vale la pena mencionarlo de todos modos.

Encuentre el archivo wallet.dat con los pares de claves pública-privada generados y ejecute el cliente bitcoin con el archivo en otra máquina.

Esta es una buena respuesta, pero debería explicarse un poco mejor. Por ejemplo, debe contener una advertencia para hacer una copia de seguridad de la otra billetera en la computadora que ya se ha sincronizado.