Blockchain é uma tecnologia ruim?

Tecnologia

Publicamos um artigo chamado Seis mitos sobre blockchain e Bitcoin: desmistificando a efetividade da tecnologia. Agora, abordaremos como resolver os problemas apontados de modo a tornar a blockchain ainda melhor.
Antes de começar, é importante lembrarmos que blockchain e Bitcoin não são a mesma coisa. A tecnologia Bitcoin combina diversas tecnologias: princípios de transferência de dinheiro, de criptografia,  a blockchain em si, o conceito de consenso, prova de trabalho, redes ponto-a-ponto, motivação de participação, árvores de Merkel para a organização de transações, além de princípios de transparência, hashing, entre outros.

Portanto, os problemas do blockchain resultantes da forma utilizada pela Bitcoin não são universais, o que possibilita funcionamentos distintos para outras criptomoedas. Por outro lado, o mercado está dominado por blockchains similares ao da Bitcoin, baseados em prova-de-trabalho (PoW na sigla em inglês).

Problema: Blockchain é lento e ineficiente

Bitcoin’s throughput is seven transactions per second, not for each participant, but for the whole network. And for Ethereum, the second-best in terms of capitalization, it is 15 simple money transfers and 3–5 smart contracts per second.

O desempenho das Bitcoins é de sete transações por segundo. Esse valor não se refere a cada participante, e sim à rede inteira. A Etherum, segunda melhor em termos de capitalização, faz 15 transferências monetárias e de 3 a 5 contratos inteligentes por segundo.

O princípio PoW aceito pela maioria das moedas garante que o consumo de eletricidade e de poder de processamento crescerá de modo a tornar o mining não lucrativo. Contudo, o crescimento das despesas gerais nunca garante a melhoria da qualidade do serviço – sempre serão sete transações por segundo, não importa o número de miners ou de eletricidade gasta.

A rede relâmpago

Não é de hoje que especialistas se preocupam com a velocidade das transações no sistema Bitcoin. Como forma de acelerar o processo, inventaram a Lightning Network (Rede Relâmpago em tradução livre).

Funciona assim, ou funcionará quando lançada: primeiro, certos participantes que possam vir a precisar de transações mais rápidas estabelecem um canal separado – como uma sala de chat privada – e, como garantia de integridade, fazem um depósito na rede principal da Bitcoin. A partir daí, começam a realizar pagamentos separadamente do resto da rede – a qualquer velocidade. Quando o canal separado não é mais necessário, os envolvidos registram os resultados da interação em uma blockchain pública. Desde que ninguém tenha quebrado alguma regra, o depósito é devolvido.

Previsões mais otimistas falam do lançamento da Lightning Network ainda esse ano, o que viabilizaria milhões de transações por segundo.

Problema: Blockchain é pesada

A blockchain é volumosa, mas isso parou de ser um problema depois que a rede ganhou notoriedade. Na verdade, você não tem que baixar e verificar tudo para acreditar que as chances de trapaças são muito baixas.

Carteiras web

Em primeiro lugar, os serviços de carteira digital existentes armazenam tudo e fazem todo o trabalho duro por você. Se ninguém reclama, é sinal de que o serviço é confiável.

Há ainda mais uma vantagem importante em comparação a sistemas de pagamento tradicionais. Se um serviço de carteira digital encerra suas atividades, você pode simplesmente mudar para outro, pelo fato de possuírem os mesmos registros de transação, em vista de a blockchain ser única. Compare esse cenário com seu banco encontrando algum erro ou mesmo indo à falência e você a mercê de achar outro.

Carteiras leves

Satoshi descreveu um método mais avançado (e confiável) ainda em 2008. Em vez de processar e armazenar a blockchain de 100GB, você baixaria e verificaria apenas seu cabeçalho e os comprovantes de transações corretas que estejam conectados diretamente a você.

Caso diversos nós da rede reportem que os blocos iniciais são exatamente os mesmos, é seguro pensar que tudo está correto.

Até o momento, os blocos iniciais de todos os existentes chegam a casa dos 40MB. Contudo, você pode economizar ainda mais: não é necessário armazenar os cabeçalhos de todas as transações já ocorridas, seria suficiente começar com um momento específico.

Problema: Blockchain não é escalável

A escalabilidade de um sistema é sua habilidade de melhorar com recursos adicionais. A blockchain clássica é inescalável; o aumento de insumos não afeta a velocidade das transações.

É interessante que a blockchain clássica não é escalável nem para mais nem para menos: se você constrói um sistema pequeno voltado a resolução de problemas locais baseado nos mesmos princípios, esse estaria vulnerável ao ataque 51% – qualquer um com potência computacional suficiente poderia imediatamente tomar o controle e alterar o histórico.

Plasma

Joseph Poon (o inventor da rede relâmpago) e Vitalik Buterin (cofundador da Ethereum) propuseram recentemente uma nova solução, a Plasma.

Ela consiste em uma estrutura para criar uma blockchain de blockchains. O conceito é similar ao da Lightning Network, mas foi desenvolvido pela Ethereum. Funciona da seguinte forma: alguém realiza um depósito na rede principal da Ethereum e inicia contatos com outros clientes de forma independente, como forma de supervisionar a execução de seu contrato inteligente e das regras gerais da Ethereum. Um contrato inteligente se trata de um mini-programa para se trabalhar com dinheiro e carteiras digitais. São o ponto chave.

De tempos em tempos, os resultados dessas comunicações individuais são registrados na rede principal. Além disso, assim como na Lightning Network, todos os participantes supervisionam a execução dos contratos inteligentes e reportam caso algo não esteja nos conformes.

Até o momento, a proposta é um rascunho, contudo, caso o conceito seja implementado de forma bem-sucedida, o problema da escalabilidade da blockchain será algo do passado.

Problema: miners estão extinguindo os recursos do planeta

O protocolo prova de trabalho (POW do inglês proof-of-work) é o método mais popular de se chegar a um consenso no que diz respeito às criptomoedas. Um novo bloco é criado depois de que todos os cálculos são realizados unicamente para prevenir a alterações dos registros financeiros. Miners de redes POW consomem muita eletricidade, e o número de MWs gastos não são regulados por segurança ou senso comum, mas sim economia: a capacidade de trabalho se expande até o ponto em que as taxas de câmbio para criptomoedas mantenham o mining lucrativo.

Proof-of-stake

Uma abordagem alternativa para distribuir direitos de criação de blocos são as chamadas proof-of-stake (POS). Por meio desse conceito, a chance de se criar um bloco e receber a recompensa (na forma de juros ou de moedas recentemente emitidas) independe da quantidade de insumos computacionais gastos (quanta eletricidade foi gasta), mas sim do quanto de moeda você tem no sistema.

Caso você possua um terço de todas as moedas disponíveis, isso te fornece uma chance de um terço de criar um bloco por conta de um algoritmo aleatório. O princípio se posiciona como uma boa razão para que participantes obedeçam às regras, pois quanto mais da moeda você tem, maior seu interesse em uma rede funcional e em um câmbio estável.

Proof-of-autority

Existe ainda um método mais radical. Permite apenas que participantes notoriamente confiáveis criem blocos. Por exemplo, 10 hospitais podem usar uma blockchain para manter registros de uma situação epidemiológica em uma cidade. Cada hospital possui sua própria senha como prova de autoridade. Isso torna essa blockchain privada: apenas hospitais podem inserir informações. Ao mesmo tempo, favorece transparência, qualidade importante em uma blockchain.

Contudo, proof-of-authority é prejudicial ao conceito original do blockchain: a rede se torna efetivamente centralizada.

Recursos podem ser usados para o bem

Algumas redes realizam trabalhos úteis dentro do conceito de proof-of-work. Buscam por certo tipo de número primo (Primecoin), calculam estruturas de proteínas (FoldingCoin) ou realizam outras tarefas científicas que requerem diversos cálculos (GridCoin). A recompensa do “mining” reflete em mais recursos direcionados à pesquisa científica.

Problema: Blockchain é descentralizada e, portanto, não está evoluindo

Não é fácil introduzir mudanças em um protocolo de rede descentralizado. O desenvolvedor pode impor atualizações obrigatórias a todos os clientes – embora esse tipo de rede não possa ser considerado verdadeiramente descentralizada – ou persuadir todos os participantes a aceitarem mudanças. Se uma proporção significativa desses votam contra, a comunidade pode se dividir: a blockchain se dividirá em duas moedas.

Parte do problema é que participantes diferentes possuem interesses distintos. Miners tem interesse no aumento de recompensas e juros; usuários querem pagar menos para transferir. Fãs almejam que as criptomoedas se tornem mais populares, ao passo que os nerds querem inovações úteis agregadas a tecnologias.

Duas das maiores criptmoedas já passaram por essa divisão. Aconteceu com a Bitcoin, há pouco tempo, quando integrantes não chegaram a um consenso acerca da expansão do tamanho dos blocos. Anteriormente, algo similar ocorreu com a Ethereum, o resultado de uma discordância sobre ser justo ou não cancelar uma brecha em um fundo de investimento e retornar o dinheiro aos investidores.

Como evitar esse tipo de situação?

Tezos

É possível codificar em uma criptomeada a habilidade de votar acerca de modificações. É precisamente isso que a criptomoeda prestes a chegar no mercado, a Tezos, faz.

  1. Quanto mais criptmoeda você tem, maior o peso do seu voto. Capacidade de mining é irrelevante.
  2. Um voto pode ser delegado a alguém que entende do assunto e votaria melhor que você.
  3. Desenvolvedores tem poder de veto durante um ano depois do lançamento, e se necessário, esse direito pode ser estendido.
  4. O quórum inicial tem de ser de 80%, mas isso pode ser mudado de acordo com a atividade de usuários.

É por meio dessa abordagem que se acalma os ânimos e a ocorrência de bifurcações.

Ao votar nesses princípios, em algum momento a maioria poderia eliminar os direitos de voto da minoria. Em suma, os ricos tomariam conta. Contudo, os desenvolvedores da Tezos pensam que esse controle teria impacto negativo no valor da moeda, o que o torna pouco provável. Veremos.

Problema: Blockchain é transparente demais.

Imagine que você é o WikiLeaks e recebe doações em bitcoins. Todo mundo sabe seu endereço, o quanto você tem, e no momento que você tentar converter seu dinheiro para dólares, agências reguladoras saberão o quanto você possui.

Não é possível lavar dinheiro em Bitcoins. Dividir o dinheiro em dez carteiras significa simplesmente que você possuirá dez contas associadas ao seu nome. Há serviços conhecidos como mixers ou tumblers que movimentam grandes quantias de dinheiro de graça para ocultar o dono original. Contudo, são inconvenientes por diversos motivos.

CoinJoin na Dash

Os criadores da criptomoeda Dash (antiga Darkcoin) foram os primeiros a tentar resolver o problema do anonimato por meio da função PrivateSend. A abordagem era simples: projetaram um tumbler na própria moeda.

Não era, porém, isento de falhas. Primeiro, se alguém (por exemplo a polícia) controla um número significativo de nós que misturam dinheiro “limpo” com “sujo”, a transferência pode ser observada. Um cenário pouco provável, mas possível.

Segundo, misturar dinheiro limpo e sujo não o torna limpo – fica algo como “cinza”. Para que esse pareça limpo, todos os participantes têm de lançar mão do mixing o tempo todo.

CryptoNote na Monero

Uma abordagem mais confiável foi inventada: uma moeda realmente anônima chamada Monero. Primeiro, a Monero usa assinaturas eletrônicas que permitem a um grupo de participantes (designados pela célula) assinar uma mensagem em nome do grupo e também previne que alguém defina quem o fez. Essa habilidade permite ao emissor esconder seus rastros. Ao mesmo tempo, o protocolo previne o double spending.

Segundo, Monero usa não apenas senhas privadas para a transferência de dinheiro, mas também outras adicionais que permitem a verificação do que chegou em sua carteira, processos que tornam impossível a visualização do histórico de transações de outra pessoa.

Terceiro, alguns remetentes podem almejar gerar carteiras de uso único para manter dinheiro e fundos privados longe do mercado. (Essa recomendação foi feita há muito tempo pela Bitcoin).

Conclusão

Nossa revisão curta sobre os problemas que algumas pessoas talentosas converteram em benefício chega ao fim.  Poderíamos ter escrito muito mais sobre contratos inteligentes na Ethereum, o futuro brilhante da Ripple, ou criptomoedas sem blockchain como a IOTA.

Estritamente neste caso, o título do artigo é impreciso. Discutimos aditivos da blockchain, não a própria. Contudo, essa é sua beleza: inspira pessoas a pensar em formas de torná-la melhor.