hard fork

O mês de novembro se aproxima e com ele vem a possibilidade de uma nova divisão (Hard Fork) na rede do Bitcoin. A proposta denominada SegWit2X tem como objetivo implementar uma alteração no tamanho máximo dos blocos de transações de bitcoin. Se implementado, os blocos poderiam ter um limite de capacidade mínimo de dois megabytes (2MB) e máximo de até oito megabytes (8MB).

No entanto, o “SegWit2x” é altamente controverso. A maioria da comunidade de desenvolvedores do Bitcoin, empresas, pools de mineração e a maioria dos usuários não estão de acordo com este hard fork. Alguns deles estão envolvidos em uma espécie de protesto, sob a bandeira “NO2X”.

Para aqueles que não estão acompanhando o debate, vou deixar abaixo uma visão geral dos principais argumentos a favor e contra a parte do hard fork – SegWit2x.

Menores taxas de transação e validações mais ágeis – 2x

Muitos dos que advogam a favor de um aumento de limite de tamanho do bloco, acreditam que uma das principais proposições de valor do Bitcoin é seu potencial caminho para micro-transações como pagamentos por produtos e serviços. Eles preferem que transações on-chain almejem o objetivo de ser mais baratas e mais rápidas do que é atualmente, e que, supostamente, é o que a maioria dos usuários quer, ainda que essas preferências não sejam verbalizadas. Os que advogam pelo SegWit2x estão dispostos a arriscar outras características que definem o Bitcoin, como uma rede resistente à censura.

Com blocos maiores, a rede Bitcoin pode suportar um número maior de transações. Isso deve reduzir o valor médio das taxas e ter as transações dos blocos validadas mais rapidamente. Ou, ao menos, tornaria mais caro enviar spam à rede  como falsas transações, portanto, um spammer precisaria enviar muito mais transações e gastar mais dinheiro para ocupar o mesmo espaço de transação. Em suma, os que advogam em favor do SegWit2x, pensam que expandir o limite dos blocos deixaria a rede mais segura, logo, atrairia novos usuários.

Por sua vez, o crescimento da comunidade beneficiaria o Bitcoin de várias maneiras. Primeiro, a taxa de câmbio do Bitcoin, frente moedas fiduciárias, poderia aumentar. Como consequência, aumentaria a receita proveniente de mineração e resultaria em mais poder de hash para proteger a rede. Em paralelo, executar Full Nodes se tornaria mais fácil e isso beneficiaria uma descentralização da rede global. Além disso, como consequência para um possível aumento da popularidade em escala Global descentralizada, se tornaria mais difícil uma proibição por parte de instituições governamentais.

Comprometimento – 2x

O acordo de Nova York surgiu no calor do debate a respeito da escalabilidade da rede do Bitcoin sob a ameaça iminente de um controverso Hard Fork conduzido pela possível implementação do protocolo alternativo chamado Bitcoin Unlimited. Este esforço foi, em grande medida, conduzido tanto por defensores de um aumento de limite de tamanho do bloco quanto por opositores da atualização do protocolo Segregated Witness (SegWit), como Bitmain e Bitcoin.com.

Essas empresas alavancaram o poder de hash das suas mineradoras para atrasar a ativação do SegWit, enquanto planejavam aumentar o limite do tamanho do bloco com um Hard Fork. Isso poderia ter “dividido” a rede Bitcoin em duas blockchains e em moedas incompatíveis.

O SegWit2x foi apresentado como um compromisso intermediário entre os dois campos opositores do debate a respeito de escalabilidade. “Um lado”, seria contemplado com o SegWit, enquanto o “outro lado” seria contemplado com o Hard Fork de aumento de capacidade dos blocos. A maioria dos signatários acreditava, pelo menos no momento do acordo, que esta solução manteria a rede Bitcoin alinhada.

O Acordo – 2x

Embora a duplicação do tamanho dos blocos provavelmente diminua o custo médio das taxas de transação e o tempo de validação dos blocos, a recente ativação do SegWit já diminuiu um pouco o tempo médio. O que pode, portanto, ser mais importante para os restantes signatários da NYA não é tanto o aumento do tamanho do bloco, mas sim o acordo por si só. Sair do acordo “a meio caminho” – após a ativação do SegWit, mas antes do Fork – seria uma violação do acordo  assinado.

No entanto, não se limitando a isso, abandonar o acordo agora poderia ser visto como uma admissão de que o SegWit não foi realmente ativado em consonância com o NYA – mas, sim, em razão do BIP 148, um Soft Fork habilitado pelo usuário (UASF, User Activated Soft Fork). Devido à natureza polêmica do BIP 148, percepção que não se restringe somente aos signatários da NYA, muitos podem estar ansiosos para evitar a percepção de que este UASF foi realizado com sucesso.

Demissão” do Bitcoin Core – 2x

Atualmente, a maioria dos usuários que executam Full Nodes escolheram usar o software Bitcoin Core, tornando esta a implementação dominante na rede Bitcoin. Alguns até consideram que a principal ”referência do usuário“ é determinante para definir o protocolo do Bitcoin.

O SegWit2x parece ser parcialmente motivado pelo desejo de remover o poder e a influência que os colaboradores do Bitcoin Core têm sobre o desenvolvimento do protocolo do Bitcoin, ao invés disso, pretende-se que a maioria das empresas e os mineradores alternem para o software de usuário BTC1. (Note-se que, neste contexto, o “Demissão” significa “deixar de usar o software mantido por esses desenvolvedores”. Porém, colaboradores do Bitcoin Core são essencialmente voluntários e não podem ser literalmente despedidos, mesmo se a maior parte do código BTC1 seja bifurcado do Bitcoin Core, ainda assim, seus desenvolvedores poderão desenvolve-los de qualquer forma.)

Os contribuidores do Bitcoin Core poderiam, claro, lançar um novo Bitcoin Core para o usuário que adote o SegWit2x para torná-lo compatível com o BTC1 e, portanto, compatível com empresas e mineradores. Na verdade, isso pode até ser o que muitos signatários da NYA esperam. Nesse caso, o BTC1 efetivamente se tornaria a nova referência para o usuário do Bitcoin, pelo menos na perspectiva de alguns desses signatários.

Outros signatários podem preferir que o time de desenvolvimento do Bitcoin Core cesse completamente suas atividades. Em alguns casos, o suporte para o Hard Fork pode até mesmo ser impulsionado pelo ressentimento em relação ao Projeto Bitcoin Core e um desejo de tomar qualquer direção para desacreditá-lo.

Mineradores o fator decisivo – 2x

Mais de 90% dos mineradores (por hash power) estão atualmente sinalizando suporte para SegWit2x. Embora esta sinalização em si seja tecnicamente sem sentido, dado que os proponentes da SegWit2x assumem que os mineradores irão seguir essa intenção declarada.

Alguns defensores do SegWit2x argumentam que os mineradores decidem o futuro do protocolo Bitcoin – ou que os mineradores deveriam decidir. Se um Hard Fork fossem resultar em duas cadeias de Blockchain incompatíveis, eles acreditam que qualquer que seja a Blockchain com mais poder de hash dedicado a isso será o Bitcoin “original”. Ou, pelo menos, eles vão sustentar que a Blockchain com o maior poder de hash dedicado a ela será o “Bitcoin” mais seguro e funcional e, portanto, o “Bitcoin” que as pessoas vão querer usar.

Compensações de segurança – NO2X

Os oponentes do SegWit2x geralmente concordam que o aumento do tamanho do bloco do Bitcoin vem com uma série de compensações.

Por um lado, blocos maiores aumentam os requisitos para operação de um Full Node, como maior uso da capacidade de banda, maior tempo de sincronização para novos nós e muito mais. Isso aumenta o custo para os usuários participarem da rede de forma confiável e, portanto, de forma perfeitamente segura. Esse aumento de custo poderia, por sua vez, ter um efeito centralizador na rede, especialmente se resultar em menos usuários executando Full Nodes.

Além disso, blocos maiores retardariam a propagação do bloco através da rede p2p (peer-to-peer), o que potencialmente beneficiaria grandes mineradores: outro efeito centralizador.

E, na verdade, pode ser bom limitar a taxa de transferência da rede até certo ponto, uma vez que isso aumenta a pressão sobre as tarifas, e que, por sua vez, oferece um incentivo para que mineradores suportem a rede à medida que as recompensas por blocos minerados diminuem ao longo do tempo.

Todos esses tipos de riscos podem, em última instância, levar a uma rede Bitcoin mais centralizada e, logo, menos resistente à censura e menos permissível. Isso às vezes é referido como o “PayPal 2.0 Risk”, onde os adversários do SegWit2x consideram que o Bitcoin perderia suas características definidoras e principais proposta de valor.

Com a ativação da Segregated Witness, cada bloco de Bitcoin teria em média quatro megabytes, ampliados de um megabyte. Alguns consideram que isso já é um compromisso bastante arriscado. SegWit2x dobraria o risco para oito megabytes, o que os opositores do SegWit2x geralmente consideram muito grande para o momento atual.

Acordos nos bastidores” – NO2X

Enquanto os detalhes apresentam aspectos obscuros (e isso faz parte do problema), o SegWit2x foi forjado entre um pequeno grupo de executivos que representavam apenas algumas empresas de Bitcoin e essa reunião foi realizada na calada da noite para um “seleto” grupo de convidados em um hotel em Nova York, organizado pela Digital Currency Group.

Depois de concordar sobre o que consideraram um compromisso entre os dois lados do debate sobre escalabilidade, eles abordaram outras empresas para aderir ao acordo. E a base de usuários agregada desses signatários foi reivindicada como estando representada pelo acordo, assim como, todo o poder de hash conectado aos pools de mineração participantes.

Indo mais além, o BTC1 possui, tecnicamente, uma ampla lista de discussão aberta sobre desenvolvimento e um canal, através do Slack, também aberto (embora no início eram fechados). Porém, não há muita discussão em nenhum desses locais. Isso quer dizer que nenhuma discussão de desenvolvimento está ocorrendo – ou mesmo não há sinal de que essas discussões estariam ocorrendo em qualquer outro ambiente.

Tudo isso contrasta radicalmente com o ethos de código aberto em que nasceu o Bitcoin e que ainda permeia o processo de desenvolvimento de Bitcoin atualmente. Os colaboradores do Bitcoin Core, por exemplo, se reúnem e discutem publicamente no IRC (Internet Relay Chat), enquanto as potenciais alterações de protocolo (BIPs) são discutidas em uma lista de correio público – ambos os canais de comunicação estão relativamente ativos.

Além disso, os oponentes do SegWit2x normalmente consideram que é uma característica fundamental do Bitcoin que os usuários estejam no controle de seu próprio dinheiro. Embora as empresas possam prestar serviços, os oponentes da SegWit2x não pensam que essas empresas devem decidir o que define o Bitcoin em nome de seus usuários e definitivamente não deve fazê-los em nome de todos os usuários do Bitcoin.

Tudo isso não é apenas uma questão de princípio: os opositores acreditam que o SegWit2x pode realmente criar um precedente ruim. Se um pequeno grupo de empresas se mostrar efetivamente no controle do protocolo Bitcoin, essas empresas poderiam se tornar uma espécie de falha no ponto central. Abrindo precedente, por exemplo, para governos exercerem pressão sobre eles para introduzir “black lists” ou outras transgressões no que consideram ser os principais recursos do Bitcoin.

Demissão” do Bitcoin Core – NO2X

Embora o Bitcoin Core seja de fato o software dominante na rede Bitcoin para o usuário, isso é apenas porque os mesmos optaram voluntariamente por executar este software – e muitos oponentes do SegWit2x estão felizes em fazê-lo. Eles não desejam “demissão” da equipe de desenvolvimento do Bitcoin Core.

Também não está claro se algum grupo de desenvolvedores pode ou irá substituir os atuais contribuidores do Bitcoin Core caso eles sejam “demitidos”. Poucas pessoas no mundo têm uma compreensão tão profunda da base de códigos do Bitcoin ou do funcionamento interno do mesmo quanto esses desenvolvedores.

BTC1, por exemplo, tem apenas um desenvolvedor que faz a maior parte do trabalho: CEO da Bloq, Jeff Garzik. Garzik tem experiência trabalhando na base de código do Bitcoin Core, mas sua principal experiência não está no código crítico de consenso da rede. Isso significa que teste e revisão do BTC1 não tem ocorrido minimamente.

E enquanto alguns defensores da SegWit2x esperam e acreditam que os desenvolvedores do Bitcoin Core vão fundir o código SegWit2x ou, de outra forma, mudar seus esforços para a versão SegWit2x do Bitcoin após o Fork, isso parece muito improvável: o projeto chegou a emitir uma rara declaração conjunta rejeitando o SegWit2x. Alegando que se o Hard Fork SegWit2x fosse um projeto bem-sucedido e o protocolo atual do Bitcoin parasse de funcionar, vários desenvolvedores do Bitcoin Core indicariam que consideram esse resultado em si uma falha do próprio sistema Bitcoin e escolheriam seguir em projeto diferente.

Por fim, nota-se que – mesmo soberano – o Bitcoin Core não é o único software que incorpora o protocolo atual do Bitcoin. Bitcoin Knots, Libbitcoin, Bcoin e uma série de outros software alternativos também o fazem. SegWit2x estaria indiscutivelmente “demitindo” não apenas Bitcoin Core, mas a maioria da comunidade de desenvolvimento.

Hard Forks – NO2X

Como não há consenso que o Hard Fork do SegWit2x é o melhor caminho a seguir, ou mesmo benéfico para comunidade, ele se torna controverso. E muitos críticos da SegWit2x se opõem a qualquer Hard Fork controverso por dois motivos principais:

  1. O primeiro motivo é filosófico: oponentes da SegWit2x pensam que a imutabilidade do Bitcoin é uma de suas principais propostas de valor. Mais especificamente, eles afirmam que as regras do sistema não devem ser alteradas em relação à vontade de um usuário: isso prejudicaria a confiança neste tipo de moeda.
  2. O segundo motivo é semelhante, mas mais técnico: as regras não devem ser alteradas contra a vontade de um usuário, como também, não podem ser alteradas em relação à vontade de um usuário. Enquanto os usuários executarem Full Nodes e não alternarem para o SegWit2x, o protocolo Bitcoin original continuará a existir. Como tal, um Hard Fork como o SegWit2x na verdade não alterará o Bitcoin existente; Em vez disso, criaria uma nova cadeia de blocos e uma nova moeda – uma divisão de moedas.

Isso também explica por que o SegWit2x não é considerado um “compromisso” pelos adversários. Para eles, o Hard Fork do SegWit2x não é um compromisso determinado pelo meio. Em vez disso, tal Hard Fork controverso é precisamente o que eles não assumem como contundente.

Hard Forks Rápidos – NO2X

Ainda que o Hard Fork não fosse controverso, os oponentes da SegWit2x o considerariam apressado. Uma vez que todos precisam atualizar suas redes para um Hard Fork ser bem sucedido – ou seja, sem ter como resultado divisão de moedas  – muitos pensam que os Hard Forks devem exigir tempo de entrega, no mínimo, entre um e dois anos, ou mesmo mais.

O SegWit2x irá ocorrer três meses após a ativação do SegWit e cerca de seis meses desde que o acordo NYA foi realizado. Os oponentes consideram isso imprudente, mesmo se o Hard Fork fosse consenso na comunidade – isso sem levar em consideração os que defendem a contenção da rede.

Falta de proteção a ataques de repetição (Replay Attacks) – NO2X

Se o SegWit2x conduzir a uma divisão de moeda – e a falta de consenso atual sugere que será – haveria duas blockchains e moedas com um histórico compartilhado: uma moeda que segue o protocolo atual do Bitcoin e uma moeda que segue o protocolo SegWit2x. Qualquer um que possua bitcoins no momento do Fork, então, será dono dessas duas moedas.

Mas isso também pode significar que a maioria das transações será igualmente válida em ambas as blockchains. Ou seja, sempre que alguém quiser enviar moedas através de uma cadeia, esta mesma transação pode ser “repetida” na outra cadeia, o que significa que uma mesma a moeda poderia ser transacionada em ambas as cadeias, mesmo que não seja intencional. Isso é conhecido como um “Replay Attack” (ataque de repetição) e pode facilmente levar a uma perda de fundos.

Os ataques de repetição podem ser prevenidos se o BTC1 implementar a “proteção de repetição”. Mas, no contexto atual, a equipe responsável pelo BTC1 não demonstra intenção de implementar tal proteção; pelo menos, não de forma a resolver o problema adequadamente.

Esta falta de “proteção de repetição” é considerada perturbadora e até mesmo imprudente, não apenas pelos adversários do Hard Fork, mas também por vários signatários da NYA: até mesmo alguns já abandonaram o acordo em razão desse motivo específico.

Confusão de “marca” – NO2X

Em paralelo a falta de “proteção de repetição”, outro grande problema no caso de uma divisão de moedas poderia ser a confusão da “marca” entre os dois tipos de moedas.

Se os usuários (e os prestadores de serviços) em ambos os lados da divisão considerarem sua moeda como o “Bitcoin real”, não é difícil imaginar como isso poderia levar a todos os tipos de complicações. Os usuários poderiam, por exemplo, comprar um tipo de moeda em uma exchange (corretora), quando a intensão seria comprar outra. Ou eles poderiam enviar um tipo de moeda para um comerciante enquanto a negociação prevía o envio de outra. E assim por diante.

Essa confusão em torno da “marca” poderia facilmente conduzir a uma perda de fundos, e talvez até a processos judiciais e problemas similares. (Mesmo com o Bitcoin Cash – que escolheu um nome um pouco novo e adicionou proteção de repetição, mas não um novo formato de endereço – há muitos casos de usuários confusos enviando bitcoins para endereços do Bitcoin Cash e vice-versa.)

Os oponentes do SegWit2x afirmam que é a moeda resultante deste Fork – a moeda que seguirá um novo protocolo – que deve escolher um novo nome. No entanto, até agora, os signatários da NYA não demonstraram vontade de fazê-lo.

Acordo fracassado – NO2X

Embora a intenção da NYA fosse manter a rede Bitcoin unida, os oponentes da SegWit2x consideram que este acordo foi essencialmente firmado em sua gênese fracassado.

A Segregated Witness foi ativada na rede Bitcoin, provavelmente em parte graças ao SegWit2x, mas também induzido pelo BIP 148 UASF. No entanto, alguns defensores de uma limitação do tamanho de bloco defenderam o Fork (assim como, oponentes do SegWit) e, em resposta, lançaram o Bitcoin Cash. Isso realizou uma “divisão” na blockchain e no Bitcoin e resultou o Bitcoin Cash, não muito diferente do que o Split Bitcoin Unlimited poderia ter efetuado. Vários signatários da NYA – incluindo a Bitmain e o Bitcoin.com – agora apoiam esse Fork e adversários do SegWit2x argumentam que anularão o objetivo original do SegWit2x.

Além disso, vários outros signatários retiraram formalmente seu apoio, seja por causa da falta de proteção de repetição acima mencionada, quanto por outros motivos.

Os adversários SegWit2x, portanto, argumentam que o acordo, para todos os efeitos, foi quebrado e que não há motivo para que os demais signatários o mantenham.

Mineradores não são o fator decisivo – NO2X

E, finalmente, os oponentes da SegWit2x acreditam que seus defensores não entendem como o consenso e os incentivos em Bitcoin funcionam.

Em vez de definir as regras do protocolo, os oponentes da SegWit2x afirmam que os mineradores precisam seguir as regras do protocolo, tal como são aplicadas pelos usuários finais e usuários de Full Nodes. Se os mineradores minerarem blocos incompatíveis com o protocolo Bitcoin conforme definido pelos usuários, esses mineiros não estariam realmente minerando o Bitcoin. Em vez disso, os “blocos” que eles produziriam seriam simplesmente rejeitados pela rede de usuários, e estes mineradores estariam extraindo uma moeda diferente ou mesmo desperdiçando seu poder de hash na pior das hipóteses.

E, novamente, isso não é apenas uma questão de princípio. Se os mineradores decidissem qual protocolo é válido simplesmente ao dedicar o poder de hash, isso implicaria que eles podem mudar regras do protocolo Bitcoin. Isso  permitiria que eles mudassem o cronograma de inflação pré-estabelecido com o objetivo de remover o limite de 21 milhões de moedas, ou mesmo roubar fundos e outros distúrbios tão graves quanto que afetariam todo o ecossistema.

Não é por acaso que o movimento de protesto NO2X se sobrepõe em muito com a iniciativa UIP do BIP 148: ambos afirmam que os usuários estão no comando. Os usuários decidem qual moeda eles querem comprar, aceitam para pagamento ou preservar em suas carteiras como reserva ou investimento. Como tal, os usuários decidem qual protocolo é (mais) valioso para dedicar o poder de hash: ou protocolo Bitcoin original ou o protocolo SegWit2x. Portanto, Este é o protocolo que os mineradores devem minerar; Não o contrário.

loading...
COMPARTILHAR

Cineasta, Jornalista e Cripto Evangelista. Acredita que o blockchain tem potencial para transformar tudo, pois, restabelece à mais profunda das necessidades humanas: a confiança.