O gasto-duplo foi o grande problema resolvido pela criação do Bitcoin: a impossibilidade de se gastar duas vezes a mesma unidade de dinheiro. Se, por um lado, o gasto-duplo é praticamente impossível no Bitcoin, outras criptomoedas não possuem a mesma garantia.
Essa foi a descoberta feita por um trio de pesquisadores. Segundo a agência de notícias Coindesk, eles descobriram uma maneira de detectar e punir participantes desonestos da blockchain, de acordo com um artigo publicado no final de maio.
“A corrida do ouro (virtual) está acontecendo e, como no Velho Oeste de outrora, os marginais estão sempre presentes”, declara o artigo, intitulado Polygraph: Accountable Byzantine Agreement (“Polígrafo: um acordo de responsabilização bizantina”, em tradução livre).
Os autores – Vincent Gramoli e Pierre Civit, da Universidade de Sydney, e Seth Gilbert, da Universidade Nacional de Cingapura – desenvolveram o protocolo Polygraph, que automatiza a responsabilização em blockchains para identificar e punir quem tenta realizar gasto-duplo, uma questão notoriamente complicada em criptomoedas.
Embora o problema do gasto-duplo tenha sido supostamente resolvido pelo whitepaper do Bitcoin, publicado em 2008, os pesquisadores descobriram que desentendimentos causados por hard forks na blockchain podem levar ao gasto-duplo se as criptomoedas resultantes da divisão tiverem transações conflitantes.
Confira nossas sugestões de Pre-Sales para investir agora
Eles citam um exemplo de caso, que eles intitulam como “caso zumbi”:
“Os nós bizantinos podem substituir o Protocolo Geral do Polygraph propondo duas visões conflitantes a dois clientes diferentes para, então, realizar um ataque de gasto-duplo. A coalizão não participa do consenso para violar a propriedade. Observe que a segurança também é violada: quando um cliente invoca a primitiva read (), a coalizão pode responder a valores arbitrários, apesar da não rescisão do consenso legítimo. O cliente deve confiar na coalizão, como todos os outros clientes que podem sempre receber uma saída diferente para a primitiva read (). Portanto, para t ≥ n – t0, a propriedade de prefixo eventual é violada. Isso faz com que a blockchain fique vulnerável a um ataque de gasto-duplo.”
Foco nos problemas reais
Apesar do artigo ser de teor acadêmico, ele também fornece soluções pragmáticas para problemas reais encontrados nos atuais mecanismos de consenso.
Os autores consideraram a ameaça crescente da centralização em blockchains, causada pela concentração do poder de processamento das redes. Nos termos dos acordos tradicionais do protocolo bizantino, se uma das partes acumula mais de um terço da produção total da mineração, ela obtém autoridade para tomar decisões. Como um aparte, os autores observam que o maior pool de mineração de Bitcoin atualmente controla aproximadamente 19% do poder total de processamento.
Para exemplificar o problema, os autores usaram a metáfora do xerife, afirmando que novos vigilantes se fazem necessários para evitar esse tipo de controle.
“Precisamos de um novo xerife na cidade para levar os culpados à justiça. E se, em vez de evitar o mau comportamento de uma parte que controla muito o poder da rede, nós garantíssemos a responsabilidade na rede?”, escrevem os autores.
Assim como crimes são evitados no mundo real, é possível evitar o mau comportamento na blockchain por meio de “defesa em profundidade” – o protocolo básico de acordo bizantino que impede a centralização se o atacante tiver menos de um terço do controle de rede ou se a infraestrutura da mesma está trabalhando para passar mensagens no tempo.
“Protocolos de acordos bizantinos agem como as fechaduras nas portas dos bancos, impedindo que assaltantes fujam com dinheiro roubado”, escreveram.
A função do Polygraph
No entanto, quando essas garantias falham – e os autores sugerem que elas podem falhar com frequência – o protocolo Polygraph entra em ação, interceptando o comportamento malicioso.
O algoritmo básico do Polygraph baseia-se no protocolo de acordo bizantino, mas vai mais além nesse processo por meio de rodadas assíncronas ou de um voto que recebe dados democráticos.
“Primeiro, um radiodifusor confiável é usado para distribuir os valores da proposta. Em seguida, uma segunda fase de comunicação é usada para determinar se processos suficientes convergiram em um único valor. Finalmente, os processos decidem, se puderem; e se não, atualizam sua estimativa na tentativa de convergir em um único valor”, finalizaram os autores.
“A responsabilidade tem sido negligenciada em blockchains, mas é realmente fundamental para a segurança delas”, disse Gramoli, que também atua como CEO da Red Belly Blockchain. “A indústria não pode aceitar uma blockchain como um sistema distribuído simples, onde ativos valiosos desaparecem assim que um terço dos participantes formar uma coalizão”.
Leia também: Pesquisa revela que três fraudes envolvendo criptoativos acumularam mais de US$7 bilhões