O que é Nominated Proof of Stake e como funciona?

O que é Nominated Proof of Stake?
O Nominated Proof of Stake, normalmente abreviado como NPoS, é uma variante de Proof of Stake em que os titulares de tokens nomeiam candidatos a validador e o protocolo escolhe, a partir destes, um conjunto ativo de validadores. Estes validadores ativos executam depois as tarefas técnicas necessárias para proteger a blockchain.
No Proof of Stake, os participantes bloqueiam tokens como garantia económica. Esta garantia chama-se stake. O NPoS acrescenta uma divisão clara de funções: os validadores gerem a infraestrutura técnica, enquanto os nomeadores determinam quais os candidatos a validador que pretendem apoiar com o seu stake.
Assim, um nomeador não precisa de operar o seu próprio nó de validador. Um nó é um computador que se liga à rede e executa as regras da blockchain. O nomeador bloqueia tokens e indica quais os candidatos a validador que parecem fiáveis. O protocolo usa estas preferências durante uma eleição.
O NPoS é sobretudo conhecido na Polkadot e na Kusama. Na Polkadot, o NPoS não é todo o mecanismo de consenso. Este seleciona e protege economicamente o conjunto de validadores. Depois, os validadores produzem blocos com BABE e asseguram a finalidade com GRANDPA. Finalidade significa que um bloco foi confirmado de forma definitiva e já não será substituído por outra versão da blockchain.
Pontos principais
- O Nominated Proof of Stake é uma variante de Proof-of-Stake para escolher validadores.
- Os nomeadores bloqueiam tokens e nomeiam candidatos a validador sem gerir um nó de validador.
- Os validadores executam as tarefas técnicas de consenso e segurança da rede.
- O protocolo determina quais os candidatos que se tornam ativos e como o apoio é distribuído.
- Na Polkadot, o NPoS seleciona validadores, enquanto o BABE produz blocos e o GRANDPA assegura a finalidade.
Como funciona o Nominated Proof of Stake?
O NPoS funciona ao usar as preferências dos nomeadores e os seus tokens bloqueados para a eleição de um grupo limitado de validadores ativos. Na Polkadot, o processo decorre, em termos gerais, da seguinte forma.
-
Um candidato regista-se como validador
Um candidato a validador regista que pretende participar. O candidato tem de gerir um nó e ser capaz de executar, de forma fiável, as tarefas de um validador ativo.
-
Os nomeadores escolhem candidatos
Um nomeador bloqueia tokens e elabora uma lista limitada de candidatos a validador. Com isto, o nomeador indica quais os candidatos que considera adequados.
-
O protocolo realiza uma eleição
O protocolo escolhe um número limitado de validadores ativos. Para isto, não conta apenas o volume de apoio que um candidato tem. A eleição também procura distribuir o apoio de forma mais equilibrada pelo conjunto de validadores escolhidos e considerar proporcionalmente as preferências dos nomeadores.
-
O stake é atribuído
Uma nomeação não é uma instrução fixa em que todos os tokens vão automaticamente para um candidato escolhido. O resultado da eleição determina a quais validadores ativos o stake de um nomeador é atribuído nesse período. Assim, parte dos candidatos escolhidos por um nomeador pode tornar-se ativa, enquanto outros candidatos não são selecionados.
-
O conjunto ativo executa as funções da rede
Na Polkadot, o conjunto ativo de validadores é renovado por era. Uma era dura aí cerca de 24 horas. Isto permite que a composição dos validadores ativos possa mudar de era para era.
A eleição usa métodos da teoria das eleições que são relacionados com Phragmén. O objetivo não é simplesmente escolher os candidatos com maior apoio bruto. O protocolo procura usar o máximo de stake possível, dar apoio suficiente aos validadores escolhidos e reduzir grandes diferenças nesse apoio.
O cálculo desta distribuição alargada é feito fora da blockchain e depois é submetido e verificado na blockchain. Assim, a blockchain não precisa de executar todos os passos de cálculo pesado em cada mudança de era.
Exemplo: Suponha que um nomeador nomeia três candidatos a validador. Se dois desses candidatos forem escolhidos, o protocolo pode atribuir os tokens bloqueados desse nomeador a esses dois validadores ativos. O nomeador não precisa de determinar esta distribuição manualmente.
Que papel desempenham os nomeadores e os validadores?
Os nomeadores escolhem candidatos a validador com o seu stake, enquanto os validadores executam as tarefas técnicas necessárias para que a blockchain funcione. Ambos os papéis são importantes, mas as responsabilidades diferem claramente.
Um validador opera um nó e participa no consenso. O consenso é o processo pelo qual os participantes de uma blockchain determinam em conjunto quais os blocos e transações válidos. Na Polkadot, os validadores, entre outras funções, produzem blocos, validam blocos de parachain e participam na finalidade.
Um nomeador normalmente não gere um nó de validador. Em vez disso, o nomeador bloqueia tokens e seleciona candidatos considerados fiáveis. Esta escolha influencia a probabilidade de os candidatos obterem apoio suficiente para se tornarem ativos.
Nomear não é uma forma totalmente passiva de staking. Um nomeador deve continuar a avaliar candidatos a validador. Os pontos importantes incluem, entre outros:
- o desempenho do validador;
- a percentagem de comissão;
- o próprio stake do validador;
- slashes anteriores;
- a probabilidade de o validador se tornar ativo;
- possíveis ligações técnicas ou económicas entre validadores.
Um slash é uma sanção em que um protocolo pode retirar parte da garantia após uma infração qualificada. Os validadores enfrentam riscos operacionais, por exemplo, por indisponibilidade, uma configuração incorreta ou assinatura dupla. O validador gere a infraestrutura do nó e as chaves. O nomeador enfrenta sobretudo risco de seleção e de alocação: uma escolha errada ou uma nomeação não ativa pode significar que não se recebe qualquer recompensa.
Um nomeador só recebe recompensas de staking quando o stake é efetivamente atribuído a um validador ativo que esteja a gerar recompensas. Assim, apenas bloquear tokens ou indicar candidatos não é suficiente.
Como são distribuídas as recompensas no Nominated Proof of Stake?
Na Polkadot, as recompensas são primeiro determinadas por validador ativo e depois distribuídas entre o validador e os nomeadores ativos por detrás desse validador. A recompensa não depende exclusivamente do volume de apoio de um validador.
Em princípio, os validadores ativos recebem uma recompensa bruta semelhante dentro do conjunto de validadores. O montante exato pode variar por era devido a era points. Era points são pontos que os validadores ganham pelas tarefas executadas, como produzir blocos da relay chain e emitir declarações de validade para blocos de parachain.
Depois, a distribuição ocorre em duas etapas:
-
A comissão vai primeiro para o validador
O validador define uma percentagem de comissão. Esta percentagem é primeiro deduzida da recompensa bruta. Uma comissão mais elevada deixa, assim, menos recompensa para os outros participantes por detrás desse validador.
-
O montante restante é distribuído proporcionalmente
O que sobra depois da comissão é distribuído pro rata. Isto significa que cada participante recebe uma parte adequada à sua quota do stake por detrás desse validador. O próprio validador também participa com base no seu stake ativo.
O validador não tem custody sobre as recompensas dos nomeadores. Custody significa o controlo sobre a criptomoeda de alguém. A blockchain cria e distribui as recompensas diretamente aos titulares do direito quando é executado um payout.
As gorjetas de transações são independentes destas recompensas de staking. Na Polkadot, essas gorjetas vão integralmente para o validador que as recebe.
Exemplo: Um validador ativo recebe uma recompensa bruta. Primeiro, a comissão definida para o validador é separada. A parte restante é distribuída entre o validador e os nomeadores ativos, com base na quota de stake de cada um por detrás desse validador.
Quais são as vantagens do Nominated Proof of Stake?
O NPoS permite que os titulares de tokens contribuam para a segurança económica de uma blockchain sem terem de operar um nó de validador. Isto reduz a barreira técnica para o staking.
As principais vantagens são:
- Participação mais acessível: Os nomeadores podem bloquear tokens e selecionar candidatos sem terem de gerir o hardware, a ligação e as chaves de um nó de validador.
- Diversificação de preferências: Um nomeador pode nomear vários candidatos. Assim, o nomeador não fica totalmente dependente de um único candidato que pode não se tornar ativo.
- Apoio mais equilibrado: Os métodos de eleição são concebidos para distribuir melhor o apoio pelo conjunto de validadores escolhidos. Isto pode impedir que todo o apoio flua automaticamente para um pequeno grupo de validadores populares.
- Representação proporcional: A eleição tenta considerar proporcionalmente as preferências dos nomeadores ao escolher vários validadores.
- Interesses económicos partilhados: Validadores e nomeadores têm interesse em que o conjunto de validadores escolhidos funcione corretamente. Um bom desempenho pode gerar recompensas, enquanto comportamentos indevidos qualificados podem ter consequências.
Na Polkadot, a estrutura de recompensas também faz com que um validador não receba automaticamente uma recompensa bruta de validador mais elevada apenas por ter muito mais apoio. Este design torna menos atrativo concentrar todo o stake num pequeno número de validadores.
Estas vantagens são objetivos de conceção, não uma garantia. Também uma rede NPoS pode, na prática, ter risco de concentração, por exemplo, quando diferentes validadores são geridos pela mesma entidade ou pelo mesmo prestador de serviços de infraestrutura.
Que riscos e limitações tem o Nominated Proof of Stake?
O NPoS reduz a barreira técnica para o staking, mas não elimina os riscos. Os nomeadores continuam a ser responsáveis pelas suas escolhas e por cumprir as regras da rede.
Um primeiro risco é que um nomeador não receba recompensas. Isto pode acontecer quando nenhum dos candidatos escolhidos se torna ativo, ou quando o stake do nomeador não é atribuído a um validador ativo. Na Polkadot, os nomeadores são priorizados para a entrada na eleição com base no stake bloqueado. O minimum active bond é dinâmico. Assim, os tokens podem estar bloqueados sem que um nomeador mais pequeno fique ativo ou receba recompensas.
Além disso, o sistema é tecnicamente complexo. A eleição tem de processar um grande conjunto de nomeadores e candidatos a validador. Por isso, nem todos os nomeadores são necessariamente incluídos na entrada da eleição. O cálculo ocorre fora da blockchain e depois tem de poder ser verificado dentro das regras da blockchain.
O risco associado aos validadores também continua a ser importante. Um validador pode ficar indisponível, estar mal configurado ou violar regras de consenso. Exemplos de comportamentos indevidos graves incluem equivocation, em que um validador assina mensagens contraditórias, e votos inválidos. O protocolo pode então desativar um validador ou aplicar um slash.
Além disso, as percentagens de comissão e o desempenho podem mudar. Uma comissão baixa não é garantia de funcionamento fiável, e uma identidade de validador conhecida também não garante um bom resultado. Por isso, os nomeadores devem rever regularmente as suas escolhas.
Múltiplas nomeações também não oferecem proteção total contra riscos correlacionados. Suponha que vários validadores escolhidos são tecnicamente geridos pelo mesmo operador. Numa falha, podem todos ficar indisponíveis ao mesmo tempo. O mesmo se aplica quando vários validadores estão ligados económica ou organizacionalmente à mesma entidade.
Por fim, o NPoS não protege contra todos os riscos em torno das criptomoedas. O preço de mercado do token em staking pode descer. Também a perda de acesso às chaves privadas, problemas com uma carteira de criptomoedas e vulnerabilidades em smart contracts fora do protocolo de staking não estão abrangidos pela proteção do NPoS.
Qual é a diferença entre o Nominated Proof of Stake e outros mecanismos de consenso?
O NPoS difere de outros mecanismos de consenso porque é sobretudo um sistema de seleção de validadores e de segurança económica, não uma descrição completa de todos os passos do consenso. Para que a comparação seja correta, é importante distinguir duas camadas.
A primeira camada determina quem pode ser validador e qual o stake por detrás desse validador. O NPoS funciona nesta camada. A segunda camada determina como os blocos são produzidos, qual a chain seguida quando existem vários blocos e quando os blocos são definitivos. Isto corresponde à produção de blocos, fork choice e finalidade.
Um protocolo pode combinar o NPoS com outros algoritmos para essa segunda camada. Na Polkadot, o NPoS escolhe o conjunto de validadores, o BABE produz blocos e o GRANDPA assegura a finalidade. Por isso, o NPoS não é comparável, um-para-um, com uma stack de consenso completa que inclua todas as tarefas por si só.
Qual é a diferença em relação ao Proof of Stake?
O NPoS é uma forma específica de Proof of Stake, enquanto Proof of Stake é uma categoria ampla. No PoS, o stake económico ajuda na seleção ou participação de validadores. A execução precisa varia bastante por blockchain.
Numa configuração PoS simples e direta, o stake pode influenciar diretamente quais os validadores que participam. O NPoS acrescenta um papel explícito de nomeador. Os nomeadores definem uma lista de candidatos fiáveis e, depois, um algoritmo de eleição determina tanto os validadores ativos como a distribuição do apoio.
Assim, o objetivo não é apenas escolher os candidatos com maior apoio bruto. O NPoS também procura equilibrar o apoio pelo conjunto escolhido e representar proporcionalmente as preferências dos nomeadores.
Na Polkadot, o stake influencia sobretudo antes das funções técnicas de consenso, durante a eleição NPoS. Depois de os validadores serem selecionados, estes são tratados com peso igual no conjunto de autoridades do BABE e do GRANDPA. Assim, um stake maior não dá permanentemente a um validador escolhido mais peso de voto.
Qual é a diferença em relação ao Delegated Proof of Stake?
O NPoS e o Delegated Proof of Stake, ou DPoS, permitem ambos que os titulares de tokens influenciem os produtores de blocos ou validadores, mas são conceções diferentes. Os termos não são intercambiáveis.
Em sistemas DPoS clássicos, os titulares de tokens normalmente votam num grupo relativamente pequeno de delegates ou witnesses que produzem blocos. Isto é uma eleição representativa, ponderada pelo stake, de produtores de blocos.
No NPoS na Polkadot, os utilizadores nomeiam vários candidatos a validador. Depois, o protocolo executa uma eleição proporcional com vários vencedores. Além disso, calcula como o apoio dos nomeadores é distribuído pelos validadores escolhidos.
A diferença mais importante é o objetivo explícito do NPoS de representar proporcionalmente as preferências dos nomeadores e equilibrar o apoio dentro do conjunto ativo de validadores. As conceções DPoS focam-se sobretudo em eleger delegates ou witnesses. As regras exatas de voto, seleção e recompensas variam consoante a blockchain DPoS.
Um nomeador no NPoS não entrega automaticamente o controlo dos seus tokens a um validador. O nomeador indica preferências por candidatos, enquanto o protocolo determina depois qual a alocação ativa resultante da eleição.
Considerações finais
O Nominated Proof of Stake é uma variante de Proof of Stake que permite que os titulares de tokens participem, através de nomeações, na seleção e segurança económica de validadores. Os nomeadores não precisam de operar um nó, mas devem avaliar cuidadosamente quais os candidatos a validador que nomeiam.
O núcleo do NPoS é a eleição: o protocolo escolhe um conjunto ativo de validadores e distribui o apoio dos nomeadores por esse conjunto. Este design procura tornar a participação mais acessível e distribuir o apoio de forma mais equilibrada do que se apenas os maiores candidatos dominassem.
Em contrapartida, existem responsabilidades e riscos claros. Um nomeador só recebe recompensas com uma atribuição ativa, as comissões e o desempenho podem mudar e validadores correlacionados podem causar riscos conjuntos. Por isso, o NPoS não é uma forma passiva de bloquear criptomoedas, mas um modelo em que uma boa seleção de validadores e uma verificação regular continuam a ser importantes.