A rede Waves opera em um algoritmo de consenso de prova de participação leased (LPoS) combinado com o protocolo Waves-NG, permitindo um alto grau de escalabilidade e taxa de transações.
Introdução
A rede Waves foi lançada em 2016 após uma ICO que arrecadou 30.000 BTC – cerca de US $ 16 milhões na época. O projeto está desenvolvendo um ecossistema abrangente de blockchain para uso em processos de negócios, com um conjunto de ferramentas abrangente que aborda diversas necessidades – incluindo a criação fácil de tokens de criptomoedas personalizados; negociação peer-to-peer de contratos inteligentes em uma exchange descentralizada (DEX) incorporada; e uma forma segura e conveniente de interagir com dApps e serviços 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 em massa da blockchain e priorizou o desenvolvimento de tecnologia para lidar com as limitações das blockchains existentes. Por exemplo, o Bitcoin é altamente seguro, mas relativamente lento e só pode suportar cerca de 7 transações por segundo (TPS).
Portanto, o Bitcoin não é eficiente o suficiente para ser usado como uma moeda cotidiana em todo o mundo. Soluções de segunda camada, como a Lightning Network, são necessárias para que o Bitcoin cumpra esse objetivo. A Waves adotou uma abordagem diferente, concentrando-se inicialmente na escalabilidade on-chain antes de considerar aplicativos de segunda camada.
Arrendamento de saldo
O algoritmo de consenso original da Waves era uma implementação simples de prova de participação. 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 ocorre com as moedas mineradas por prova de trabalho (PoW). Portanto, os validadores de blocos da Waves (forjadores, embora sejam conhecidos simplesmente como ‘mineradores’ no ecossistema Waves) recebem taxas de transação dos blocos que processam, mas não recebem recompensas em bloco.
O sistema de Prova de Participação Leased (LPoS) foi lançado em maio de 2017, permitindo que os usuários do cliente lite da Waves – aqueles que não executam um nó completo – arrendem seus tokens WAVES para nós de mineração. Os WAVES arrendados são bloqueados na conta do usuário e não podem ser transferidos ou negociados.
No entanto, os tokens permanecem sob o controle total do proprietário da conta e os arrendamentos podem ser cancelados a qualquer momento. Devido às despesas técnicas associadas à execução de um nó de mineração e à necessidade de estar online 24 horas por dia, apenas uma proporção relativamente pequena da comunidade Waves executa nós (uma lista de geradores de blocos pode ser encontrada em https://dev.pywaves.org/generators/).
Os tokens WAVES arrendados a um nó de mineração são usados para aumentar o peso da participação do minerador, o que, por sua vez, aumenta as chances de que o minerador encontre o próximo bloco. O sistema de Prova de Participação Leased aprimora a segurança da rede de pelo menos duas formas. Em primeiro lugar, quanto mais WAVES forem usados para segurar a rede, melhor, pois fica mais difícil para um atacante acumular os tokens necessários para realizar um ataque de 51%.
Em segundo lugar, os WAVES podem ser arrendados a um nó a partir do endereço de armazenamento frio de um usuário, mas o próprio nó – que permanece online – pode ter apenas um saldo mínimo. Isso reduz significativamente o risco de os tokens WAVES serem hackeados de computadores online, uma vez que os fundos arrendados não são transferidos para o minerador.
Uma nova abordagem para o consenso: Waves-NG
Uma atualização adicional na rede ocorreu em dezembro de 2017, com o lançamento do Waves-NG. Este era um novo protocolo baseado na proposta Bitcoin-NG do professor de TI da Cornell, Emin Gun Sirer.
O protocolo original do Bitcoin escolhe cada minerador retrospectivamente. Após um bloco ser 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 o mempool (pool de memória), onde permanecerão pendentes até que um minerador as colete e valide.
Embora os protocolos do Bitcoin e do Bitcoin-NG sejam considerados sistemas tolerantes a falhas bizantinas (BFT), este último foi proposto em 2015 como uma alternativa escalável com base em um mecanismo de trabalho diferente. Em um sistema Bitcoin-NG, o próximo minerador é escolhido antecipadamente e esse minerador cria um ‘bloco-chave’ vazio – que é o bloco que será adicionado à blockchain.
Pequenos blocos chamados ‘microblocos’ (consistindo de algumas transações cada) são adicionados em tempo real a esse bloco-chave. Usando uma analogia cotidiana, isso é como adicionar várias sacolas de compras (microblocos) a um carrinho (bloco-chave), antes de levar o carrinho cheio para 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 ideia para uma rede de prova de participação, criando o protocolo Waves-NG – a primeira implementação do Bitcoin-NG para uma blockchain aberta e pública.
Uma adição adicional ao ecossistema foram as Transferências em Massa. Elas permitem que até 100 transferências sejam agrupadas em uma única transação, com taxas reduzidas.
O limite de 100 transações por Transferência em Massa foi escolhido como um compromisso entre adicionar capacidade e conveniência significativas, por um lado, e limitar a capacidade de enviar lotes muito grandes de transações de baixo custo de uma só vez, por outro lado. Se forem necessárias mais transferências, várias Transferências em Massa podem ser enviadas sequencialmente.
Em outras palavras, os usuários podem simplesmente escolher uma Transferência em Massa como um tipo diferente de ‘transação de envio’, permitindo que incluam até 100 destinatários em uma única transação. Além disso, os endereços de destino podem ser fornecidos por meio de JSON ou carregados de um arquivo CSV, tornando simples e eficiente a realização de distribuições aéreas em grande escala ou pagamentos semanais para aqueles que arrendam seus tokens WAVES para nós de mineração. Combinada com o Waves-NG, a funcionalidade de Transferência em Massa permitiu uma taxa de transações muito alta na rede.
Foram realizados diversos testes de estresse na rede Waves para avaliar o potencial de taxa de transações do novo protocolo. Em outubro de 2018, um grande teste de estresse foi realizado na MainNet. Isso demonstrou que o protocolo blockchain público e aberto (não apenas um TestNet limitado e controlado) poderia suportar mais de 6,1 milhões de transações em um período de 24 horas – uma média de 4.200 transações por minuto ou 71 transações por segundo, com taxa de transferência máxima atingindo centenas de transações por segundo.
Considerações finais
O sistema de Prova de Participação Leased permitiu que usuários comuns, sem especialização técnica, ajudassem a garantir a rede Waves, arrendando seus tokens WAVES para nós completos sem perder o controle de seus tokens.
Enquanto isso, o Waves-NG possibilitou uma taxa de transferência de até 100 TPS, que é uma ordem de grandeza maior do que muitas blockchains. As taxas são baixas porque não há necessidade de pagar aos mineradores com recompensas em bloco para compensá-los pelos altos custos de eletricidade e hardware caro.
A escalabilidade on-chain tem sido uma prioridade para a Waves, mas há limites para a extensão que qualquer blockchain pode escalar dessa maneira 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 que sejam necessárias soluções adicionais de escalabilidade.
A Waves está atualmente explorando opções para uma solução de escalabilidade de segunda camada envolvendo sidechains, permitindo que um grande número de transações seja processado em uma cadeia paralela, mas, em última análise, garantido na blockchain principal da Waves.
FAQs
Posso usar o protocolo Waves-NG em qualquer blockchain?
Não, o protocolo Waves-NG foi projetado especificamente para a plataforma Waves e não é diretamente compatível com outras blockchains.
O aluguel de criptomoedas no Consenso de Prova de Participação Leased é seguro?
Sim, o aluguel é seguro, pois não envolve a transferência de propriedade das moedas, apenas o direito de participar do processo de validação.
O protocolo Waves-NG torna a rede completamente resistente a congestionamentos?
Embora o protocolo ajude a reduzir a latência, congestionamentos extremos ainda podem afetar a rede em casos de alta demanda.
A combinação dessas duas abordagens é usada em outras blockchains?
Sim, várias blockchains estão explorando maneiras de combinar diferentes mecanismos de consenso e protocolos para melhorar o desempenho.
Os protocolos podem ser atualizados para incorporar essas inovações?
Sim, muitas blockchains podem implementar atualizações para incorporar novos mecanismos de consenso e protocolos que melhoram sua eficiência e escalabilidade.