Os diferentes tipos de algoritmos de consenso - CoinCentral

Os diferentes tipos de algoritmos de consenso – CoinCentral

Os diferentes tipos de algoritmos de consenso - CoinCentral PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Um algoritmo de consenso é um procedimento usado em ciência da computação no qual os participantes de um rede concordam com o estado da rede ou o estado de um único valor de dados e estabelecem confiança entre pares desconhecidos na rede. 

Os algoritmos de consenso são projetados para que os membros de um blockchain cheguem a um acordo para validar uma transação na rede, alterar os parâmetros da rede, decidir quais nós são confiáveis ​​para processar novos blocos e outras funções importantes.

Não deixe que a natureza técnica deste artigo o desanime – encontrar “consenso” está ao nosso redor em todos os lugares – é uma noção muito humana, mas apenas aplicada a algo que pode ser automatizado. 

Para começar, em sistemas centralizados, as tarefas de consenso são executadas por uma autoridade central. 

Em sistemas descentralizados como o Bitcoin, temos uma rede composta por centenas, milhares e até centenas de milhares de mineradores ou nós que se juntam para realizar uma ou várias tarefas e fornecer um ecossistema confiável e eficiente.

Pensando no consenso descentralizado com este exemplo, suponha que você esteja em um grupo de quatro amigos e um dos membros, Alex, apresente uma quinta pessoa, Bob. Quando Bob sair, muito provavelmente, o grupo começará a falar sobre Bob (este é o protocolo) para ver se gostaram dele (o resultado será o “consenso”) 

José: “Bob parece ser um cara legal.”

Kevin: “Sim, cara legal. Como você o conheceu?

Alex: “Ele estava em uma das minhas aulas de finanças na faculdade; partilhávamos dicas de negociação de criptomoedas e ele acabou sendo um cara muito engraçado.”

Kevin: “Legal, mas os memes dele eram superestranhos.”

John: “Você simplesmente não entende a cultura dos memes.”

José: “Sim, você não gasta muito tempo navegando pelo TikTok - achei que eles eram muito engraçados.”

Neste exemplo, chegou-se a um “consenso” sobre se Bob se integra bem no grupo de amigos. Muitas vezes há um necessário consenso de opinião mesmo na ausência de compromissos específicos ou contratos feitos. Um participante, Kevin, reluta em deixar Bob entrar no grupo, mas José, Alex e John são legais com Bob.

Nesse caso, se fôssemos codificar o exemplo acima em um algoritmo de consenso: Então será 3 “ele é legal” e 1 “ele é legal, mas não tenho certeza sobre XYZ” ainda resulta em “ele é legal”. A maioria vence, então Bob vai sair com os garotos legais, apesar da opinião de Kevin. 

O Bitcoin, por exemplo, é construído para encontrar consenso sobre se novas transações são válidas (“legais”) ou não. 

Aqui, revisaremos os tipos mais populares - e não tão populares - de algoritmos de consenso de blockchain em redes públicas e privadas.

O que é prova de trabalho?

Proof of Work (PoW) é o algoritmo de consenso mais popular e antigo que veio com a criação do Bitcoin em 2009 por Satoshi Nakamoto. Um sistema PoW consiste em uma rede global de mineradores — chamados nós de rede — que competem para resolver quebra-cabeças matemáticos. O minerador que resolver o quebra-cabeça com sucesso ganha o direito de adicionar um novo bloco ao blockchain e recebe uma recompensa paga em criptomoeda recém-criada. 

A prova de trabalho é basicamente a maneira de um minerador mostrar evidências de que forneceu poder computacional para alcançar o consenso da rede e validar a autenticidade de cada bloco. Além disso, cada bloco (transação) é organizado em ordem sequencial, eliminando o risco de gastos duplos.

Até agora, o PoW tem sido o mecanismo de consenso mais seguro para blockchains de criptomoedas. Alterar a rede exigiria que um invasor garimpasse novamente todos os blocos existentes na cadeia. Quanto mais o blockchain cresce, mais difícil é monopolizar o poder de computação da rede, pois exigiria um enorme consumo de energia e equipamentos caros.

Quando um mineiro resolve um quebra-cabeça, ele encontra uma nonce (abreviação de número usado uma vez) que produz um hash com valor menor ou igual ao definido pela dificuldade da rede. 

O nonce é uma parte central dos sistemas PoW, uma vez que permitirá ao minerador criar um hash de cabeçalho de bloco com a função de hash SHA-256, o que significa colocar um número de referência para um bloco em uma cadeia. O cabeçalho do bloco também contém um timestamp e o hash do bloco anterior.

Os Contras do PoW

Os mineradores precisam fornecer um poder computacional considerável para resolver os quebra-cabeças. Mas como os cálculos são complexos, a quantidade de energia que um único S9 Antminer consome é geralmente entre 1400 – 1500 watts por hora para um hashrate de 14.5 TH/s. O S19, uma versão mais potente, consome 3250 watts por hora a um hashrate de 110 TH/s. 

Com um pouco de matemática, podemos calcular a quantidade de energia que data centers ou empresas de mineração consomem com centenas ou milhares de plataformas de mineração em um único local diariamente. O alto consumo de energia e os danos ambientais são as principais críticas feitas à prova de trabalho. 

Para colocar isso em perspectiva, antes de o Ethereum mudar para Proof of Stake, os mineradores de Ethereum em todo o mundo consumiam cerca de 10 TWh/ano, o mesmo que a República Tcheca.

O ruído alto também prejudica os níveis de audição humana — acima de 80 dBa. É por isso que as plataformas de mineração geralmente são mantidas em porões ou instalações de mineração para evitar perturbar as atividades diárias.

O que é prova de aposta?

Proof of Stake (PoS) é o segundo algoritmo de consenso mais popular. Em vez de mineradores, os blockchains PoS têm validadores de rede que usam suas moedas/tokens como prova de seu compromisso com a rede, em vez de poder de computação. 

Staking significa “bloquear” ativos criptográficos por um período em uma plataforma blockchain, que, em troca, recompensa os usuários com mais criptomoedas. 

PoW vs. PoS: principais diferenças

No PoS, os usuários podem apostar uma parte de seus ativos com o único propósito de gerar renda passiva. A outra opção é se tornar um validador. Ao contrário dos sistemas PoW, os validadores não competem para criar novos blocos, pois são escolhidos aleatoriamente por um algoritmo. Quanto mais moedas/tokens um usuário apostar, maiores serão suas chances de se tornar um validador e criar novos blocos na blockchain. 

Em sistemas PoW, o tempo para geração de novos blocos é determinado pela dificuldade de mineração; quanto mais participantes entrarem na rede, maior será o hashpower, ou seja, o poder computacional necessário para minerar novos blocos. Por outro lado, as blockchains PoS têm um tempo fixo de geração de blocos dividido em slots – o tempo necessário para criar um bloco – e épocas, que são unidades de tempo que consistem em slots. 

Para explicar melhor, um slot no Ethereum consiste em 12 segundos, que é o tempo que a rede leva para criar um bloco, e 32 slots criam uma época. Portanto, uma época é de 6.4 minutos. Cada slot em uma blockchain PoS tem um número predeterminado de validadores que votam na validade do bloco que está sendo proposto. Se o bloco for válido, ele é adicionado à cadeia, e o proponente do bloco e os atestadores recebem recompensas em ETH.

Blockchains PoS punem agentes mal-intencionados por atacarem a rede com ataques de estilo 51%, que são chamados de slashing, onde validadores honestos ejetam o validador malicioso da rede e drenam seu saldo. Isso desencoraja atores mal-intencionados de atacar a rede, pois o número necessário de fundos apostados é consideravelmente alto. No caso do Ethereum, 32 ETH.

Vantagens do PoS:

  • Menos intensivo de energia em comparação com PoW
  • Mais adequado para trabalhar com soluções de camada 2 do que PoW
  • Capaz de atingir uma taxa de transferência mais alta, pois o consenso é estabelecido antes que os blocos sejam passados.
  • Mais barato que os blockchains PoW, pois não requer hardware de elite para criar novos blocos.

Contras do PoS

  • Os sistemas PoS ainda estão sujeitos à centralização se validadores com um grande número de tokens apostados puderem influenciar a rede. 
  • Menos comprovado em termos de segurança em comparação com blockchains PoW.

O que é Prova de História?

Proof of History (PoH) é um algoritmo de consenso apresentado pela blockchain Solana e consiste em colocar um timestamp para todos os eventos na rede para provar que eles ocorreram em um determinado momento. PoH pode ser descrito como um relógio criptográfico que confirma transações em ordem sequencial. 

Solana combina sua abordagem PoH com PoS. Portanto, os participantes da rede precisam apostar SOL para se tornarem validadores e processar novos blocos, e o mecanismo PoH verifica a validade dessas transações ocorrendo em tempo real. Em outras palavras, o PoH mantém a segurança, enquanto o PoS traz uma rede de validadores que podem verificar os timestamps e confirmar as transações.

No entanto, Solana sacrifica a descentralização para fornecer uma taxa de transferência de transação ultrarrápida. A blockchain conta com uma arquitetura semicentralizada na qual um único nodo é eleito como o líder responsável por implementar uma única fonte de tempo, ou seja, o relógio PoH, e todos os outros nodos devem seguir as sequências de tempo de acordo. Os líderes são eleitos periodicamente por meio de eleições PoS.

Embora o Solana seja um dos blockchains mais rápidos do setor, ele sofre regularmente de paralisações. Desde o seu lançamento em 2020, a rede sofreu cerca de dez paralisações, cinco das quais ocorreram em 2022. O principal motivo dessas interrupções é um “nó mal configurado”.

O que é Prova de Participação Delegada?

Prova Delegada de Participação (DPoS) é uma variação do conceito PoS em que a comunidade desempenha um papel central.

Nas blockchains DPoS, os membros da comunidade apostam suas criptomoedas para votar nas próximas testemunhas ou delegados para a produção de blocos. Para fazer isso, os usuários devem agrupar seus tokens no pool de apostas do blockchain e, em seguida, vincular os fundos a um delegado especificado. 

O DPoS foi desenvolvido pelo ex-CTO da EOS, Dan Larimer, que implementou o algoritmo no BitShares em 2015. Larimer e outros proponentes do DPoS disseram que o DPoS amplia o escopo democrático, pois é a comunidade que escolhe o próximo validador. Hoje, blockchains como TRON e Cardano usam DPoS. 

No entanto, a crítica ao DPoS é que sua metodologia favorece usuários ricos. Aqueles com um grande número de tokens podem ter uma influência maior na rede. Vitalik Buterin foi um dos primeiros detratores do DPoS, alegando em um no blog que esse algoritmo de consenso incentiva testemunhas a formar cartéis e subornar eleitores para obter apoio.

O que é Prova de Autoridade?

Proof of Authority (PoA) é um algoritmo de consenso no qual apenas membros autorizados podem interagir com o blockchain, realizar transações, fazer ou sugerir alterações de parâmetros de rede, revisar o histórico de transações, etc. 

O termo foi cunhado por Gavin Wood, um desenvolvedor de blockchain que cofundou Ethereum, Polkadote Rede Kusama.

Em uma blockchain PoA, tudo é uma questão de reputação - os participantes da rede estão apostando suas identidades em vez de moedas. Eles fornecem um nível mais alto de escalabilidade e taxa de transferência, pois dependem apenas de um número limitado de validadores. Podemos pensar que este é um modelo altamente centralizado, mas as blockchains PoA geralmente são privadas e se encaixam melhor em empresas e organizações que usam a tecnologia blockchain para aprimorar negócios e sistemas operacionais. 

O que é a prova de tempo decorrido?

Proof of Elapsed Time (PoET) é outro algoritmo de consenso que funciona melhor com blockchains privados.

O algoritmo PoET foi apresentado pela primeira vez pelos desenvolvedores de software da Intel e implementado para Dente de Serra Hyperledger, voltado para blockchains e instituições privadas.

O algoritmo pode não ser tão popular quanto outros blockchains, pois não foi definido adequadamente. Mas a ideia era apresentar um mecanismo pronto no estilo Nakamoto que permitisse que blockchains privados escolhessem o próximo produtor de blocos. E como eles diferem? Bem, o algoritmo gera um “tempo de espera aleatório” para cada nó da rede e, durante esse tempo, o nó deve “dormir.” O nó com o menor período de espera acorda primeiro e ganha o direito de produzir um bloco na cadeia. 

Portanto, a principal diferença é que os mineradores no PoET não funcionam 24 horas por dia, 7 dias por semana e consomem menos energia. Além disso, em uma rede PoW, os mineradores competem para fazer o hash do próximo cabeçalho de bloco, enquanto no PoET é mais um sistema de seleção aleatória.

Perguntas frequentes sobre algoritmos de consenso: 

O Ethereum ficará mais rápido agora que fez a transição para PoS?

Um equívoco comum é que o Ethereum será dimensionado automaticamente agora que é um blockchain baseado em PoS. No entanto, essa transição foi feita para aprimorar o Ethereum por:

  • Reduzindo o consumo de energia
  • Reduzindo as barreiras de entrada, eliminando os requisitos de hardware
  • Permitindo penalidades econômicas por mau comportamento do nó
  • Apresentando um novo modelo para emissões de token 
  • E uma infraestrutura melhor para trabalhar com soluções Ethereum Layer-2.

O que são blockchains sem permissão e com permissão?: 

Um blockchain sem permissão refere-se a um blockchain público no qual qualquer pessoa pode fazer transações, revisar o histórico de transações, apostar moedas, tornar-se um validador, etc. Por outro lado, em blockchains com permissão (privados), apenas membros com permissão podem acessar a rede para fazer transações, interagir com nós de rede, rastrear atividades na cadeia, etc.

O PoW é o algoritmo de consenso mais seguro? O PoW tem seu quinhão de desvantagens, mas até agora tem sido a maneira mais comprovada e confiável de manter o consenso e a segurança de uma rede em um blockchain.

Considerações finais: algoritmo de consenso explicado

Blockchain é uma tecnologia capaz de resolver muitos desafios e pontos problemáticos em diferentes setores, não apenas bancários e financeiros. No entanto, tem a sua própria quota de contratempos. Conseqüentemente, os desenvolvedores criaram vários tipos e versões de algoritmos de consenso para resolver problemas comuns, como centralização, falta de escalabilidade e baixo rendimento. 

Mas falar sobre o futuro dos algoritmos blockchain é difícil devido a um desafio: o Blockchain Trilemma. Descrito pela primeira vez por Vitalik Buterin, afirma a incapacidade das redes blockchain em fornecer dois dos três benefícios: descentralização, segurança e escalabilidade. Existem várias plataformas blockchain, como Fantom e Solana, que implementaram suas próprias versões híbridas de algoritmos de consenso na tentativa de resolver o trilema da blockchain, mas nenhuma foi realmente bem-sucedida até agora. 

Outras abordagens técnicas foram feitas para aprimorar as propriedades da blockchain, e uma das mais populares é a camada 2, que são cadeias conectadas a uma camada 1, por exemplo, Arbitrum com Ethereum, e sharding, que divide toda a blockchain em muitas redes menores. Buterin considera sharding como a melhor abordagem para fornecer as três propriedades de um blockchain perfeito.


Carimbo de hora:

Mais de CoinCentral