La importación de claves privadas crea una dirección diferente

¿Cómo funciona la importación de claves privadas?

Previamente importé la clave privada para una dirección 1Archive... en Bitcoin Core y anoté que luego agregó una dirección como 1AXbRq... y no la seguí más.

Hoy exporté la clave privada para una dirección 3... de Bitcoin Core y la importé en Electrum. Electrum agrega una dirección 1... y no ve ninguna de las transacciones.

¿Como funciona esto? Entiendo que hay una dirección subyacente 1... detrás de una dirección SegWit, pero ¿cómo gastaría BTC si no se muestra en el saldo de mi billetera? ¿Que más deberia hacer?

Si ya hay una pregunta respondida para esto en Bitcoin.SE, no pude encontrarla.

Mi clave privada comienza con L.

¿Era la dirección que comenzaba con 3una dirección P2WPKH? Si es así, eso podría ayudar: bitcoin.stackexchange.com/q/72899/38618
@MCCCS Bien, eso es realmente cerca. Tengo una dirección 3... no una dirección bc1... Tengo la esperanza de que va a ser fácilmente solucionable.
@MCCCS En realidad, probé ese método, Electrum dice que la clave no se puede importar. Mi clave privada comienza con L.
Es completamente irrelevante que su clave privada comience con "L". ¡No lo compartas!
ICIN, la descarga oficial de Electrum es de bitcoin.org/en/wallets/desktop/windows/electrum

Respuestas (3)

Sospecho que puede importarlo directamente desde la consola dentro de Electrum (basado en este PR). Actualmente, Electrum ahora permite importar p2wpk individuales dentro de direcciones p2sh (las 3 direcciones segwit). Sin embargo, aún puede importar una semilla completa utilizando una ruta de derivación BIP49.

Intente ejecutar lo siguiente en la consola electrum:

key = 'your_key'
txin_type, secret, compressed = bitcoin.deserialize_privkey(key)
wif2 = bitcoin.serialize_privkey(secret, compressed, 'p2wpkh-p2sh')
print(wif2)

Luego importa el wif2 que imprime

Eso funciona. Importa la dirección correcta.
¡Bueno saber! No estaba muy seguro, y actualmente estaba lejos de una máquina con electrum. Gracias por confirmar.
Tenga en cuenta que desde 3.1 puede anteponer "p2wpkh-p2sh:" a la clave privada antes de importarla.

Anteponga "p2wpkh-p2sh:" a la clave privada antes de importarla a Electrum. Por ejemplo:

p2wpkh-p2sh:5Kkzs8XrJNAmf9VQDFeGBfaRvSByAvPK6DbDXw5BVqswWaXSG2Y

No puedo confirmar esto: lo probé en mi clave privada y aparece un error, pero, de nuevo, ya lo he importado.
@Willtech solo funciona con 3.1 y superior .
Acabo de comprobar mi versión, de hecho no es 3.1 y superior.
me hiciste llorar, después de 6 horas de buscar e intentar. Ojalá pudiera darte +100 votos a favor. Gracias.
Esto debe marcarse como la respuesta correcta, ya que es más simple que la solución actualmente aceptada de usar la consola.

"Previamente importé la clave privada para una dirección 1Archive... en Bitcoin Core y noté que luego agregó una dirección como 1AXbRq... y no le di más seguimiento".

En primer lugar, no responderé a la primera pregunta. Simplemente suena raro, y el 99% es causado por un error.

¿Como funciona esto? Entiendo que hay una dirección subyacente 1... detrás de una dirección SegWit, pero ¿cómo gastaría BTC si no se muestra en el saldo de mi billetera? ¿Que más deberia hacer?

Así es como funciona la importación de una dirección P2PKH:

El resultado de WIF se ve afectado por tres parámetros: el tipo de clave privada (un byte para las claves privadas de BTC), la clave privada (que también contiene la ycoordenada que tiene la clave pública, si queremos la clave pública comprimida), y un 0x01byte adicional si queremos la clave pública comprimida. . Solo hay una clave pública que se puede generar usando ese WIF.

Así es como funciona la importación de una dirección P2SH:

1) Volcar el WIF de la dirección P2SH

2) Importar el WIF

3) Realice una transacción y observe cómo su billetera o Bitcoin Core no reconoce la transacción.

No reconocerá la transacción, porque hay una cantidad infinita de direcciones P2SH que se pueden crear usando WIF (Nota: ¡el script tiene un límite de tamaño, por lo que no es infinito)!

Para informar a su billetera sobre su dirección P2SH, también debe importar el script. Y esto no es compatible con el 99,9% de las carteras. (Sin embargo, las billeteras pueden importar direcciones de Testigo, ya que están estandarizadas y se usan ampliamente). Es por eso que Electrum no ve su dirección P2WPKH, si no le indica que use la dirección de Testigo.

Los scripts p2wpkh-p2sh están estandarizados en el bip. Siempre que anteponga "p2wpkh-p2sh:" al WIF, Electrum lo reconocerá como tal en Electrum 3.1 o posterior. En el caso de 3.0.x, debe convertir el WIF, lo que puede hacer usando el script publicado por @RaghavSood o este menú basado aquí .