¿Cómo puede el software de billetera implementar la gestión automática de canales para Lightning Network?

Si estoy creando una billetera Bitcoin de escritorio compatible con Lightning y no quiero que el usuario tenga que preocuparse por la administración de canales, ¿cuál es la forma de lograrlo?

He visto las soluciones de piloto automático para lnd y c-lightning.

Actualmente estoy experimentando lndporque es fácil de compilar para Windows, macOS y Linux. Pero el piloto automático de lnd no parece estar lo suficientemente maduro. Y no está bien documentado. Entonces, no sé si debería intentar usarlo.

En cuanto a c-lightning, ¿qué tan bien funciona su piloto automático? Bueno, de todos modos, debido a que c-lightning está en C y su piloto automático está en Python, será un trabajo pesado para mí incluirlos en mi aplicación.

Así que me pregunto si podría haber una solución temporal simple. Por ejemplo, ¿qué pasa si codifico una lista de nodos populares y hago que la aplicación se conecte a ellos? Funcionaría eso?

Respuestas (1)

Recomiendo encarecidamente una lista fija de nodos. Esto eventualmente podría quedar obsoleto. Una mejor solución podría ser que ejecute el piloto automático en un servidor y entregue los resultados al usuario a través de una API. Esto, por supuesto, sería una solución confiable. Pero el lib_autopilot.py que habilita el complemento de piloto automático clightning es una biblioteca independiente que se puede envolver fácilmente en un servidor web pequeño (o cualquier aplicación del lado del servidor) en lugar de usarse como un complemento de clightning en el lado del cliente. También permite mucha más configuración y ajuste que el complemento clightning.

Ejecutarlo como un servidor podría tener sentido, ya que los cálculos necesarios para preparar el piloto automático son bastante pesados ​​y consumen mucha memoria y podrían no ser tan buenos con una red Lightning más grande en la máquina de un cliente. Además, una vez que se realizan esos cálculos, los resultados se pueden usar para ejecutar el piloto automático varias veces a un costo bastante bajo, lo que lo convierte en el candidato perfecto para una aplicación del lado del servidor.

Dicho esto, los pilotos automáticos son características experimentales. Siendo el autor de lib_autopilot.py, estoy feliz de que esté de acuerdo en que la solución c Lightning podría ser más madura que la versión lnd. Pero también quiero enfatizar con mi mayor conocimiento sobre la búsqueda de rutas y rutas que tengo ahora en comparación con hace un año, crearía un piloto automático muy diferente en estos días.

Editar: lamento que hayas preguntado cómo funciona el piloto automático c Lightning. Hay una presentación que lo compara con lnd https://youtu.be/N7rlHCnaBf8 y explica algunos de los desafíos. Nuevamente, tiene un año, por lo que ha cambiado un poco sobre lo que se debe decir sobre los pilotos automáticos, pero de todos modos es un buen comienzo.