Aprovechamiento de Lightning para transacciones instantáneas de Bitcoin: un tutorial

Un texto rápido y un video tutorial

Actualización: Recibí comentarios muy apreciados de la comunidad para resaltar este importante mensaje de manera más destacada en la publicación:

Antes de comenzar, tenga en cuenta que este software es experimental y podría contener errores que provoquen la pérdida de fondos. Utilice solo pequeñas cantidades de bitcoins que pueda permitirse perder.

Bitcoin es una red de pago descentralizada de igual a igual que se utiliza en todo el planeta para realizar transacciones sin confianza. El sistema permite transacciones sin confianza al requerir que los mineros incluyan transacciones en bloques, que están vinculados entre sí de forma criptográfica. Sin embargo, esto significa que las confirmaciones de transacciones llevan tiempo y no todo el mundo tiene el lujo del tiempo. La respuesta a este inconveniente son los canales de pago, que Satoshi Nakamoto describió como una forma de permitir “transacciones de alta frecuencia” entre socios de canal, en lugar de esperar aproximadamente 10 minutos para una confirmación. Lightning toma esta idea y la implementa a gran escala. En lugar de solo poder pagarle a su socio de canal, puede pagar instantáneamente a cualquier persona en Lightning Network, que es una red de canales de pago.

Recientemente, Blockstream lanzó una página de compras de comercio electrónico llamada Blockstream Store, que utiliza su complemento de comercio electrónico WordPress recientemente lanzado creado con Lightning Charge. La parte más emocionante es que solo puede comprar cosas en Blockstream Store con un pago de Lightning Network en la red principal de Bitcoin. Este es un tutorial sobre cómo configurar su propio nodo Lightning para comprar artículos o recibir pagos Lightning usando c-lightning , la implementación Lightning de Blockstream.

Requisitos:

Paso 0: instalar herramientas de compilación y dependencias

Nuestro primer paso es instalar, a través de apt , las herramientas necesarias:

sudo apt-get install -y autoconf automake build-essential git libtool libgmp-dev libsqlite3-dev python python3 net-tools tmux

Paso 1: Instalar bitcoind desde Bitcoin PPA

Cree bitcoind desde la fuente, descargue y verifique el binario de bitcoin.org (método preferido), o instale desde Bitcoin PPA:

sudo apt-get install software-properties-common
sudo add-apt-repository ppa: bitcoin / bitcoin
sudo apt-get update
sudo apt-get install -y bitcoind

Paso 2: Clonación del repositorio Lightningd y construcción:

Ahora tome el código c-lightning y luego compílelo:

mkdir crea & amp; & amp; compilaciones de cd

clon de git https://github.com/ElementsProject/lightning.git

cd lightning

make

Utilice make -jn para acelerar la compilación. n es el número de subprocesos dedicados a la construcción. Ejemplo: make -j10 para un procesador con 10 o más subprocesos (como un Xeon).

Paso 3: Ejecuta bitcoind, lightningd y lightning-cli para confirmar la instalación correcta

Inicie bitcoind , luego lightningd , luego lightning-cli para confirmar que todo está instalado correctamente:

Haga que este proceso sea más limpio usando tmux para mantener todo limpio y ordenado en una terminal:

tmux

Inicie bitcoind , y observe su inicio desde el registro, luego pruébelo con bitcoin-cli :

bitcoind

tail -f ~ / .bitcoin / debug.log

bitcoin-cli -getinfo

Del mismo modo, inicie lightningd y pruébelo con lightning-cli :

./lightningd/lightningd --network bitcoin - depuración a nivel de registro

./cli/lightning-cli help

Paso 4: Conexión a un par de relámpagos remoto

Después de que lightningd y lightning-cli se compilen correctamente, conéctese a un par y sincronice el gráfico del canal. El par utilizado es Blockstream:

El gráfico se sincroniza automáticamente ( lightningd salida de registro):

Paso 5: creación de una dirección para financiar con el fin de abrir un canal:

La apertura de un canal de pago Lightning requiere una UTXO financiada. Genere una dirección de Bitcoin con lightning-cli para enviar bitcoins.

./cli/lightning-cli newaddr

Envía bitcoins a esa dirección, pero ten en cuenta que se trata de un software experimental.

Paso 6: Confirmación de que hemos recibido el BTC

Utilice lightning-cli para comprobar si la dirección está financiada:

./cli/lightning-cli listfunds

Paso 7: abrir un canal con el par al que nos conectamos anteriormente

Para abrir un canal de pago, busque la clave pública o ID del nodo (en este caso, Blockstream) y luego use lightning-cli para iniciar la apertura del canal:

Para imprimir el ID de nodo del par:

./cli/lightning-cli listpeers

Copia esa identificación y financia el canal con una cantidad de satoshis:

Paso 8: Supervisión de registros relámpago para confirmaciones de transacciones de financiación:

Opcionalmente, vuelva a la ventana lightningd con tmux para ver si se confirma la transacción de financiación:

Paso 9: Confirmando que hemos abierto un canal:

Se requieren tres confirmaciones para abrir un canal. Una vez que la transacción de financiamiento tenga tres confirmaciones, use lightning-cli para enumerar nuestro nuevo canal de pago.

./cli/lightning-cli listchannels | grep your_nodes_pubkey

¡Felicidades! ¡Ha abierto su primer canal de pago de Lightning Network!

¡Ahora puede facturar a otros para recibir pagos instantáneos, o puede pagar una factura que alguien le envió!

./cli/lightning-cli factura amount_in_millisatoshis etiqueta descripción

o

./cli/lightning-cli pay bolt11_string

La documentación de instalación de c-lightning & # x27; se puede encontrar aquí y aquí.

¡Gracias por leer!

-grubles