Problema de escala de Bitcoin, Explicado

  • MAR 02, 2017
Problema de escala de Bitcoin, Explicado
1.
Existe um problema de escala no Bitcoin?

Sim. Não foi resolvido por um tempo e está piorando com o tempo.

Bitcoin é executado no software criado por um programador ou um grupo de programadores conhecidos como Satoshi Nakamoto em 2007-09. Apesar das muitas melhorias, que foram feitas pelos desenvolvedores contribuintes ao longo da existência da Bitcoin, a base do código ainda é bastante semelhante ao que foi 8 anos atrás e algumas das limitações ainda estão lá.

O problema é que a paisagem atual do ecosistema Bitcoin é muito diferente do que costumava estar de volta no início da crypto moeda corrente. O número de pessoas envolvidas aumentou de algumas dezenas de entusiastas apaixonados para mais de 10 milhões de usuários diários.

A crescente base de usuários é acompanhada por um número aumentando de transações diárias, que agora são contadas por centenas de milhares. A desafortunada realidade é que o network Bitcoin, em seu estado atual, é incapaz de processar todas estas transações rapidamente.

2.
Por que o Bitcoin não é capaz de lidar com todas as transações?

O problema reside em um parâmetro específico chamado "limite de tamanho de bloco". O limite atual é insuficiente para a intensidade de transação cada vez maior.

Primeiramente, uma introdução muito rápida e básica a como o Bitcoin funciona para quem não conhece. Todas as transações que já ocorreram no network Bitcoin ou serão realizadas, são registradas em um livro público e imutável chamado "Blockchain".

Como segue do seu nome, o Blockchain é uma sequência de blocos. Cada bloco é uma coleção crypto moeda correntemente fechada de todas as transações que aconteceram no network durante últimos dez minutos. Cada novo bloco é adicionado ao final do Blockchain para que cada usuário sempre possa verificar se cada transação específica ocorreu.

Em 2010, Nakamoto introduziu um limite de tamanho de bloco de 1mb, o que significa que blocos do tamanho de 1 megabyte seriam automaticamente rejeitados por network como inválidos. Esta foi uma medida de segurança, projetada para evitar potenciais ataques DoS por hackers criando blocos de tamanho enorme ou mesmo infinito e transmitindo-os por network para paralisá-lo.

Esta decisão teve um efeito adverso a longo prazo sobre a capacidade de transação de network.

Cada transação consiste em dados importantes: o remetente, o destinatário, a quantidade de Bitcoins em transferência etc. Este dado leva algum espaço, o que é bastante insignificante quando se fala da única transação. Mas acrescenta-se quando há centenas de transações ocorrendo a cada minuto.

ocorrendo a cada minuto.O limite de tamanho atual de um megabyte por bloco pode realisticamente suportar três a sete transações Bitcoin por segundo. O problema aqui é que, para o network, as proporções atuais já não são suficientes. E está ficando cada vez pior à medida que a base de usuários continua crescendo.

3.
Quais são os resultados do limite de tamanho de bloco insuficiente?

Primeiramente, o aumento nos tempos e taxas médias de transações. Bitcoin está se transformando em um análogo funcional de transferência de taxa.

Em um dia regular, network Bitcoin ainda é capaz de operar normal. Contudo, às vezes consegue atingir picos de carga (peak loads) e é quando as coisas ficam difíceis. Muitos usuários relataram tempos de espera de várias horas ou mesmo dias em suas transações.

Além disso, a velocidade com que os mineiros Bitcoin são susceptíveis de processar qualquer transação particular depende diretamente do tamanho da taxa dos mineiros, definida pelo remetente para cada transação. Isto cria um mercado de taxas de transação: para que suas transferências sejam processadas mais rapidamente, os usuários devem competir uns com os outros, estabelecendo taxas cada vez maiores.

Nos primeiros dias, as comissões foram medidas em mera fração de um centavo. Hoje se você quiser mandar as moedas rapidamente, terá que pagar uma taxa no valor de vários centavos ou mesmo dólares.

Tanto os tempos de transação quanto os tamanhos de tarifas aumentaram gradualmente nos últimos meses, tornando Bitcoin mais parecido com uma contrapartida funcional para transferências bancárias. Isto é uma ameaça existencial para a crypto moeda corrente: se temos uma alternativa mais popular e generalizada para o Bitcoin, por que mesmo usá-lo?

4.
Existe qualquer solução para o problema da escala?

Houve muitas maneiras propostas de resolvê-lo, nenhum dos quais foi realizado.

O problema da escala está sob escrutínio por muito tempo. As duas primeiras tentativas sérias de corrigi-lo foram BIP 100 e BIP 101, onde BIP significa Bitcoin Melhoria Proposal. Foram introduzidos em 2015 pelos desenvolvedores do núcleo Bitcoin, Jeff Garzik e Gavin Andresen, respectivamente.

Ambos foram destinados a aumentar o limite de tamanho de bloco e as duas eram soluções de hard-fork, o que significa que, se implementassem, versões mais velhas do software Bitcoin se tornariam incompatíveis com o novo network. A diferença era que o BIP 100 era fazer o limite do tamanho do bloco ajustável pela decisão dos mineiros, enquanto o BIP 101 era um aumento direto de uma única vez de 1mb para 8mb.

In regards to which proposal should be implemented, there were heated debates throughout the Bitcoin community for the most part of 2015. Still, it proved fruitless. Neither BIP 100 nor BIP 101 have been realized in any noticeable way in the network today.

Em relação a qual proposta deve ser implementada, houve debates acalorados em toda a comunidade de Bitcoin na maior parte de 2015. Ainda assim, ele se mostrou infrutífero. Não o BIP 100 nem o BIP 101 foram realizados de forma notável no network hoje. A história parece repetir-se e hoje existem novamente duas soluções diferentes que competem para aprovação pela comunidade: Bitcoin Unlimited e SegWit. O problema da capacidade insuficiente de Bitcoin é agora muito mais crítico do que costumava estar de volta em 2015, e ainda assim, não há líder claro na competição aquecida e altamente politizada entre as duas propostas.

5.
Como a BU e a SegWit propõem escalar o Bitcoin?

O Bitcoin Unlimited visa eliminar o limite de tamanho de bloco, permitindo que os mineiros alcancem um consenso por conta própria. O SegWit oferece um aumento moderado do tamanho do bloco para até 4 megabytes movendo alguns dados não críticos para fora dos blocos.

Bitcoin Unlimited é uma evolução direta das tentativas anteriores infrutadas para resolver o debate em tamanho de bloco. Vendo como as idéias de aumentar o limite, ou tornando-o incrementalmente ajustável, não conseguiram obter suporte suficiente, a BU deve abolir completamente o limite. Faz com que os mineiros possam criar blocos de tamanhos arbitrários e transmiti-los por network, competindo uns com os outros por um lugar no Blockchain.

O SegWit oferece outra solução. Foi criado originalmente para corrigir um problema não relacionado - maleabilidade de transações. Para colocá-lo em breve, livrando da maleabilidade das transações exigiu mover alguns dados não críticos, chamados de "dados de testemunho", de transações e fora do Blockchain.

Isto permite um aumento nos tamanhos de bloco de até 4MB, embora a maioria dos especialistas próximos do processo de desenvolvimento diga que o network provavelmente se instalará em cerca de 2MB de blocos depois que SegWit for iniciado.

Há também outra forma de SegWit poder aumentar a capacidade de transação, embora não diretamente. A correção da maleabilidade das transações torna network Bitcoin seguro o suficiente para criar soluções off-the-Blockchain em cima dele, como a Lightning Network, por exemplo. Poderia tornar as transações do Bitcoin muito mais baratas e rápidas.

6.
Por que BU não foi implementado até agora?

Enfrenta grande oposição, o principal argumento é que a BU tornaria o Bitcoin mais centralizado.

SAlgumas pessoas esperam a abolição do limite de tamanho de bloco proposto pelo Bitcoin Unlimited para levar a bloqueio descontrolado do Blockchain. Atualmente, o tamanho de todo o Blockchain ultrapassa os 100 gigabytes e isto acontece com três a sete transações por segundo. Compare isto com o limite da Visa de 24 mil transações por segundo ae entenderá o problema aqui.

Foi calculado que, se o limite de tamanho do bloco fosse aumentado ao ponto suficiente para um público global, o Blockchain poderia crescer até vários petabytes, se não mais.

Isso levaria a uma maior centralização do Bitcoin; apenas as grandes empresas poderiam pagar o espaço de armazenamento, o poder de computação e a largura de banda necessários para processar quantidades tão grandes de dados, eliminando os operadores de nó de pequena escala de network. Isto é contrário à própria idéia de Bitcoin como o dinheiro governado por cada um dos seus usuários.

7.
Por que o SegWit não tem?

O mesmo que acima, principalmente.

O SegWit também não é uma solução perfeitamente descentralizada. Aumenta a capacidade do bloco em cerca de 2 megabytes no curto prazo, e até 4 megabytes em geral. Dependendo da velocidade futura do crescimento de network, pode ser suficiente por vários anos ou mesmo décadas.

Contudo, mais cedo ou mais tarde, o limite será alcançado de novo, e a capacidade terá que ser aumentada. O valor de longo prazo da SegWit reside na correção do erro (bug) de maleabilidade de transações. Isto faz posibilidade de aumentar a taxa de transferência de network executando soluções sidechain, como o Lightning Network e a centralização.

Lightning Network pode ser descrito grosseiramente como um sistema de liquidação mútua construído em cima do Blockchain. Primeiramente, os Bitcoins de múltiplos usuários são depositados em um canal de pagamento separado através de uma transação Bitcoin regular, que demora cerca de 10 minutos para confirmar, ou mais, dependendo do congestionamento de network. Depois disso, todos os pagamentos dentro deste canal de pagamento são conduzidos fora do Blockchain e são processados instantaneamente e muito baratos, ou gratuitamente - por um terceiro confiável.

No momento em que todos os membros de um canal de pagamento concordam com a distribuição final dos Bitcoins, podem enviar o saldo líquido de volta ao Blockchain, permitindo que o network Bitcoin confirme a validade de todas as transações.

O problema aqui é que, para muitos membros da comunidade de crypto moeda corrente, não há distinção real entre "um sistema de liquidação mútua mantido por um terceiro confiável" e bancos, que são pontos centrais de autoridade que Bitcoin deveria tornar obsoleto.

8.
Esta crise vai resolver-se em breve?

A Bitcoin está se tornando menos útil todos os dias - para um ecosistema no valor de mais de EU $ 17 bilhões, essa não é uma situação que pode continuar por muito tempo. Deve ser resolvido em breve.

Ambos os lados do confronto SegWit vs BU têm argumentos que descrevem a outra solução como aparentemente irreconciliável com os valores centrais de Bitcoin.

O conflito não tem apenas uma base tecnológica, mas também política. Ambas as facções afirmam que o outro está tentando evitar o crescimento de Bitcoin ou controlá-lo. Há também teorias em torno de que insistem que o lado oposto está travando uma guerra de informações, secretamente financiada por grande dinheiro (Blockstream para SegWit e Roger Ver para BU). Ambos os lados teriam você a acreditar que sua história é a "mais verdadeira".

Olhando para os números difíceis, toda a situação parece ter uma chance para um impasse. A decisão final será tomada pela maioria dos mineiros de network Bitcoin. No momento, a distribuição de seu suporte não indica um líder claro. SegWit parece ser o favorito na corrida, mas o Bitcoin Unlimited conseguiu assumir várias vezes no passado.

No momento, há uma grande parte de network - um pouco menos de 50% - o que não expressou suporte explícito para nenhuma das propostas. É possível que a perspectiva final venha a eles para tomar um lado. Contudo, podem permanecer em silêncio até que as soluções concorrentes solucionem sua disputa.

9.
E se ninguém recuar e o impasse persiste?

Se nenhum lado tiver uma liderança decisiva, existe a possibilidade de chegar a um compromisso.

Existe uma terceira via, o que não é impossível e que potencialmente pode ser o mais benéfico para o network. Um aumento de limite de tamanho de bloco e a implementação do SegWit não são mutuamente exclusivos por padrão, e há um sentimento crescente na comunidade de que um compromisso entre as duas soluções pode ser um caminho a seguir.

Na verdade, um acordo de compromisso já foi alcançado, pelo menos uma vez. Houve uma mesa-redonda realizada em fevereiro de 2016 em Hong Kong com representantes do Bitcoin Core, os autores de SegWit e várias grandes empresas de mineração, a maioria das quais queria um aumento de tamanho de bloco. Ambos os lados pareciam ter chegado a um acordo - para avançar com SegWit, e implementar um modesto aumento para o limite de tamanho de bloco, 2mb, ao mesmo tempo.

Infelizmente, o acordo de Hong Kong não foi seguido com - os desenvolvedores do Bitcoin Core não adicionaram um aumento de tamanho de bloco à última versão do SegWit, e os mineiros se negaram a adotá-lo.

Mas a prática mostrou que um consenso entre os lados conflitantes é possível e existe uma solução que possa satisfazer todos. Ainda há esperança de que o confronto político dê lugar à cooperação, e veremos que o Bitcoin cresce mais poderoso do que nunca.

UPDATE: este artigo foi atualizado para corrigir uma declaração errada de que SegWit não aumentou o limite de tamanho de bloco diretamente.