SwapSpace – Trocas de criptomoedas cross-chain

Algoritmos de Consenso na Blockchain

Academy Author

,

,6 min

As redes de criptomoedas diferem entre si na organização do trabalho. Como há descentralização, é necessário implementar um registro distribuído. Isso é necessário para reconciliar transações, evitando custos adicionais.

Neste artigo, vamos nos concentrar em algoritmos de blockchain populares para descobrir suas funções e os fatores que afetam o desempenho e a segurança.

O que é um algoritmo de consenso de blockchain?

Um mecanismo de consenso é um procedimento pelo qual todos os pares de uma rede chegam a um acordo geral sobre o estado atual do registro distribuído. Assim, os algoritmos de consenso garantem a confiabilidade na rede blockchain e estabelecem relações de confiança entre parceiros desconhecidos em um ambiente de computação distribuída. Um protocolo negociado garante que cada novo bloco adicionado a uma cadeia de blocos seja a única versão da verdade acordada por todos os nós dessa cadeia. Os modelos de consenso de blockchain consistem em alguns objetivos específicos, como chegar a um acordo, cooperação, igualdade entre nós e a participação obrigatória de cada nó no processo de negociação. Assim, o algoritmo de consenso visa encontrar um acordo comum que seja benéfico para toda a rede. Além disso, esse algoritmo implementa:

  • frequência de geração de blocos;
  • evitar o risco de lançamento de fundos adicionais;
  • verificação dos dados no bloco.

Em termos simples, o algoritmo de consenso evita erros em redes descentralizadas. Além disso, a tarefa do mecanismo é implementar condições mutuamente benéficas para todos os participantes.

Algoritmos de Consenso: Visões

As moedas digitais são desenvolvidas em várias blockchains. Os algoritmos de consenso também variam nessas blockchains.

Mais de 90% do mercado de criptomoedas é baseado em três principais algoritmos harmonizados:

Proof of Work (PoW)

Proof of Stake (PoS)

Delegated Proof of Stake (DPoS)

No entanto, consideraremos não apenas os mecanismos subjacentes, mas também alguns outros que, embora não sejam adotados por muitos projetos, são muito interessantes de explorar e podem desempenhar um papel importante no nosso futuro.

1. Proof of Work (PoW)

Esse algoritmo de consenso é usado para selecionar o minerador que irá gerar o próximo bloco na cadeia. Bitcoin, Litecoin e muitos outros mastodontes da indústria blockchain usam PoW em seu funcionamento. A ideia principal deste algoritmo é resolver um problema matemático aleatório complexo gerado por uma blockchain e transmitir uma solução. Uma característica desse algoritmo é a complexidade da resolução do problema, mas ele pode ser facilmente revalidado. Esse quebra-cabeça matemático exige muita capacidade computacional e, assim, o nó que resolve o quebra-cabeça antes dos demais consegue produzir o próximo bloco. O PoW busca garantir que um ataque à rede seja excessivamente caro e exija altos custos de energia, já que os mineradores consomem energia para fornecer serviços de medição e segurança da rede. As desvantagens desse mecanismo são consideradas a escalabilidade limitada e o baixo throughput.

2. Proof of Stake (PoS)

Talvez esta seja a alternativa mais comum ao PoW: até mesmo a Ethereum recentemente migrou do consenso PoW para PoS. Nesse tipo de algoritmo de consenso, em vez de investir em equipamentos caros para resolver um quebra-cabeça complexo, os chamados validadores investem nas moedas da rede, bloqueando parte de suas moedas como aposta (staking). Depois disso, todos os validadores começam a verificar os blocos, apostando no bloco que acreditam poder ser adicionado à cadeia. Com base nos blocos reais adicionados à blockchain, todos os validadores recebem uma recompensa proporcional às suas taxas, e sua participação é aumentada de acordo. No final, para gerar um novo bloco, o validador é selecionado com base em sua participação econômica na rede. Assim, o algoritmo PoS incentiva os validadores por meio de um mecanismo de incentivo a chegarem a um consenso. As vantagens desse mecanismo são consideradas o aumento da escalabilidade na camada base e a possível economia de energia em comparação com o PoW. As desvantagens incluem o risco de centralização, o que por sua vez leva à redução da segurança. Ethereum, Peercoin, Lisk, PIVX e outras blockchains operam com PoS.

3. Delegated Proof Of Stake (DPoS)

O mecanismo DPoS é uma evolução do PoS, mas é um tipo diferente de algoritmo de consenso baseado em sistemas de votação. Em vez de selecionar nós individuais aleatoriamente para realizar uma verificação, a comunidade de detentores de tokens usa sua participação (aposta) para votar em um número selecionado de nós confiáveis, frequentemente chamados de delegados. Eles são responsáveis por verificar transações e manter a rede, e são recompensados em troca por uma parcela das taxas de transação. O DPoS pode ser comparado à democracia representativa — os participantes votam em um representante confiável para proteger a rede em seu nome. Os eleitores podem substituir os delegados se eles agirem contra os interesses da maioria das partes interessadas. O algoritmo DPoS foi inventado por Dan Larimer e é usado em projetos de sua origem, como BitShares, Steem e EOS, mas também é demandado em outras redes, como Tezos e Ark. As vantagens do DPoS são a alta escalabilidade e uma distribuição mais ampla da inflação (distribuição mais uniforme dos tokens recém-emitidos entre os validadores), e as desvantagens são a segurança insuficiente e uma tendência constante à centralização na rede.

4. Proof of Elapsed Time (PoET)

PoET é um dos algoritmos de consenso mais justos, que seleciona o próximo bloco usando apenas meios honestos. É amplamente utilizado em muitas blockchains privadas e corporativas, em particular no Hyperledger. Nesse algoritmo, cada validador da rede tem uma chance real de criar seu bloco. Todos os nós fazem isso aguardando um tempo aleatório e adicionando ao bloco um reconhecimento da sua espera. Os blocos criados são transferidos para a rede para consideração dos demais participantes. O vencedor é o validador que possui o menor valor de timer na parte da prova. O bloco do nó validador vencedor é adicionado à blockchain. Há verificações adicionais no algoritmo para evitar que qualquer nó específico vença sempre a eleição, gerando o menor valor de timer. Falando dos prós: pode-se destacar alta eficiência e baixo consumo de recursos; os contras — baixo nível de segurança e dependência de uma terceira parte que desenvolve um conjunto de instruções para o processador.

5. Proof of Authority (PoA)

PoA é um algoritmo de consenso baseado em reputação que usa o valor da identidade e da reputação dos validadores de blocos. Em março de 2017, a equipe de desenvolvimento da Ethereum, liderada por Gavin Wood, propôs o PoA como solução para ataques de spam na rede de testes Ropstein da Ethereum. O PoA se parece com o PoS, exceto que, em vez de moedas, os validadores colocam sua reputação. Nós/validadores confiáveis são escolhidos pelos líderes da rede, tornando o PoA útil apenas para blockchains privadas. É usado na VeChain Thor, Microsoft Azure e outras. Vantagens: alta velocidade de transação, escalabilidade e baixo custo de manutenção da rede. Desvantagens: rejeição da descentralização e possível comportamento malicioso dos participantes da rede, o que é quase impossível de prevenir.

6. Proof of Capacity (PoC)

No consenso Proof of Capacity, os validadores investem espaço em disco rígido em vez de investir em equipamentos caros ou queimar moedas. Quanto mais meios de verificar o espaço no disco rígido, maiores as chances de chegar à mineração do próximo bloco e receber uma recompensa por ele. Usando armazenamento em vez de computação com ASICS, as blockchains em PoC são muito mais eficientes em energia. O PoC conta com projetos como Filecoin, Storj e Burstcoin. A vantagem óbvia dessa abordagem está na eficiência energética; as desvantagens residem na segurança insuficiente devido à exposição a ataques.

Também existem outros algoritmos de consenso, como:

  • Proof of Activity;
  • Proof of Space and Time;
  • Proof of Weight;
  • Proof of Storage;
  • Proof of Importance;
  • Proof of Participation;
  • Proof of History;
  • Leased Proof of Stake;
  • Proof of Burn;
  • Practical Byzantine Fault Tolerance.

Mas, no momento, seu uso pode ser atribuído mais a casos privados e inovações, o que pode servir de tema para um artigo separado.

Resumo

Cada um dos algoritmos apresentados tem seus pontos fortes e fracos, bem como possíveis usos. Quando considerados sob essa perspectiva, é razoável supor que eles não competem entre si. É importante escolher um deles de forma adequada, de acordo com os requisitos da rede de negócios. 

A implementação do PoW é segura e descentralizada. O PoW é um excelente mecanismo de consenso para criptomoedas. No entanto, é totalmente inadequado para redes sociais e jogos blockchain. 

Na indústria blockchain nascente, é importante continuar a pesquisa para descobrir novas arquiteturas de blockchain. Novos mecanismos de consenso abrirão novas opções de uso da tecnologia blockchain e da criptomoeda em particular.

Compartilhar:

Artigos relacionados

Curioso para saber mais?

Inscreva-se na nossa newsletter — fique informado e no controle.