Proposta em um white paper em 2016, a Lightning Network (LN) é uma solução de camada 2 construída sobre Bitcoin. O LN foi criado em resposta a problemas de escalabilidade com Bitcoin, nomeadamente a velocidade e o custo das transações Bitcoin.

O atual máximo teórico de transações por segundo (TPS) do Bitcoin é 10, embora na realidade esteja entre 3 e 7. Compare isso com processadores de pagamento tradicionais como VISA, que lidaram em média com 6.000 TPS em 2020 (com base na alegação da VISA de 188 bilhões de transações por segundo). ano).

As taxas de transação do Bitcoin podem variar muito dependendo da demanda atual de uso da rede. Por exemplo, em 20 de abril de 2021, as taxas médias de transação ultrapassavam US$ 50, enquanto em 9 de agosto de 2021, a média era de cerca de US$ 2,50. Para grandes transações, como transferências bancárias ou remessas internacionais, a velocidade e o custo do Bitcoin são comparáveis ​​ou superiores às alternativas. Mas se o Bitcoin for usado para pagamentos diários (as chamadas microtransações, por exemplo, uma xícara de café, gás), a velocidade da transação deverá aumentar e os custos de transação deverão diminuir drasticamente.

Rede Lightning em teoria

Para entender como funciona o LN e os desafios atuais do LN, precisamos falar sobre Bitcoin. O fator limitante da rede Bitcoin é que cada transação deve ser colocada em um novo bloco da cadeia. Como os blocos são adicionados à cadeia aproximadamente a cada 10 minutos, há um limite rígido para o número de transações possíveis sem alterar significativamente o protocolo Bitcoin.

Debates sobre grandes reformulações do protocolo Bitcoin já aconteceram antes e resultaram em ‘hard forks’, mais notavelmente a criação do Bitcoin Cash. A Lightning Network, em vez de criar um novo blockchain, é uma solução de camada 2. Isso significa que permite que o protocolo Bitcoin permaneça relativamente inalterado, mas fornece os benefícios que grandes reformulações poderiam trazer – pelo menos em teoria.

O LN funciona estabelecendo um canal de pagamento entre duas partes, onde apenas a primeira e a última transação são colocadas na blockchain do Bitcoin. Qualquer número de transações entre a primeira e a última ocorrerá fora da cadeia, o que significa que essas transações não são limitadas pelo protocolo Bitcoin.

Para iniciar um canal de pagamento, ambas as partes devem comprometer uma quantia em Bitcoin. Esse Bitcoin é retido e não pode ser liberado enquanto o canal de pagamento permanecer aberto. A quantidade total de Bitcoin que pode ser transferida através deste canal é a quantidade total de Bitcoin comprometida. Vejamos um exemplo para ilustrar isso:

Alice e Bob querem formar um canal de pagamento entre si. Alice compromete 10 BTC e Bob compromete 5 BTC no canal de pagamento. Uma transação de abertura contendo os 15 BTC combinados de Alice e Bob é colocada no blockchain Bitcoin. Depois que a transação for adicionada ao blockchain, o que pode levar 10 minutos ou mais, Alice e Bob podem transacionar um número ilimitado de vezes em velocidades muito mais rápidas e com custo efetivamente zero. Abaixo estão as transações entre Alice e Bob:

  1. Alice envia para Bob 1 BTC Alice: 9 BTC Bob: 6 BTC

  2. Alice envia para Bob 2 BTC Alice: 7 BTC Bob: 8 BTC

  3. Bob envia para Alice 3 BTC Alice: 10 BTC Bob: 5 BTC

  4. Bob envia para Alice 1 BTC Alice: 11 BTC Bob: 4 BTC

Quando um ou ambos desejam fechar o canal, uma transação de fechamento é enviada para a blockchain com os saldos finais de Alice e Bob. Neste caso, o saldo final de Alice é 11 BTC e o de Bob é 4 BTC.

E se Alice quiser fazer uma transação com Carol? Bem, acontece que Bob tem um canal de pagamento com Carol, então Alice faz transações com Bob e Bob repassa a transação para Carol. Observe que, nesse cenário, Bob pode receber um pequeno pagamento pela transferência da transação. Com o tempo, pela teoria dos seis graus de separação, o LN permite que Alice faça transações com qualquer outra pessoa.

Rede Lightning na prática

LN é um novo protocolo ainda em fase de testes. Como tal, enfrenta muitos desafios que vão desde a usabilidade até a segurança.

Existem preocupações sobre a facilidade de execução de um nó LN. Para que o LN seja bem-sucedido, é necessária uma rede robusta de nós Bitcoin executando o protocolo LN. A execução de um nó do LN pode ser bastante difícil e pode acontecer que haja problemas de incentivos de pagamento para a execução de nós menores. Pode-se argumentar que executar o LN não é muito mais difícil do que executar um nó Bitcoin completo. No entanto, como o LN é direcionado principalmente para microtransações, a experiência diária com o LN será por meio de carteiras habilitadas para LN. As carteiras habilitadas para LN não são muito fáceis de usar, e a maioria dessas carteiras alerta que, como ainda estão em fase de testes públicos, é aconselhável não depositar muitos fundos. Ao contrário de algumas das carteiras Bitcoin mais estabelecidas, a novidade dessas carteiras habilitadas para LN significa que há compensações entre as versões com e sem custódia. As carteiras LN sem custódia são um pouco difíceis de usar – mais confusas, menos diretas. As opções de custódia são mais fáceis de usar, mas você deve confiar em terceiros com seu Bitcoin.

Por último, e mais preocupante, o LN tem enfrentado uma série de vulnerabilidades. Esses incluem:

  • Ataques de luto: os fundos não são perdidos, mas fazem com que os fundos Lightning da vítima sejam congelados para que o canal de pagamento não possa processar nenhuma transação.

  • Inundação e saque: um invasor força muitas vítimas a reivindicar seus fundos do blockchain ao mesmo tempo (inundação). O invasor usa esse congestionamento para roubar fundos que não puderam ser reivindicados antes do prazo (loot).

  • Ataques de dilatação do tempo: um invasor prolonga o tempo que a vítima toma conhecimento de novos bloqueios, atrasando a entrega do bloco.

  • Ataques de fixação: um invasor engana a vítima para que feche seu canal LN indevidamente e rouba transações individuais.