Skip to main content

xpub | Bitcoin Glossary | Mapping Bitcoin

xpub

Criptografía

Also known as: extended public key, ypub, zpub

Clave pública extendida de una billetera HD que deriva claves hijas y sus direcciones. Compartirla permite monitorear saldos sin exponer claves privadas.

Descripción general

Una xpub (clave pública extendida) es una clave pública especial definida por el estándar de billetera HD BIP32 que puede derivar matemáticamente un árbol completo de claves públicas hijas y sus correspondientes direcciones de Bitcoin. Al compartir una xpub con un servicio, el servicio puede generar nuevas direcciones de recepción y monitorear saldos sin tener ninguna capacidad de gastar los fondos asociados.

Derivación de claves

Semilla maestra
    |
  [derivación BIP32]
    |
  m/84'/0'/0'  (par de claves a nivel de cuenta)
    |
  ┌─────────────┐
  │    xpub      │ ← Clave pública extendida en esta ruta
  │ (compartible)│
  └──────┬──────┘
         |
    ┌────┴────┐
    |         |
  m/.../0   m/.../1    (cadenas externa / interna)
    |         |
  ┌─┴─┐    ┌─┴─┐
  0   1    0   1  ...  (direcciones hijas)
  |   |    |   |
 dir  dir  dir  dir   (derivadas sin claves privadas)

La xpub contiene tanto una clave pública como un código de cadena, que juntos permiten la derivación determinista de claves hijas. La clave privada extendida correspondiente (xprv) puede derivar claves privadas, pero la xpub sola no puede.

Variantes: ypub y zpub

Diferentes estándares de formato de dirección introdujeron variantes con prefijos para indicar la ruta de derivación y el tipo de dirección:

  • xpub: Direcciones legadas (BIP44, P2PKH) — direcciones que comienzan con 1
  • ypub: SegWit envuelto (BIP49, P2SH-P2WPKH) — direcciones que comienzan con 3
  • zpub: SegWit nativo (BIP84, P2WPKH) — direcciones que comienzan con bc1q

Estas son funcionalmente la misma estructura de datos con bytes de versión diferentes, permitiendo al software de billetera determinar automáticamente qué formato de dirección generar.

Casos de uso

  • Billeteras de solo lectura: Importa una xpub para monitorear el saldo de una billetera de almacenamiento en frío y generar direcciones de recepción sin exponer las claves privadas.
  • Procesamiento de pagos: Un comerciante puede compartir una xpub con su plataforma de comercio electrónico para generar direcciones únicas para cada pago de cliente.
  • Contabilidad: Las herramientas financieras pueden importar xpubs para rastrear tenencias de bitcoin con fines fiscales o de auditoría.

Advertencia de privacidad

Una xpub revela el historial completo de transacciones y el saldo de todas las direcciones en su ruta de derivación. Cualquiera con una xpub puede ver cada transacción pasada y futura de esa cuenta. Trata las xpubs como datos sensibles:

  • Nunca compartas una xpub públicamente
  • Compártela solo con servicios de confianza que la requieran
  • Ten en cuenta que un servicio con tu xpub puede correlacionar todas tus direcciones

Conceptos erróneos comunes

Una xpub no puede usarse para gastar bitcoin. Solo permite la generación de direcciones y el monitoreo de saldos. Sin embargo, si alguien obtiene tanto una xpub como una única clave privada hija, potencialmente puede derivar todas las demás claves privadas en esa ruta de derivación — razón por la cual se usa la derivación endurecida para las claves a nivel de cuenta.