Decodificador de Invoice BOLT 11
Leia campos, valor, assinatura e dicas de rota de uma invoice Lightning
Uma invoice BOLT 11 é um pedido de pagamento Lightning. Ela codifica rede, valor opcional, timestamp, descrição, payment_hash, payment_secret, expiração, feature bits, hints para canais privados, fallback on-chain e uma assinatura do nó que criou a invoice.
Esta ferramenta decodifica a estrutura da invoice no navegador para estudo. Use apenas invoices públicas, fictícias ou de teste. Não cole seed, mnemonic, chave privada, macaroon, senha, backup de canal ou dados sensíveis de carteira.
Conteúdo
Ferramenta
Decodificador de Invoice BOLT 11
O que ela verifica
- decodificação Bech32 e checksum da string;
- HRP, rede e valor opcional em millisatoshis, satoshis e BTC;
- timestamp, expiração e
min_final_cltv_expiry_delta; - campos
p,s,d,h,9,r,f,nem; - tamanho dos campos obrigatórios principais;
- recuperação do nó assinante a partir da assinatura compacta.
A recuperação do nó assinante é útil porque a invoice pode omitir o campo n. Nesse caso, quem paga consegue derivar a chave pública do emissor pela assinatura e pelo conteúdo assinado.
Campos importantes
| Campo | Função | Cuidado prático |
|---|---|---|
| p | payment_hash, usado no HTLC. | Deve ter 32 bytes. Não é a preimage. |
| s | payment_secret, usado para autenticar o pagamento esperado. | Invoices modernas devem ter exatamente um. |
| d/h | Descrição em texto ou hash de uma descrição externa. | Deve existir exatamente um dos dois. |
| x | Tempo de expiração em segundos. | Depois de expirada, a carteira não deve tentar pagar. |
| c | Delta CLTV final exigido pelo recebedor. | Afeta o CLTV acumulado na busca de rota. |
| r | Routing hints para chegar a canais não anunciados publicamente. | É dica do recebedor, não gossip validado globalmente. |
| f | Fallback on-chain. | Não deve virar pagamento on-chain automático sem confirmação explícita. |
| 9 | Feature bits no contexto da invoice. | Bit par desconhecido é obrigatório e deve causar falha. |
Limites
A ferramenta é didática. Ela não substitui uma carteira Lightning completa. Uma carteira real ainda precisa aplicar política de pagamento, calcular rota, somar fees, somar CLTV, respeitar feature bits por contexto, lidar com MPP quando aplicável, executar retries e confirmar o resultado do pagamento.
Também existe diferença entre decodificar uma invoice e decidir se ela é segura de pagar. O usuário ainda precisa conferir valor, descrição, recebedor esperado, expiração, rede correta e risco de privacidade antes de confirmar.