Algoritmo de Consenso Leased Proof of Stake
P√°gina Inicial
Artigos
Algoritmo de Consenso Leased Proof of Stake

Algoritmo de Consenso Leased Proof of Stake

Intermedi√°rio
Publicado em Apr 28, 2019Atualizado em Oct 25, 2023
6m

Algoritmo de Consenso Leased Proof of Stake e o protocolo Waves-NG 

Autor: Guy Brandon, colaborador da Waves.

A plataforma Waves opera em um algoritmo de consenso leased proof-of-stake (LPoS) combinado com o protocolo Waves-NG, permitindo um alto grau de escalabilidade e taxa de transfer√™ncia de transa√ß√Ķes.


Introdução

A plataforma¬†Waves foi lan√ßada em 2016 ap√≥s uma ICO (Inicial Coin Offering) que arrecadou 30,000 BTC ‚Äď cerca de $16 milh√Ķes na √©poca. O projeto est√° desenvolvendo um abrangente ecossistema de blockchain para uso em processos de neg√≥cios, com um amplo conjunto de ferramentas cobrindo diversas necessidades - incluindo a f√°cil cria√ß√£o de tokens de criptomoedas personalizados;¬†contratos inteligentes diretos; negocia√ß√£o peer-to-peer em uma¬†exchange¬†integrada e descentralizada (DEX); e um meio seguro e conveniente de interagir com o¬†dApps e servi√ßos da Web por meio do plug-in do navegador Waves Keeper.


Escalabilidade

Desde o in√≠cio, a Waves reconheceu que a escalabilidade seria necess√°ria para a ado√ß√£o massiva da¬†blockchain e priorizou o desenvolvimento de tecnologias para lidar com as limita√ß√Ķes das blockchains existentes. Por exemplo, a¬†Bitcoin √© altamente segura, mas relativamente lenta e s√≥ pode suportar cerca de 7 transa√ß√Ķes por segundo (TPS). Assim sendo, a Bitcoin n√£o √© eficiente o bastante para ser usada como moeda cotidiana em todo o mundo. Solu√ß√Ķes secund√°rias, como a rede¬†Lightning Network, s√£o necess√°rias para que a Bitcoin atenda a esse prop√≥sito. A Waves adotou uma abordagem diferente, concentrando-se inicialmente em alta escalabilidade na cadeia antes de considerar aplicativos de segundo n√≠vel.


Arrendamento de saldo (Balance leasing)

O¬†algoritmo de consenso original da Waves era uma simples implementa√ß√£o¬†Proof of Stake. Todos os 100 milh√Ķes de tokens WAVES foram distribu√≠dos ap√≥s a ICO e o fornecimento √© fixo: n√£o h√° infla√ß√£o como nas moedas mineradas pelo algoritmo¬†PoW. Portanto, os validadores de bloco da Waves recebem as taxas de transa√ß√£o dos blocos que processam mas, ao contr√°rio de mineradores PoW, n√£o recebem recompensas de bloco (block reward). Esses validadores tamb√©m podem ser chamados de forjadores (forgers), mas no ecossistema Waves s√£o mais conhecidos como mineradores mesmo.
O sistema¬†Leased Proof of Stake¬†(LPoS) foi completamente¬†lan√ßado em Maio de 2017, permitindo que os usu√°rios do Waves lite ‚Äď aqueles que n√£o executaram um¬†n√≥ completo ‚Äď concedessem seus tokens WAVES aos n√≥s de minera√ß√£o. Os tokens WAVES arrendados/alugados s√£o bloqueados na conta do usu√°rio e n√£o podem ser transferidos ou negociados. Ainda assim, os tokens permanecem no controle total do titular da conta e as loca√ß√Ķes podem ser canceladas a qualquer momento. Dadas as sobrecargas t√©cnicas associadas √† execu√ß√£o de um n√≥ de minera√ß√£o e a necessidade de estar on-line 24 horas por dia, somente uma propor√ß√£o relativamente pequena da comunidade Waves executa n√≥s (uma lista dos criadores de blocos pode ser encontrada em¬†https://dev.pywaves.org/generators/).¬†
Tokens WAVES que são alugados para um nó de mineração são usados para aumentar a proporção de moedas usadas no no processo de staking, aumentando as chances do minerador de encontrar o próximo bloco. O sistema Leased Proof of Stake melhora a segurança da rede através de pelo menos duas maneiras. Primeiramente, quanto mais WAVES forem usados para proteger a rede, melhor, pois se torna mais difícil para um invasor acumular os tokens necessários para realizar um ataque de 51%. Além disso, tokens WAVES podem ser alugado para um nó a partir do endereço de cold storage (sem contanto com a internet) de um usuário, enquanto que o nó em si (que permanece online) só precisa de um valor mínimo de saldo. Isso reduz significativamente o risco de tokens WAVES serem roubados de computadores que estão online, uma vez que os fundos arrendados/alugados não são transferidos para o minerador (continuam seguros offline).


Uma nova abordagem para o consenso: Waves-NG

Uma nova atualiza√ß√£o para a rede ocorreu em dezembro de 2017, com o lan√ßamento do Waves-NG. Este foi um novo protocolo baseado na¬†proposta Bitcoin-NG do professor¬†Emin G√ľn Sirer, da Cornell IT.
O protocolo original da Bitcoin escolhe cada minerador retrospectivamente. Depois que um bloco foi adicionado √† blockchain, os¬†mineradores competem para encontrar um hash v√°lido para o pr√≥ximo bloco, com base no estado atual da blockchain. Enquanto isso, as transa√ß√Ķes rec√©m-geradas v√£o para a¬†pool¬†de mem√≥ria (mempool), onde permanecer√£o pendentes at√© que um minerador as colete e valide.¬†
Embora os protocolos Bitcoin e Bitcoin-NG sejam considerados sistemas¬†Byzantine fault tolerant (BFT), o √ļltimo foi¬†proposto em 2015 como uma alternativa escal√°vel baseada em um mecanismo de trabalho diferente. Em um sistema Bitcoin-NG, o pr√≥ximo minerador √© escolhido antecipadamente e este minerador cria um ‚Äúbloco de chaves‚ÄĚ (key block) vazio - que √© o bloco que ser√° adicionado por √ļltimo √† blockchain. Pequenos blocos chamados "microblocks" (consistindo de poucas transa√ß√Ķes cada) s√£o adicionados em tempo quase real a esse bloco de chaves. Utilizando uma analogia cotidiana, isso √© como adicionar v√°rios sacos de compras (microblocks) a um carrinho (keyblock), antes que o carrinho completo seja finalmente levado at√© o caixa (adicionado √† blockchain). Isso significa que as transa√ß√Ķes podem ser adicionadas √† blockchain em apenas alguns segundos, com o √ļnico atraso real sendo a lat√™ncia da rede. A Waves atualizou essa id√©ia para uma rede¬†proof-of-stake, criando o protocolo Waves-NG - a primeira implanta√ß√£o do Bitcoin-NG para uma blockchain aberta e p√ļblica.
Outra adi√ß√£o ao ecossistema foi a¬†MassTransfers que permite que at√© 100 transfer√™ncias sejam ‚Äúempacotadas‚ÄĚ em uma √ļnica transa√ß√£o, com taxas reduzidas. O limite de 100 txs por MassTransfer foi escolhido como um compromisso entre adicionar capacidade e conveni√™ncia significativas por um lado e, por outro lado, limitar a capacidade de enviar de uma s√≥ vez lotes muito grandes de transa√ß√Ķes de baixo custo. Se mais transfer√™ncias precisarem ser feitas, v√°rios MassTransfers podem ser enviados sequencialmente.¬†

Em outras palavras, os usu√°rios podem simplesmente escolher um MassTransfer como um tipo diferente de "Envio de transa√ß√£o", permitindo que eles incluam at√© 100 destinat√°rios em uma √ļnica transa√ß√£o. Al√©m disso, os endere√ßos dos destinat√°rios podem ser fornecidos via JSON ou carregados a partir de um arquivo CSV, tornando simples e eficiente a realiza√ß√£o de grandes¬†airdrops¬†ou a realiza√ß√£o de pagamentos semanais para aqueles que arrendam suas WAVES aos n√≥s de minera√ß√£o. Combinado com o Waves-NG, o recurso MassTransfer permite uma alt√≠ssima taxa de transfer√™ncia na rede.

Uma s√©rie de testes foram conduzidos na rede Waves para medir o potencial de transfer√™ncia do novo protocolo. Em outubro de 2018, um grande¬†teste de stress foi realizado na MainNet. Isso demonstrou que o protocolo blockchain aberto e p√ļblico da Waves (n√£o apenas o TestNet limitado e controlado) poderia suportar mais de¬†6,1 milh√Ķes de transa√ß√Ķes dentro de um per√≠odo de 24 horas - uma m√©dia de 4.200 txs por minuto ou 71 txs por segundo, com pico de produ√ß√£o atingindo centenas de transa√ß√Ķes por segundo.¬†


Considera√ß√Ķes finais

O sistema Leased Proof-of-Stake permitiu que usu√°rios comuns sem conhecimento t√©cnico possam ajudar a proteger a rede Waves, arrendando suas WAVES para n√≥s completos sem perder o controle de seus tokens. J√° o Waves-NG permitiu uma taxa de transfer√™ncia de at√© 100 TPS, que √© uma ordem de grandeza maior que muitas blockchains. As taxas pagas pelas transa√ß√Ķes s√£o baixas porque n√£o h√° necessidade de pagar aos mineradores recompensas de bloco (em blockchains PoW essas recompensas s√£o usadas para compensar os altos custos de eletricidade e hardware).

A escalabilidade on-chain (na cadeia) tem sido uma prioridade para a Waves, mas h√° limites na medida em que qualquer blockchain pode escalar dessa forma devido ao armazenamento e largura de banda necess√°rios. Os desenvolvedores da Waves acreditam que a abordagem atual pode ser otimizada para suportar at√© 1.000 TPS antes de serem necess√°rias novas solu√ß√Ķes de dimensionamento. Atualmente, a Waves est√° explorando op√ß√Ķes para uma solu√ß√£o de escalonamento de segundo n√≠vel envolvendo cadeias laterais, permitindo que um grande n√ļmero de transa√ß√Ķes sejam processadas em uma cadeia paralela, por√©m, garantindo as transa√ß√Ķes seguras na blockchain principal da Waves.

Compartilhar publica√ß√Ķes
Registre uma conta
Coloque seus conhecimentos em pr√°tica. Abra uma conta na Binance hoje mesmo.