quinta-feira, 10 de setembro de 2020

O que é Lightning Network e como usar?

As primeiras respostas que Satoshi Nakamoto recebeu ao enviar o whitepaper do Bitcoin na lista de e-mails de criptografia já apontam para um fato repetido diversas vezes nos 11 anos do protocolo: O Bitcoin não é escalável.

Não foi um descuido de Satoshi. O desenho do protocolo precisava dessa “ineficiência” para atingir a descentralização necessária, sem ponto central de ataque e sem gasto duplo. 

O problema da escalabilidade

As pessoas ainda se perguntam como pagar um café com Bitcoin. Por isso, diversas sugestões de escalabilidade foram feitas por contribuidores no decorrer dos anos, incluindo o aumento do tamanho limite do bloco no Blockchain. O longo debate sobre o tamanho do bloco foi o motivo do dissenso que causou o fork do Bitcoin Cash.

Alguns desenvolvedores trabalhavam em formas de escalar o Bitcoin, sem a necessidade de criar uma outra criptomoeda. Enquanto isso, surgiam diversas altcoins, alternativas ao Bitcoin, prometendo resolver o problema da escalabilidade. 

Os primórdios da Lighting Network

A ideia de canais de pagamento remonta ao primeiro código escrito por Satoshi Nakamoto. Tratava-se de um canal em que duas pessoas poderiam atualizar seus saldos e transacionar Bitcoins entre si sem realizar uma transação na Blockchain. 

Ao fechar o canal entre elas, devem transmitir uma transação com o resultado final das diversas trocas. Esse conceito evoluiu com o tempo e passou a ser usado na concepção do que seria uma rede de pagamentos. Finalmente, no início de 2015, Thaddeus Dryja e Joseph Poon publicam o whitepaper da Lightning Network.

Como funciona a Lightning Network?

A Lightning Network é uma solução de escalabilidade de segunda camada, onde as transações acontecem em outra rede, com seus próprios nós (nodes) e software. 

Estas transações não são publicadas na Blockchain do Bitcoin. São necessárias transações na rede Bitcoin apenas para abrir e fechar o canal entre os usuários.

De forma simples, a abertura destes canais é um contrato inteligente entre duas pessoas, e ambas depositam uma quantia em Bitcoin em uma espécie de “cofre”. Estes fundos ficarão disponíveis para trocas no canal. 

Essas duas pessoas vão manter cópias de um registro de todas as vezes em que enviarem Bitcoin uma para outra via Lightning Network, e esse registro é assinado por ambas. 

Como é encerrado um canal?

A qualquer momento uma das partes pode decidir fazer uma nova transação no blockchain (on-chain) para fechar o canal, publicando a última versão do balanço. Após os mineradores validarem as assinaturas, os fundos vão ser liberados de acordo com o estado final das transações na Lightning Network.

Não é necessário abrir um canal com cada pessoa com quem se deseje transacionar. Ao abrir canais com alguns nós (nodes) bem conectados, estes podem rotear suas transações até chegar na pessoa para quem você deseja enviar Bitcoin.

Como usar a Lightning Network?

Node da Lightining em um Raspberry Pi

Parece muito complicado? Para usar a rede, basta fazer o download e rodar um nó (node) de Bitcoin, além de uma das implementações da Lighting Network. Depois disso, é só começar a abrir canais com os nós (nodes) bem conectados. No site Y’alls é possível encontrar uma lista de bons nós (nodes).

No entanto, esse caminho pode soar complicado para muitos que só gostariam de experimentar a rede. Nesse caso, as carteiras mobile (apps) podem ser as melhores opções.

Bluewallet (iOS) e Wallet of Satoshi (Android e iOS) são soluções custodiantes. Isto significa que eles lidam com a parte complicada, e oferecem uma interface amigável. Existem também opções não-custodiantes como a Breez (iOS e Android), e a Phoenix (Android), para aqueles que preferem estar no controle total de seus fundos.

Para que serve a Lightning Network?

A Lightning Network, embora promissora, está ainda em um estágio inicial, portanto a maioria dos usos são bastante experimentais. A maior parte de seus usuários é composta de desenvolvedores e entusiastas.

No entanto, já existem diversos casos de uso interessantes sendo explorados. Pode ser divertido, e educativo, conhecer alguns. 

O que tem gerado maior empolgação são as experiências com jogos eletrônicos usando transações na rede Lightning. Um exemplo é o Bitcoin Bounce da Thundr Games, que premia diariamente usuários com satoshis, que podem ser retirados via Lightning. 

Outro caso de uso é o de micropagamentos para o acesso a conteúdos, uma espécie de paywall usando Lightning. Isto poderia ser usado como gorjeta para os produtores de conteúdos, ou reconhecimento por publicações em redes sociais. Lembra da Y’alls que falamos acima? É um desses casos de premiação. 

Estamos dando os primeiros passos em direção ao futuro da internet do dinheiro, somos todos pioneiros (early adopters).

O post O que é Lightning Network e como usar? apareceu primeiro em Blog da BitcoinTrade.