Bitcoin Forum

Local => Primeros pasos y ayuda => Topic started by: MA40 on September 19, 2021, 06:17:55 PM



Title: Entendiendo las direcciones Bitcoin
Post by: MA40 on September 19, 2021, 06:17:55 PM
Hola.

Actualmente hay tres tipos de direcciones Bitcoin (o mejor dicho, tres formatos):

   •   Legacy (P2PKH): las direcciones comienzan con “1”.
   •   Nested SegWit (P2SH): las direcciones comienzan con “3”.
   •   Native SegWit (Bech32): las direcciones comienzan con “bc1”.

Mi duda es si se pueden convertir unas en otras, o dicho de otra forma: ¿A una clave privada le corresponde una dirección Bitcoin en un formato concreto, o con una clave privada puedo obtener los tres formatos de dirección Bitcoin?

Un saludo.


Title: Re: Entendiendo las direcciones Bitcoin
Post by: solosequenosenada on September 19, 2021, 07:05:07 PM
Yo añadiría (porque quedan pocos días) que en segwit tendríamos:

Segwit version 0 bc1q
Segwit version 1 (taproot) bc1p

La respuesta corta seria que no, no se puede transformar de un tipo en otro. Respuesta larga aquí (https://bitcoin.stackexchange.com/questions/72775/is-it-possible-to-convert-an-address-from-p2pkh-to-p2sh) y aquí (https://bitcointalk.org/index.php?topic=5249246.0).

Pero si el seed es BIP39 si que podrías generar nuevas direcciones segwit desde electrum por ejemplo.


Title: Re: Entendiendo las direcciones Bitcoin
Post by: DdmrDdmr on September 20, 2021, 09:23:39 AM
Llevo un rato leyendo los siguientes hilos, y aquí igual me meto en un charco, por lo que lo que ahora indico se ha de coger con pinzas. Referencias:

 How Bitcoin Addresses are generated? Understand the Math behind Bitcoin (https://bitcointalk.org/index.php?topic=5223167.0)
 [Full Guide+Code]Seed Phrase & The Process of Deriving Bitcoin Addresses from It (https://bitcointalk.org/index.php?topic=5316005.msg56310185#msg56310185)
https://btcrecover.readthedocs.io/en/latest/bip39-accounts-and-altcoins/#bitcoin

si bien he leído en algunas fuentes que era posible, también se indicaba que no se intentase por el riesgo de pérdida de los BTCs (eran comentarios sueltos, y no algo con cara y ojos y que de por fiable).

Según entiendo, la clave privada nos llevará a la clave pública no comprimida, siendo ésta la que luego se convierte en la clave pública en base al proceso de conversión pertinente (P2PKH, P2SH, Bech32). Luego desde la clave pública podemos generar cualquiera de los tipos de direcciones válidas. No obstante, desde una dirección pública, al estar hasheada, no podemos revertir el proceso hasta llegar a la clave pública en términos generales,  ... pero la propia wallet a la cual pertenece la dirección ¿quízás si?

Lo digo por la función GetAddressInfo (ver https://bitcoincore.org/en/doc/0.20.0/rpc/wallet/getaddressinfo/) que retorna la clave pública si la dirección es propia.


Title: Re: Entendiendo las direcciones Bitcoin
Post by: solosequenosenada on September 20, 2021, 09:42:29 AM
Según entiendo es técnicamente posible pero es algo que no tiene sentido hacer y hay que comprender bien todo el proceso...para mi es bastante complejo.

En el primer enlace que envío es el propio Pieter Wuille quien recomienda no hacerlo.

https://bitcoin.stackexchange.com/questions/72775/is-it-possible-to-convert-an-address-from-p2pkh-to-p2sh
 (https://bitcoin.stackexchange.com/questions/72775/is-it-possible-to-convert-an-address-from-p2pkh-to-p2sh)


Title: Re: Entendiendo las direcciones Bitcoin
Post by: 0xCrypto on November 02, 2021, 10:20:30 PM
Hola.

Actualmente hay tres tipos de direcciones Bitcoin (o mejor dicho, tres formatos):

   •   Legacy (P2PKH): las direcciones comienzan con “1”.
   •   Nested SegWit (P2SH): las direcciones comienzan con “3”.
   •   Native SegWit (Bech32): las direcciones comienzan con “bc1”.

Mi duda es si se pueden convertir unas en otras, o dicho de otra forma: ¿A una clave privada le corresponde una dirección Bitcoin en un formato concreto, o con una clave privada puedo obtener los tres formatos de dirección Bitcoin?

Un saludo.

entropia -> frase semilla -> bip39 -> seed

una vez tienes la seed, se hacen las derivaciones, depende del bip que se implemente se usa un derivation path u otro

por lo tanto: si, a una clave privada le corresponde un formato concreto ya que se llega a ella desde una derivacion concreta (bip44, bip32, etc)

para llegar al resto debes tener o la semilla, o la root key (xprv previa a la derivacion)