Blockchain/Nivel V · Capas/5.1 Lightning/Lección 1
Canales de pago
Dos firmas, miles de pagos: la mecánica de la liquidación fuera de la cadena
MaterialesUn explorador de bloques capaz de ver entradas multisig (p. ej., mempool.space)El documento de especificaciones de BOLT #2Una herramienta de graficación para visualizar las estructuras de transacciones de financiación y compromisos.
Curiosidad
- ¿Cómo pueden dos partes realizar miles de pagos instantáneos si solo envían dos transacciones al blockchain de Bitcoin?
- ¿Qué mecanismo impide que un participante transmita una transacción de compromiso anterior que favorezca su saldo?
- ¿Por qué los primeros canales de pago, descritos por Jeremy Spilman en 2013, eran solo unidireccionales?
Explorar
- La capa base de Bitcoin resuelve las transacciones en intervalos de aproximadamente diez minutos, lo que genera demoras y limitaciones en los costos para los micropagos de alta frecuencia. Los canales de pago transfieren la carga computacional relacionada con las actualizaciones del estado fuera de la cadena, permitiendo a los participantes intercambiar estados de saldo firmados indefinidamente sin necesidad de propagación por la red. La blockchain en la cadena sirve únicamente como capa de liquidación, verificando solo los eventos iniciales de financiación y el cierre final.
- El canal comienza con una transacción de financiación: una salida multisig de tipo 2-de-2 que bloquea los fondos controlados tanto por Alice como por Bob. Si cada uno aporta 1 BTC, la capacidad del canal es de 2 BTC. Ninguna de las partes puede gastar unilateralmente estos fondos sin la firma de la otra. Esta estructura une a los participantes en una cuenta compartida que existe únicamente como un derecho potencial sobre la cadena principal.
- Durante la operación, Alice y Bob intercambian transacciones de compromiso que representan nuevas distribuciones de saldos. Cada actualización reemplaza el estado anterior; si Alice envía 0,1 BTC a Bob, firman una nueva transacción para transferir los fondos desde la salida de Alice hacia la de Bob. Estas transacciones firmadas pero no transmitidas son transacciones válidas de Bitcoin, lo que garantiza que cualquier estado final pueda aplicarse en la cadena sin depender de la confianza en la contraparte.
- También se debe impedir que cada parte transmita un estado obsoleto por el cual recibió más pagos. Lightning lo hace mediante secretos de revocación y mecanismos de bloqueo temporal, temas que se tratarán en una lección posterior; en resumen, publicar un estado revocado permite a la otra parte tomar todo el saldo del canal, lo que convierte el engaño en una apuesta perdida.
- El cierre se produce de forma cooperativa o unilateral. En un cierre cooperativo, ambas partes firman una transacción de liquidación que paga sus saldos finales de inmediato, sin timelocks. Si una de las partes se desconecta o actúa de manera maliciosa, la otra puede forzar el cierre al difundir la última transacción de compromiso. En este camino unilateral, la parte que fuerza el cierre debe esperar un timelock relativo antes de poder gastar su propia parte, lo que deja tiempo para reclamar una penalización; la salida de la otra parte está disponible casi de inmediato.
- Entre los precursores se encuentran los canales unidireccionales de Jeremy Spilman (2013), en los cuales los pagos solo podían fluir desde el pagador al beneficiario, y los canales duodireccionales de Christian Decker y Roger Wattenhofer (2015). El artículo de Joseph Poon y Thaddeus Dryja sobre la Red Lightning (borrador de 2015, versión de 2016) introdujo compromisos revocables, lo que permitió que un canal permaneciera abierto indefinidamente, así como los HTLC, que facilitaron que los pagos circularan a través de varios canales. Las implementaciones en mainnet como LND, Core Lightning y Eclair gestionan ahora estos estados, y la adopción significativa comenzó de verdad en 2018.
Datos clave
- Un canal de pago bloquea los fondos en una salida multisig de 2 de 2, requiriendo ambas firmas para realizar gastos en la cadena.
- Las transacciones de compromiso son actualizaciones firmadas pero no transmitidas que redistribuyen el saldo del canal; cada nuevo estado reemplaza al anterior.
- Los secretos de revocación permiten a la contraparte reclamar el saldo completo del canal si se transmite una transacción de compromiso obsoleta.
- Los cierres cooperativos liquidan los saldos de inmediato mediante una transacción sin timelocks; los cierres unilaterales imponen timelocks relativos para la verificación de penalizaciones.
- Los canales unidireccionales de Jeremy Spilman en 2013 y los canales duales de Decker/Wattenhofer en 2015 fueron los precursores principales de la Red Lightning.
- Las principales implementaciones incluyen LND (Lightning Labs), Core Lightning (Blockstream), Eclair (ACINQ) y LDK, siendo el uso en la red principal cada vez más frecuente desde 2018.
Ejercicio nueve, seis, tres, uno
9ReunirEnumera 9 componentes técnicos o protocolos distintos involucrados en la apertura, actualización y cierre de un canal de pago.
6AgruparAgrupa los 9 elementos en 6 categorías según su función: financiación, gestión de estado, aplicación de seguridad, mecanismos de cierre, requisitos de enrutamiento o estándares de implementación.
3DestilarReduce los 6 grupos a 3 principios fundamentales que garanticen un funcionamiento sin necesidad de confianza entre dos partes.
1CristalizarEscribe una oración sobre por qué dos transacciones en la cadena pueden liquidar cualquier cantidad de pagos fuera de la cadena.
Verificación de hechos
Fechas, cifras y afirmaciones verificadas con las fuentes publicadas que se enumeran a continuación.