Visão geral
Uma xpub (chave pública estendida) é uma chave pública especial definida pelo padrão de carteira HD BIP32 que pode derivar matematicamente uma árvore completa de chaves públicas filhas e seus correspondentes endereços Bitcoin. Ao compartilhar uma xpub com um serviço, o serviço pode gerar novos endereços de recebimento e monitorar saldos sem ter nenhuma capacidade de gastar os fundos associados.
Derivação de chaves
Semente mestre
|
[derivação BIP32]
|
m/84'/0'/0' (par de chaves no nível de conta)
|
┌─────────────┐
│ xpub │ ← Chave pública estendida neste caminho
│(compartilhável)│
└──────┬──────┘
|
┌────┴────┐
| |
m/.../0 m/.../1 (cadeias externa / interna)
| |
┌─┴─┐ ┌─┴─┐
0 1 0 1 ... (endereços filhos)
| | | |
end end end end (derivados sem chaves privadas)
A xpub contém tanto uma chave pública quanto um código de cadeia, que juntos permitem a derivação determinística de chaves filhas. A chave privada estendida correspondente (xprv) pode derivar chaves privadas, mas a xpub sozinha não pode.
Variantes: ypub e zpub
Diferentes padrões de formato de endereço introduziram variantes com prefixos para indicar o caminho de derivação e o tipo de endereço:
- xpub: Endereços legados (BIP44, P2PKH) — endereços começando com
1 - ypub: SegWit encapsulado (BIP49, P2SH-P2WPKH) — endereços começando com
3 - zpub: SegWit nativo (BIP84, P2WPKH) — endereços começando com
bc1q
Estas são funcionalmente a mesma estrutura de dados com bytes de versão diferentes, permitindo que o software de carteira determine automaticamente qual formato de endereço gerar.
Casos de uso
- Carteiras somente leitura: Importe uma xpub para monitorar o saldo de uma carteira de armazenamento a frio e gerar endereços de recebimento sem expor chaves privadas.
- Processamento de pagamentos: Um comerciante pode compartilhar uma xpub com sua plataforma de e-commerce para gerar endereços exclusivos para cada pagamento de cliente.
- Contabilidade: Ferramentas financeiras podem importar xpubs para rastrear holdings de bitcoin para fins fiscais ou de auditoria.
Aviso de privacidade
Uma xpub revela o histórico completo de transações e o saldo de todos os endereços em seu caminho de derivação. Qualquer pessoa com uma xpub pode ver cada transação passada e futura dessa conta. Trate as xpubs como dados sensíveis:
- Nunca compartilhe uma xpub publicamente
- Compartilhe apenas com serviços confiáveis que precisam dela
- Esteja ciente de que um serviço com sua xpub pode correlacionar todos os seus endereços
Conceitos errôneos comuns
Uma xpub não pode ser usada para gastar bitcoin. Ela permite apenas a geração de endereços e o monitoramento de saldos. No entanto, se alguém obtiver tanto uma xpub quanto uma única chave privada filha, ele pode potencialmente derivar todas as outras chaves privadas nesse caminho de derivação — razão pela qual a derivação endurecida é usada para chaves no nível de conta.