Durante los รบltimos dรญas el debate acerca del alcance deย Lightningย Network como una soluciรณn capaz de proporcionar descentralizaciรณn y escalabilidad en la red de Bitcoin ha estado llenando las redes de diversas opiniones.
Lightningย Network es un proyecto de escalabilidad que propone la implementaciรณn de una red de canales de pago (cadenas paralelas)ย paraย realizar transacciones con bitcoin fuera de la cadena principal. El proyecto, desarrolladoย por Joseph Poon y Thaddeus Dryja, asegura que serรก posible realizar billones deย micropagosย en un solo dรญa utilizando contratos inteligentes que aseguran la privacidad y la velocidad de cada transacciรณn,ย y evitandoย el doble gasto.
Sin embargo, no todos dentro de la comunidad estรกn de acuerdo con la premisa que asegura que los canales de pago de la redย Lightningย Network son un medio seguro para realizar transacciones peer-to-peer en una red distribuida.ย Jonaldย Fyookballย argumentaย que la redย Lightningย Network no puede serย una soluciรณn a la escalabilidad y la descentralizaciรณn. ยฟPor quรฉ? Segรบnย Fyookkball, porque el cรณdigo exige que los canales de pago estรฉnย centralizados en concentradores oย hubs. Un modelo descentralizado no es necesariamente distribuido; que una red no posea un รบnicoย centro no equivale a decir que mรบltiples centros no concentren, de alguna manera, los datos o los activos que los usuarios intercambian o almacenan.
Esto quiere decir queย un canal de pago entre un punto A y un punto B, que debe tener una caracterรญstica bidireccional, es necesario para laย transferencia. Es decir, es necesaria una ruta para enlazar el pago aย travรฉsย de varias conexiones. En sรญntesis, el argumento deย Fyookballย sostiene que dado que es imposible que unย criptoactivoย estรฉ en dos lugares a la vez, pero es necesario que una transacciรณn dรฉ varios ยซsaltosยป en la red para ir de un nodo a otro, la probabilidad de que elย criptoactivoย se encuentre en un canal de pago que asegure la ruta mรกs eficiente de un punto de la red a otro, depende de cuรกntos canales estรฉnย disponibles tanto para remitente como para el destinatario.
La hipรณtesis deย Fyookballย afirma que si un remitenteย A quiere enviar un pago a un destinatario Cย a travรฉsย deย B, este tendrรญa que tener fondos disponibles para completar la transacciรณn:ย Bobย estรก haciendo un pago aย Carol, peroย Aliceย esย el remitente que envรญaย criptoactivosย a Bob,ย yย no podrรญaย hacerlo hastaย estar segura de que Bob ha pagado a Carol. Esto ocurre porque la red utilizaย timelocksย para eliminar el riesgo de custodia. De hecho, cada salto en la ruta debe tener los fondos disponiblesย para cada transacciรณn. Tรฉcnicamente el remitente le pide prestado al mediadorย para poder pagar el destinatario. Elย problema es que en una red la carga de prรฉstamos es muy grande.
Otro problema es que el enrutamiento de fondos interrumpe la distribuciรณn de los fondos y disminuye y degrada los canales de pago utilizables.ย Fyookballย escribe:
Hay una gran disparidad de riqueza en cualquier poblaciรณn. Por lo tanto, el nรบmero de usuarios que pueden encaminar fondos para cualquier otro usuario aleatorio es sรณlo una fracciรณn de la red. Y este problema se magnifica exponencialmente con un nรบmero creciente de saltos (โฆ) Para llegar a cualquier persona en una red grande con una serie de conexiones de canal de ramificaciรณn, necesitas un gran nรบmero de canales o un gran nรบmero de saltos.
Ambos son un problema enorme. Un gran nรบmero de canales significa que los usuarios tienen que dividir sus fondos y no pueden hacer nada excepto pequeรฑas compras. Y un gran nรบmero de saltos significa que el dinero de todo el mundo estarรก atado a la ruta de dineroย de todos los demรกs.
Jonald Fyookball
Analista
A modo de respuesta
Durante las pruebas que el equipo deย Lightningย Network realizรณ en laย testnet,ย comprobaron que la red podรญa enrutar hasta 2000 transacciones por segundo. Este es un claro ejemplo de cรณmo seย podrรญan sopesarย las ideas anteriormente expuestas. Explorando en la respuesta deย Fyookball, otroย analistaย esgrimiรณ que sin pruebas y observaciones, las hipรณtesis quedan en el aire.
Paraย Murch, la idea de una sola ruta de pago es extravagante: sugiere que una vez que se ha establecido una conexiรณn cualquier parte de la ruta puede establecer un camino paralelo, lo cual abre la posibilidad de que pueden haber mรบltiples combinaciones,ย que en primer lugar anulan la hipรณtesisย delย reenvรญo como una forma de prรฉstamo.
Los pagosย multisaltoย deย Lightningย Network funcionanย de tal manera que enviar un contrato al siguiente salto es equivalente a comprometerse con el contrato. Una vez que el destinatario recibe el contrato aย travรฉsย de la ruta, puede utilizar la firma adjunta para retirar el pago del รบltimo reenviador. Para obtener el pago, el destinatario negocia la firma al remitente que le permitirรก activar el pago. ยซComo cada salto tiene que adelantar el pago antes de recibirlo, estรกnย intrรญnsecamenteย motivados para ejecutar el salto siguiente tan pronto sea posibleยป, afirmaย Murch.
Esto sugiere que una vez realizados los dos saltos en los que un mediador estรก involucrado,ย en cuestiรณn de milisegundos, los saldos quedarรกn liquidados, dejando los canales de pago disponibles para realizar nuevos saltos a travรฉs deย los nodos de la red.ย Murchย escribe:
Los canales sรณlo pueden avanzar hasta el lรญmite de su propia capacidad. En conclusiรณn una ruta sรณlo puede transferir la capacidad del eslabรณn mรกs dรฉbil. Esto ocurre por quรฉย Lightningย Network se ha descrito como una soluciรณn de escalabilidad paraย micropagosย y pagos de bajo valor. Como los pagos de bajo valor son menos competitivos sobre la cadenaย pero mรกs frecuentes, esto es de hecho una gran propuesta. Los pagos mรกs grandes son mรกs econรณmicos en la cadena de todos modos, ya que los honorarios representarรกn una porciรณn relativamente mรกs pequeรฑa del valor transferido. Parece obvio que las solicitudes de pago deย Lightningย Network pronto se ampliarรกn para permitir que los pagos se dividan en mรบltiples rutas para mitigar las limitaciones de capacidad.ย
Jonald Fyookball
Analista
Diane Reynolds introdujo una variante en el debate. Utilizรณ unย modelo simuladoย de 10 millones de usuarios deย Lightningย Network para describir lo que podrรญaย ocurrir mรกsย allรก de las probabilidades y estar un poco mรกs cerca de resolver laย ย incรณgnitaย de siย Lightningย Network puede ser al mismo tiempo grande y descentralizada. Elย cรณdigo fue escrito en lenguajeย ocamlย y utilizado para la simulaciรณn de 400.000 transacciones. Noย habรญa distinciรณn entre clientes, comerciantes y mediadores (hubs). Cada usuario tiene 14 canales y estรก financiado con 0,01 BTC. Hay ademรกs 11 diferentesย polรญticasย de tarifas distribuidas uniformementeย entreย los usuarios.ย Para cada pago se utilizan usuarios al azar: uno dirige el pago a travรฉs de un canal a otro de tres maneras diferentes posibles.ย El pago puede ser ยซgrandeยป (entre 0,001 y 0,009 BTC;ย equivalente a pocos dรณlares), ยซmedianoยป (entre 0,00001 y 0,001 BTC;ย alrededor deย 2 dรณlares o menos) o ยซmicroยป (menos de 0,00001 BTC;ย alrededor de 2 centavos o menos ).
El nodo asume que tiene 0,1% de probabilidades deย no cooperar, un hecho que habรญan seรฑalado tantoย Fyookballย comoย Murchย y que introducen entre las variantes laย posibilidadย de que los canales de pagosย defectuososย arrojen errores.
Elย primer problema consiste en que cada nodo disponga de suficientes canales de pago accesibles desde cualquier otro nodo (usuario)ย con suficiente redundanciaย para que no haya centralizaciรณn.
Las pruebas con pocos usuarios mostraban poca redundancia, es decir, cada nodoย disponeย de dos canales y debeย realizarย al menos cinco saltos. La pruebas continuaron incrementando la cantidad de nodos que a su vez exigรญan mรกs cantidad de saltos para hacer viable una conexiรณn. En el momento culminante de la simulaciรณn, cada nodo (en una red de 10 millones de nodos) disponรญa de 14 canales. Dado que cada canal involucra a dos usuarios , habรญa 70 millones de canales abiertos en la red. Si suponemos que cada usuario financia cada uno de los 14 canales con 0,01 bitcoin, esto requiere que el usuario bloquee 0,14 bitcoins en todos sus canales. Con 10 millones de usuarios se requieren 1,4 millones de bitcoins para participar enย Lightningย Network.
Otras situaciones mรกs realistas podrรญan tener otros resultados, que darรญan mรกs o menos buena conectividad dependiendo del nรบmero de saltos si la poblaciรณn deย usuarios es, por ejemplo, menor. Lo interesante han sido los resultados de esta simulaciรณn: Despuรฉs de 400.000 intentos de pago, la mitad de los usuarios (5.049.576) habรญan participado en el enrutamiento de un pago y el 10% de los canales (7.091.810) habรญan sido utilizados para encaminar un pago.
En algunos casos, las solicitudes de una ruta de tiempo de espera (con un lรญmite de tiempo de 1 segundo), generaron una falla en el enrutamiento. Esto ocurriรณ en 4.500 casos (poco mรกs del 1% de los 400.000 intentos de pago). Losย pagos mรกs pequeรฑos hicieron mรกs visibles los fallos.ย Probablementeย porque los pagos mรกs pequeรฑos eran mรกs restrictivos en quรฉ rutas aceptar para evitar que los honorarios fueran demasiado altos. La tarifa mรกxima al solicitar una ruta siempre fue 0,00001BTCย (10 bits) o el 5% del valor que se transfiere, lo que sea mayor.
Estos son los nรบmeros especรญficos para los tres tipos de pagos:
133.865 ยซgrandesยป pagos (entre 0.001 y 0.009) fueron intentados. Sรณlo 8 de รฉstos fallaron. El nรบmero promedio de saltos para pagos exitosos fue de 18 y la mediana de los honorarios totales (para toda la ruta) fue de 3 bits (0.000003 BTC) o 0.06% del valor transferido.
Se intentaron 132.734 pagos medianos y 1031 (0,8%) de รฉstos fracasaron. Para los pagos exitosos, el nรบmero promedio de saltos fue de 18 y la mediana de los honorarios totales fue de 2 bits (0,000002ย btc) o el 0,5% del valor transferido.
133.401ย micropagosย fueron intentados y 3461 (2,6%) de estos fracasaron. Para los pagos exitosos, la media de saltos fue de 19 y la mediana de los honorarios totales fue de 2 bits (0,000002ย btc)ย o el 32% del valor transferido.
Aunque cada quien obtendrรก sus propias conclusiones de estos datos, es necesario aclarar que la simulaciรณn tambiรฉn destacรณ que de los 7 millones de canales utilizados, sรณlo el 4% fue exitoso, logrando realizar alrededorย de 400 mil pagos, donde al menos el 90% de esa cifra parecรญa indicar que los pagos tenรญan mรกsย valorย en uno de los lados del canal.
Esto coincide con las suposiciones deย Fyookball, pero tambiรฉn es posible que durante la implementaciรณn deย Lightningย Network, las rutas alternativas que fueron explicadas porย Murch, disminuyan el nรบmero de fallos. Por el momento habrรก que preguntarse si el 99% de รฉxito en una simulaciรณn (no tan realista) es suficiente cuando se espera que la redย tenga un alcance de billones de transacciones en periodos muy cortos de tiempo. Y si es posible, por lo tanto, que sea una opciรณn para hacer escalable la red Bitcoin.
Imagen destacada por Felix Mittermeier / pixabay.com