Visão Geral
As carteiras Determinísticas Hierárquicas (HD) representam um grande avanço no gerenciamento de chaves do Bitcoin. Definidas pelo padrão BIP32, as carteiras HD derivam todos os pares de chaves a partir de uma única semente mestre em uma estrutura de árvore. Isso significa que um usuário só precisa fazer backup de uma frase semente para recuperar toda a sua carteira, incluindo todos os endereços já gerados. Praticamente todas as carteiras Bitcoin modernas são carteiras HD.
Árvore de Derivação de Chaves
Semente Mestre
│
▼
Chave Mestre (m)
│
├── m/44' ──────────────── Propósito: BIP44 (Legacy)
│ └── m/44'/0' ─────── Moeda: Bitcoin
│ ├── m/44'/0'/0' ── Conta 0
│ │ ├── .../0 ── Cadeia externa (recebimento)
│ │ │ ├── .../0/0 ── Endereço 0
│ │ │ ├── .../0/1 ── Endereço 1
│ │ │ └── .../0/2 ── Endereço 2
│ │ └── .../1 ── Cadeia interna (troco)
│ │ ├── .../1/0 ── Endereço de troco 0
│ │ └── .../1/1 ── Endereço de troco 1
│ └── m/44'/0'/1' ── Conta 1
│ └── ...
├── m/49' ──────────────── Propósito: BIP49 (SegWit compat.)
└── m/84' ──────────────── Propósito: BIP84 (SegWit nativo)
Como Funciona
O processo de derivação usa HMAC-SHA512 para produzir chaves filhas a partir de chaves pai:
Chave Pai + Código de Cadeia + Índice
│
▼
HMAC-SHA512
│
┌────┴────┐
│ │
256 bits 256 bits
esq. dir.
│ │
▼ ▼
Chave Código de
Filha Cadeia Filho
Derivação Reforçada vs. Normal
As carteiras HD suportam dois tipos de derivação, denotados pela presença ou ausência de um apóstrofo ('):
- Derivação normal (índice 0-2^31-1): As chaves públicas filhas podem ser derivadas da chave pública pai sem conhecer a chave privada. Isso permite as chaves públicas estendidas (xpubs).
- Derivação reforçada (índice 2^31 e acima, mostrado como '): Requer a chave privada pai. Isso impede que uma chave filha comprometida exponha a chave pai.
Benefícios das Carteiras HD
- Backup único: Uma frase semente faz backup de toda a carteira, passada e futura
- Prevenção de reutilização de endereços: Novos endereços podem ser gerados automaticamente para cada transação
- Separação de contas: Múltiplas contas lógicas podem ser mantidas sob uma única semente
- Capacidade somente leitura: Um xpub permite monitoramento sem acesso para gastar
- Interoperabilidade: Padrões como BIP44, BIP49 e BIP84 garantem que as carteiras possam recuperar os endereços umas das outras
Padrões de Caminho de Derivação
| BIP | Caminho | Tipo de Endereço | Formato |
|---|---|---|---|
| BIP44 | m/44'/0'/n' | P2PKH (Legacy) | 1... |
| BIP49 | m/49'/0'/n' | P2SH-P2WPKH (SegWit aninhado) | 3... |
| BIP84 | m/84'/0'/n' | P2WPKH (SegWit nativo) | bc1q... |
| BIP86 | m/86'/0'/n' | P2TR (Taproot) | bc1p... |
Conceitos Equivocados Comuns
- As carteiras HD não armazenam endereços. Elas armazenam a semente a partir da qual todos os endereços são matematicamente derivados.
- A palavra "determinístico" significa que a mesma semente sempre produz a mesma árvore de chaves. Não há aleatoriedade após a geração inicial da semente.
- Importar uma semente de uma carteira para outra pode não recuperar todos os fundos se as carteiras usarem caminhos de derivação diferentes. Sempre verifique o padrão de caminho de derivação sendo usado.