Lightning (red)

De Wikipedia, la enciclopedia libre
(Redirigido desde «Lightning (P2P)»)
Ir a la navegación Ir a la búsqueda
Protocolo Lightning
Familia: Familia de protocolos de Internet
Uso: Pagos electrónicos
Puerto: 9735/TCP[1]
Lightning en el modelo TCP/IP
Aplicación Lightning (usuario)
Bitcoin (soporte)
Transporte TCP
Internet IP (IPv4, IPv6)
Enlace Ethernet, Token Bus, Token Ring, FDDI ...
Especificación del protocolo

Lightning es una red P2P construida sobre Bitcoin que permite la tramitación de pagos y micropagos de forma casi instantánea.[2]

Su diseño original fue publicado en enero de 2016 por Joseph Poon y Thaddeus Dryja.[2]

Conceptos fundamentales[editar]

Lightning propone que la escritura sobre la cadena de bloques se utilice exclusivamente para gestionar la apertura y cierre de canales de pagos bidireccionales. Un usuario puede enviar bitcoins a cualquier otro destino dentro de la red Lightning. Para ello, la red encamina cada transacción mediante onion routing entre nodos no confiables, siguiendo una ruta formada por varios canales de pagos contiguos hasta alcanzar al destinatario final. Los pagos se tramitan de manera casi instantánea y con comisiones reducidas. A su vez, el receptor de los fondos puede tener la certeza de que no va a sufrir un ataque de doble gasto, que ninguno de los nodos intermedios puede robar los fondos y que mantiene el control total de los nuevos bitcoins recibidos.[2]

Las transacciones que se tramitan a través de los canales de pagos son off chain, es decir, no se registran en la cadena de bloques o blockchain. Cada entidad que mantenga abierto un canal de pagos tiene la responsabilidad de guardar el estado asociado a la última transacción que haya enviado o recibido a través de ese canal, desechando por innecesarias cualquier otra transacción que haya recibido previamente.[2]​ De esta manera, los dispositivos adaptados para el internet de las cosas pueden tramitar miles de transacciones con unos requisitos de hardware mínimos, tanto en capacidad de procesamiento como en almacenamiento de datos.

Lightning también permite la interconexión entre distintas cadenas de bloques. En una definición flexible del término, se puede considerar que Lightning proporciona una funcionalidad similar a Enterprise Service Bus para entornos de arquitectura orientada a servicios, aunque en este caso, de acceso abierto y orientado a la coordinación de cadenas de bloques heterogéneas, como cadenas laterales y otras.

Las bajas comisiones hacen que Lightning sea especialmente apropiado para el envío y recepción de micropagos. Como los pagos son off chain, al menos a nivel teórico, sería posible hacer pagos incluso inferiores a la unidad mínima aceptable en la cadena de bloques (un satoshi, una cienmillonésima de bitcoin).[2]

Implementaciones principales[editar]

Varios equipos están desarrollando distintas implementaciones de Lightning como software libre. Algunas de ellas son las siguientes:

  • lnd: El primer daemon de Lightning, escrito en Go y desarrollado por Lightning Labs.[3]​Actualmente esta es la implementación que más popularidad ha conseguido y que más recursos tiene disponibles para que nuevos desarrolladores puedan crear aplicaciones con Lightning más fácilmente.
  • C-lightning: El cliente escrito en C desarrollado por Blockstream.[4]
  • Lit: Un cliente ligero con su propio monedero que no necesita ejecutar un nodo de Bitcoin.[5]
  • Eclair: El cliente Lightning escrito en Scala de la empresa ACINQ.[6]

Consecuencias sobre la oferta monetaria[editar]

Para poder enviar fondos desde un emisor es necesario que los canales de pagos que participan en la ruta completa hasta el destino mantengan suficientes bitcoins reservados dentro de cada uno de esos canales de pagos. Si no es así, el pago no podrá llevarse a cabo, y el protocolo deberá encontrar otra ruta diferente que cumpla con esos requisitos.

Así, los fondos bajo el control de los nodos Lightning participan en la creación de la ruta de pago al destinatario, pero no pueden ser gastados para otros propósitos. Esto provoca que la parte de la base monetaria disponible para pagos sea sensiblemente inferior al número total de bitcoins obtenidos por minería, acentuando su carácter deflacionario original a medida que la red se extiende y aumenta el número de nodos Lightning y las rutas disponibles.

Contratos inteligentes[editar]

Sobre la base de Lightning, se espera que en el futuro también sea posible ejecutar contratos inteligentes sin registrar sus términos legales en la cadena de bloques.[7]​ Por ejemplo, dos usuarios pueden acordar un contrato de futuros y recibir el resultado desde una máquina oráculo en la fecha de vencimiento, que dispararía el pago para cada uno de los partícipes según lo convenido de manera irrevocable.

Referencias[editar]

  1. «BOLT #1: Base del protocolo». Consultado el 21 de julio de 2017. 
  2. a b c d e Joseph Poon y Thaddeus Dryja (14 de enero de 2016). «The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments» (PDF). Consultado el 21 de julio de 2017. 
  3. «Lightning Network Daemon». Consultado el 21 de julio de 2017. 
  4. «c-lightning — a Lightning Network implementation in C». Consultado el 21 de julio de 2017. 
  5. «Lightning Network node software». Consultado el 21 de julio de 2017. 
  6. «A scala implementation of the Lightning Network». Consultado el 21 de julio de 2017. 
  7. Thaddeus Dryja. «Discreet Log contracts» (PDF). Consultado el 21 de julio de 2017.