169 / 736SWAP

Submarine Swap

Trocar bitcoin entre a blockchain e a Lightning

Você tem bitcoin na blockchain, mas precisa pagar pela Lightning? Um Submarine Swap conecta os dois lados. Entender quem paga a quem esclarece a proteção, a espera e uma possível recuperação dos fundos.

Um Submarine Swap permite pagar pela Lightning Network com bitcoins que você tem na blockchain. A blockchain é o histórico público de transações do Bitcoin; a Lightning permite pagamentos rápidos sem registrar cada um deles separadamente nesse histórico. O sentido contrário se chama Reverse Submarine Swap. Você não compra outra moeda: descontadas as taxas, transfere valor entre essas duas formas de pagar. Condições criptográficas e de tempo vinculam os pagamentos. O aplicativo precisa verificá-las e concluir a troca a tempo ou permitir a recuperação dos fundos.

Anna guarda bitcoin em uma carteira comum, enquanto a loja emite uma fatura Lightning, um pedido de pagamento. Um swap normal permite bloquear bitcoin na blockchain sob condições combinadas; em troca, o serviço paga a fatura. Para transferir saldo Lightning a um endereço na blockchain, ela usa o sentido inverso: um Reverse Submarine Swap, como Loop Out. Não precisa fechar seus canais de pagamento. A troca não cria dinheiro, e o pagamento Lightning continua precisando de uma rota disponível. [1] [4]

Imagine um segredo cuja impressão digital possa ser conferida, sem que seja viável reconstruir o segredo a partir dela. Esse valor secreto se chama preimage. Sua impressão digital é um hash, calculado com SHA256. Pagamentos condicionais chamados HTLC combinam essa impressão com um prazo. No swap inverso, o aplicativo de Anna cria o segredo. O serviço mantém seu pagamento Lightning pendente e bloqueia o bitcoin correspondente na blockchain. Ao retirar esses fundos em uma operação claim, Anna revela o segredo na blockchain ou o entrega ao serviço durante a cooperação. Assim o serviço pode liquidar o pagamento vinculado. Pendente ainda não significa pago. [1] [4]

Uma mensagem do serviço não equivale a fundos na carteira de destino. A documentação da Boltz diz que invoice.settled em um swap inverso pode aparecer após a entrega da preimage e a liquidação da fatura Lightning. O serviço não verifica se o aplicativo de Anna realmente transmitiu a transação claim. É preciso conferir a saída de destino, a parcela específica de bitcoin atribuída à carteira dela, e as confirmações necessárias em blocos. Um bloco é um grupo de transações acrescentado à blockchain. A inclusão de uma transação em um bloco dá a ela a primeira confirmação; cada bloco seguinte acrescenta outra. Um status confuso não é motivo para repetir imediatamente o pagamento. [1] [2]

Em um swap normal, o bitcoin de Anna pode já estar bloqueado na blockchain enquanto a fatura continua sem pagamento. A devolução, refund, exige então uma transação preparada e transmitida pelo aplicativo dela. Sem cooperação do serviço, é preciso esperar pelo timelock, a condição de tempo combinada. No sentido inverso, um pagamento Lightning ainda não liquidado pode ter seus HTLC pendentes cancelados, liberando o saldo sem uma transação refund de Anna na blockchain. Isso não significa que um pagamento já liquidado volte sozinho após revelar a preimage. O sentido e a etapa importam. [1] [3]

Anna compara o que envia com o que realmente chega. A diferença pode incluir taxas do serviço, do roteamento Lightning e das transações na blockchain. Um swap normal malsucedido pode acrescentar a taxa de devolução. O tempo também conta: publicar um claim pode revelar a preimage antes de sua confirmação em um bloco. A documentação Loop explica que, perto do timeout, o cliente pode elevar além do limite inicial a taxa do sweep, a transação que recolhe os fundos. O vínculo criptográfico não promete uma troca instantânea, gratuita ou sem risco. [5] [6]

As palavras de recuperação de outra carteira podem não restaurar um swap em andamento. Conforme o aplicativo, são necessários uma chave refund ou rescue key e os dados da troca, incluindo a saída bloqueada e o prazo. Boltz Swap Restore deriva chaves de seu próprio backup e localiza os swaps associados. Usa uma xpub, chave pública estendida, na busca: ela pode revelar o histórico, mas não assina nem gasta sozinha. Uma chave privada é um valor secreto usado pelo aplicativo para assinar uma transação segundo as condições aplicáveis. Essas chaves ficam no dispositivo. É preciso saber o que o backup restaura e onde fica antes de enviar dinheiro. [7] [3]

O usuário não deveria calcular condições criptográficas à mão, mas o aplicativo deve conferi-las. Confiar apenas no endereço retornado por uma API, interface de troca de dados entre programas, não basta. O cliente verifica rede, valores e taxas, hash, chaves e prazos. Também precisa validar o script, as regras de gasto, ou sua árvore em Taproot, e o endereço derivado delas. A fatura Lightning deve corresponder à impressão e ao valor combinados. Um mecanismo correto não salva um programa que envia fundos para outro lugar. [2]

Com Taproot, as partes podem usar MuSig2 para produzir uma assinatura conjunta. Esse caminho key-path pode custar menos e não precisa revelar publicamente as condições do swap. O aplicativo também precisa do caminho script-path, que aplica diretamente essas condições quando o parceiro não coopera: para claim ou refund, conforme o sentido. Se um swap normal falhar, um refund assinado pelas duas partes pode devolver os fundos mais cedo. Mas, para recuperá-los sem a cooperação do serviço, Anna precisa esperar até que o timelock combinado permita a devolução. Expor menos dados na blockchain tampouco torna a troca anônima para o serviço intermediário. [3] [4]

Para ter uma visão mais completa, leia este verbete junto com Lightning Network, HTLC, Inbound Liquidity, Taproot, MuSig2, CLTV. Também há referências a este verbete em Liquidez Lightning, Inbound Liquidity, Boltz, Lightning Service Provider.

DOC · 001Boltz — Swap types and statesDocumentação DOC · 002Boltz — Client verificationDocumentação DOC · 003Boltz — Claims and refundsDocumentação DOC · 004Lightning Loop — ArchitectureDocumentação DOC · 005Lightning Loop — FeesDocumentação DOC · 006Lightning Loop — Sweep fee limitsDocumentação DOC · 007Boltz — Swap restoreDocumentação
Revisto em: Fontes em primeiro lugar · Não é recomendação de investimento