Um novo estudo de uma equipe de cientistas afirma ter resolvido o problema de escalabilidade do Bitcoin. E faz isso eliminando a necessidade de consenso entre os sistemas para confirmar uma transação, afirmam os pesquisadores.
O estudo é detalhado em um artigo de pesquisadores da Escola Politécnica Federal de Lausanne, na Suíça. O documento, que ganhou recentemente o prêmio de Melhor Artigo no Simpósio Internacional de Computação Distribuída em Budapeste, descreve uma abordagem muito diferente para validar uma transação em criptomoedas como o Bitcoin.
Até agora, o consenso entre os sistemas era considerado uma necessidade para resolver o problema de gastos duplos do Bitcoin. A maioria das abordagens para resolver esse problema envolve a obtenção de um quorum ou acordo entre todos os sistemas que compreendem uma blockchain.
Mas um quorum tem várias desvantagens. É caro em termos de recursos e consome grandes quantidades de energia. O quorum também pode ser demorado, se um acúmulo de transações se acumular em uma blockchain ou se depender de consenso entre os sistemas espalhados por várias regiões geográficas.
O novo estudo, no entanto, sugere que um quorum não é necessário para validar uma transação. Em vez disso, visa a um acordo sobre a transação a partir de uma amostragem aleatória de sistemas em uma rede.
Rachid Guerraoui, principal autor do estudo, enfatiza que o algoritmo proposto em seu artigo não é uma variante dos algoritmos de consenso existentes, como proof of work ou proof of stake.
“Proof of work é normalmente usada para decidir quem decide o valor do consenso.”, disse ele, acrescentando que o algoritmo proposto também não executa nodes para ‘eleger líderes’. Em vez disso, ele usa um gossip protocol, o mesmo usado para comunicar nonces ou cabeçalhos de diferentes blocos no Bitcoin, para espalhar informações sobre uma transação.
Um pequeno grupo inicialmente “confirma” a transação e comunica os detalhes da transação a outro grupo maior, que a propaga ainda mais a outros grupos e assim por diante.
Para realizar essa tarefa, o sistema usa o Contagion, um algoritmo probabilístico que imita a propagação de uma doença contagiosa em uma população. Consiste em três subprotocolo – Murmur, Sieve e Threshold. Os três protocolos são responsáveis por garantir a validade, a totalidade e a consistência de uma transação e por enviar o processo original de amostra para vários sistemas escolhidos aleatoriamente na rede. O tamanho dos sistemas amostrados aleatoriamente garante se a transação é válida ou não.
Guerraoui disse que o tamanho deve ser logarítmico em relação ao tamanho geral do sistema, o que significa que deve ser grande o suficiente para garantir que os hackers não possam penetrar no sistema. No entanto, também deve ser menor que um quorum, garantindo que não seja mais que uma representação da rede geral.
Além de reduzir a quantidade de tempo e recursos necessários para confirmar uma transação, o algoritmo Contagion também utiliza energia mínima.
“A energia [usada para propagar e validar uma transação] é a de enviar mensagens na Internet.”, explicou Guerraoui.
A equipe por trás do artigo planeja abrir o protocolo de código-fonte com a ajuda de financiamento da UE para disseminar as descobertas do estudo.