Hechos clave:
-
Una transacción de gran tamaño, con más de 500 mil «firmas», fue la causante del colapso.
-
La transacción fue efectuada deliberadamente para probar la resistencia de la red.
En menos de un mes, la red Lightning de Bitcoin volvió a sufrir un colapso que llevó a los nodos que utilizan el cliente LND (Lightning Network Daemon) a desincronizarse, lo que limitó la apertura o cierre de canales de pago. A pesar de la falla, la red continuó en enrutando pagos sin mayores contratiempos.
El pasado 10 de octubre, tal como CriptoNoticias dio a conocer, una transacción de cerca de 1.000 firmas provocó que la red sufriera interrupciones. Como corrección, se estableció un nuevo valor en el código, especÃficamente en el maxWitnessItemPerInput (que recoge el número de firmas máximas) a 500.000.
Sin embargo, horas atrás, un usuario —de forma deliberada y como prueba de resistencia— creó una transacción que simulaba tener 500.001 «firmas», lo que hizo que los clientes LND se vieran colapsados.
Cabe acotar que crear una transacción de tal tamaño fue gracias a Taproot, una de las actualizaciones más recientes e importantes que ha recibido Bitcoin. En esta red, solo se puede utilizar un máximo de 1.000 firmas por transacción. Sin embargo, con Taproot, se pueden simular transacciones con una mayor cantidad de firmas (en este caso vacÃas) como se observa en los detalles de la transacción.
LND es el cliente de nodos más utilizado en la red Lightning. Incluso los nodos con mayor capacidad y que mayor cantidad de pagos enrutan diariamente trabajan utilizando este cliente. Por lo que la falla fue bastante significativa dentro de la red.
El atacante propone una solución
El usuario que creó la transacción, y quien se identificó bajo el pseudónimo de brqgoo en GitHub, sugiere que el valor maxWitnessItemPerInput debe ser modificado a 4.000.000. Él considera que esto podrÃa resolver el problema.
Posteriormente a la sugerencia, el equipo de desarrollo de LND lanzó una nueva versión del cliente (v 0.15.4) que resuelve dicho problema y recomendó actualizar todos los nodos de forma inmediata.
El desarrollador Rene Pickhardt comunicó que el equipo de desarrollo de LND estaba al tanto de este vector de ataque, tomando en cuenta que hace menos de un mes ocurrió la primera gran interrupción. Pickhardt, explicó que, por parte del equipo de desarrollo, ya se habÃa sugerido el cambio en el maxWitnessItemPerInput a 4.000.000, tal como lo sugirió posteriormente brqgoo.
Por el momento, mientras la red está en proceso de actualización, los servicios para crear y cerrar canales de pago se han suspendido en algunas wallets y plataformas.