¿Por qué mi clave privada segwit genera una dirección 3 frente a una dirección bc1 como la que generé originalmente?

Tengo la siguiente clave privada btc que generé desde otra aplicación:

5KCPzu4tEAnFqwLrXUbW3GKMDSnUYY8CMie2HMRuHouSvrFhXA9

Esa aplicación me da la siguiente dirección segwit:

bc1qluk574lw9t536u72n0z2ya0ksx3s0kg0evkrme

Pero cuando voy a https://segwitaddress.org y me desplazo hacia abajo e ingreso mi clave privada en Ingrese una clave privada WIF para generar su dirección de segwit correspondiente. Obtengo una dirección totalmente diferente:

37wArHq69dxRwLkHt6MY8PpmbB6qjErrbK

Entonces, ¿estas 2 claves públicas realmente tienen la misma clave privada? ¿Cómo verifico si mi clave privada genera las mismas claves públicas? No pude encontrar ningún programa para hacer esta verificación.

Respuestas (2)

No existe un estándar para especificar si una clave privada debe corresponder a una dirección bech32, una dirección segwit anidada P2SH o una dirección P2PKH (dirección 1...). El formato WIF se ha utilizado tradicionalmente para las direcciones P2PKH. Sin embargo, algunas billeteras ahora decidirán crear una dirección segwit anidada P2SH o incluso una dirección bech32 en su lugar. Pero debido a que no existe un estándar para las claves privadas que correspondan a las direcciones de segwit, depende completamente de la billetera determinar qué tipo de dirección darle para una clave privada.

En su caso, la billetera le dio una dirección de segwit anidada P2SH. Pero podría haberle dado fácilmente la dirección P2PKH o la dirección bech32, ya que la clave privada se puede usar para producir los 3 tipos de direcciones.

Entonces, cualquier clave privada btc puede generar 3 tipos diferentes de direcciones: 1xxx (heredado), 3xxxx (P2SH) y bc1 (Segwit)? Mi pregunta ahora es ¿cómo puedo extraer las 3 direcciones de una sola clave privada? Mi objetivo principal es ver si la dirección bc1 coincide con mi clave privada, ya que no puedo encontrar ninguna forma de verificar si coinciden.
Sí, se puede usar cualquier clave privada para generar esos 3 tipos de direcciones. En teoría, en realidad podría usarse para generar una cantidad infinita de direcciones P2SH ya que los scripts pueden incluir básicamente cualquier dato arbitrario además de la clave pública. Lo único que hay que hacer para comprobar las direcciones es encontrar un software que genere cada una por ti.
¿Qué software haría esto?

Sí. esto es normal, es simplemente una cuestión de cómo se deriva.

Incluso puedo importar su clave privada con una billetera heredada (en Electrum), lo que me da 1QGFb7AUSFFnXEfBMUEf79NGKXqXMf9TQ7

Luego puede hacer una verificación base58 para ver si es válido.

Consulte http://lenschulwitz.com/base58 y valide usted mismo.

Sí, pero ¿cómo verifico si la dirección bc1xxxxx corresponde a la misma clave privada?
Deberá encontrar una billetera/servicio que admita la importación de una clave privada y luego la derivación a una dirección bc1. No estoy seguro de si Electrum te permite importar claves en sus billeteras compatibles con bc1, pero supongo que podrías intentarlo.