Lightning Network es una segunda capa agregada a la cadena de bloques de Bitcoin (BTC) que permite transacciones fuera de la cadena, es decir, transacciones entre partes que no están en la red de la blockchain. Múltiples canales de pago entre partes o usuarios de Bitcoin conforman la segunda capa. Un canal de Lightning Network es un método de transacción de dos partes en el que las partes pueden realizar o recibir pagos entre sí. La capa dos mejora la escalabilidad de las aplicaciones de la cadena de bloques mediante la gestión de transacciones fuera de la red principal de la blockchain (capa uno), al mismo tiempo que se beneficia del poderoso paradigma de seguridad descentralizado de la red principal.
La escalabilidad es una barrera importante que restringe la adopción generalizada de las criptomonedas. Si se escala correctamente, una red de blockchain puede manejar de millones a miles de millones de transacciones por segundo (TPS). En este contexto, Lightning Network cobra tarifas bajas al realizar transacciones y liquidaciones fuera de la cadena, lo que permite nuevos casos de uso como micropagos instantáneos que pueden resolver el enigma tradicional «¿puedes comprar café con criptomonedas?», acelerando los tiempos de procesamiento y reduciendo los gastos (costos de energía) asociados con la cadena de bloques de Bitcoin.
Sin embargo, aunque la intención está ahí, Lightning Network aún lucha por resolver el problema e incluso presenta varios problemas como tarifas de enrutamiento bajas y ataques maliciosos. Por ejemplo, se requiere una pequeña tarifa para abrir y cerrar un canal de pago. Además de estas pequeñas tarifas, están las tarifas de enrutamiento que van hacia los nodos que validan las transacciones.
Ahora, surge la pregunta: si la tarifa de enrutamiento es tan baja, ¿por qué un nodo querría validar dicha transacción?
La respuesta clara es que los mineros no suelen validar transacciones más pequeñas, ya que obtendrán tarifas más bajas por validar transacciones insignificantes. Como resultado, los traders pagan una tarifa de enrutamiento y es posible que tengan que esperar mucho antes de que se valide la transacción. En cuanto a los ataques maliciosos, un mal actor podría iniciar varios canales de pago y cerrarlos todos a la vez. Luego, deben validarse esos canales que se interponen en el camino de los legítimos, congestionando la red. Durante la congestión, el atacante podría retirar fondos antes de que las partes legítimas se den cuenta de la situación.
Historia de Lightning Network
Lightning Network fue propuesta en 2015 por dos investigadores, Thaddeus Dryja y Joseph Poon, en un artículo titulado «The Bitcoin Lightning Network». Sus escritos se basaron en discusiones previas sobre canales de pago realizadas por Satoshi Nakamoto, el creador anónimo de Bitcoin. Nakamoto describió los canales de pago al desarrollador Mike Hearn, quien publicó las conversaciones en 2013.
El resumen del artículo describe un protocolo fuera de la cadena compuesto por canales de pago. Dentro de los canales de pago, dos partes que no son de confianza pueden transferir valor sin congestionar la red principal, ya que los canales existen fuera de la cadena. Los canales fuera de la cadena están diseñados para resolver el problema de escalabilidad de Bitcoin. Dryja y Poon luego detallaron que Visa alcanzó un máximo de 47,000 TPS durante las vacaciones de 2013. Para que Bitcoin se acerque al TPS de Visa, tendría que administrar ocho gigabytes de transacciones por bloque, que no se acerca a las capacidades de la cadena de bloques actual. Inicialmente, Bitcoin solo podía manejar siete transacciones por segundo, suponiendo que esas transacciones fueran de alrededor de 300 bytes cada una. Además, los bloques de Bitcoin solo tenían un límite de transacción de un megabyte en ese momento, por lo que ciertamente no había espacio para cerca de 47,000 transacciones de Bitcoin en un bloque. Los canales de pago fuera de la cadena de Lightning Network se crearon para abordar la falta de escalabilidad de Bitcoin, ya que los canales permiten que existan varias transacciones más pequeñas sin congestionar la red.
En 2016, Dryja y Poon fundaron Lightning Labs (con algunos otros colaboradores), una empresa dedicada al desarrollo de Lightning Network. A pesar de varios cambios en los miembros del equipo a lo largo del tiempo, Lightning Labs trabajó para que el protocolo fuera compatible con la red central de Bitcoin. Se hizo posible un gran avance después de la bifurcación suave basada en SegWit de Bitcoin en 2017, que liberó espacio para que cupieran más transacciones en cada bloque y eliminó un bug de Bitcoin de larga data llamado maleabilidad de transacción. El error permitió a los usuarios falsificar transacciones, mentir a la red y mantener Bitcoin en sus billeteras.
Debido a las pruebas previas al lanzamiento, los desarrolladores pudieron crear aplicaciones en Lightning Network de inmediato. Las aplicaciones incluían casos de uso simples, como billeteras y plataformas de juego, que aprovecharon el poder de las microtransacciones de Lightning Network.
En 2018, Lightning Labs finalmente lanzó una versión beta de su implementación de Lightning Network en la red principal de Bitcoin. En ese momento, figuras públicas como el fundador de Twitter, Jack Dorsey, comenzaron a involucrarse en el proyecto. Por ejemplo, Dorsey contrató a un grupo de desarrolladores para que se centraran exclusivamente en el desarrollo de Lightning Network pagándoles en Bitcoin. También planea implementar Lightning Network en Twitter en el futuro.
Cómo funciona la Lightning Network
Este protocolo permite la creación de un canal de pago entre pares entre dos partes, como entre un cliente y una cafetería. Una vez establecido, el canal les permite enviar una cantidad ilimitada de transacciones que son casi instantáneas y más económicas. Actúa como su propio pequeño libro de contabilidad para que los usuarios paguen por bienes y servicios aún más pequeños, como el café, sin afectar la red de Bitcoin.
Para crear un canal de pago, el pagador debe bloquear una cierta cantidad de Bitcoin en la red. Una vez que el Bitcoin está bloqueado, el destinatario puede facturar los montos que considere oportunos. Si el cliente desea mantener el canal abierto, puede optar por agregar Bitcoin de manera constante.
Al utilizar un canal de Lightning Network, ambas partes pueden realizar transacciones entre sí. En contraste con las transacciones ordinarias en la cadena de bloques de Bitcoin, algunas transacciones se manejan de manera diferente. Por ejemplo, cuando dos partes abren y cierran un canal, solo se actualizan en la cadena de bloques principal.
Las dos partes pueden transferir fondos entre ellos indefinidamente sin decirle a la cadena de bloques principal. Debido a que no es necesario que todos los nodos aprueben todas las transacciones dentro de una blockchain, esta estrategia acelera sustancialmente los tiempos de transacción. Los nodos de Lightning Network capaces de enrutar transacciones se forman mediante la combinación de canales de pago individuales entre las partes interesadas. Por lo tanto, Lightning Network es el resultado de la vinculación de muchos sistemas de pago.
Eventualmente, cuando las dos partes deciden terminar la transacción, pueden cerrar el canal. Luego, toda la información del canal se consolida en una sola transacción, que se envía a la red principal de Bitcoin para su registro. La consolidación garantiza que docenas de pequeñas transacciones envíen spam a la red a la vez, simplificándolas en una sola transacción que requiere menos tiempo y esfuerzo para que los nodos la validen. Sin canales de pago, las transacciones más pequeñas se interponen en el camino de las más grandes, congestionando la red y agregando más para que los nodos validen.
Por ejemplo, digamos que Mike va a una cafetería local todos los días y quiere pagar en Bitcoin. Podría optar por hacer una pequeña transacción por cada taza de café, pero debido a los problemas de escalabilidad de Bitcoin, la transacción puede tardar más de una hora en validarse. Mike también tendrá que pagar las altas tarifas de la red de Bitcoin, a pesar de que está realizando una pequeña transacción. Las transacciones pequeñas funcionan con métodos de pago tradicionales como una tarjeta porque empresas como Visa tienen la infraestructura para procesar más de 24,000 TPS. En cambio, Bitcoin, en un día normal, puede validar siete TPS.