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.