Um canal de pagamento é uma conta privada entre duas partes, assegurada pelo Bitcoin. É o bloco de construção da rede Lightning.
Abertura
Alice e Bob criam uma transação de financiamento na blockchain que bloqueia, por exemplo, 0,01 BTC numa saída multisig 2-de-2. Nenhum pode movê-la sozinho. Antes de a transmitir, assinam a primeira transação de compromisso, que serve de reembolso para Alice recuperar o dinheiro se Bob desaparecer.
Pagar de um lado para o outro
Para pagar a Bob 1.000 satoshis, Alice e Bob assinam uma nova «transação de compromisso» que reparte as moedas bloqueadas com 1.000 sats a mais do lado de Bob. Nada é transmitido. Podem repetir isto milhares de vezes, de imediato e sem taxas on-chain. Cada novo estado substitui o anterior.
Impedir batota
O que impede Alice de transmitir um estado antigo em que tinha mais dinheiro? Ao passar a um estado novo, entregam um ao outro um segredo de revogação do antigo. Se Alice transmitir um estado desatualizado, Bob tem uma janela de tempo para usar esse segredo e reclamar todos os fundos do canal como penalização. Por isso o comportamento honesto é a única escolha racional. Usuários offline podem contratar «watchtowers» para vigiar a cadeia por eles.
Fecho
Fecho cooperativo: ambos assinam uma transação final que paga a cada lado o seu saldo. É rápido e barato.
Fecho forçado: se um lado não responde, o outro transmite a última transação de compromisso e espera que um timelock expire antes de receber os fundos.
Por que importa
Só duas transações on-chain, abertura e fecho, podem cobrir milhares de pagamentos. Os canais deixam o Bitcoin escalar sem mudar as regras da camada base, e com apenas uma pequena perda das garantias de segurança dessa camada.