Entendendo os Masternodes

Os Masternodes, antes exclusivos da rede Dash, estão se tornando populares à medida que a tecnologia é colocada em outros blockchains. Esta seção da documentação descreve os princípios e mecanismos dos masternodes e os serviços que eles fornecem especificamente para a rede do Dash.

Simplificando, um masternode é um servidor com uma cópia completa do blockchain, que garante um determinado nível mínimo de desempenho e funcionalidade para executar determinadas tarefas relacionadas à validação de bloco, bem como PrivateSend e InstantSend, como recursos de anonimato e transação instantânea. no Dash são chamados. Os masternodes são pagos por este serviço, usando um conceito conhecido como Prova de Serviço. Isto é, além da prova de trabalho feita por mineiros para garantir o blockchain. Os Masternodes também podem votar governança e propostas de financiamento, com cada masternode recebendo um voto (sim/não/abstenção) em cada proposta submetida ao sistema.

Qualquer um pode executar um masternode. O objetivo é ter descentralização suficiente para garantir que nenhuma pessoa individual controle uma fração significativa dos masternodes. No entanto, para evitar o inchaço da rede com masternodes desnecessários ou incentivar os operadores imprudentes, há uma condição que precisa ser cumprida: prova de propriedade de 1000 Dash. As moedas não precisam estar no masternode, mas precisam ser mantidas de uma maneira que seja transparente para toda a rede. Se o proprietário move ou gasta essas moedas, o masternode pára de funcionar e o pagamento é interrompido.

Masternodes são pagos pela rede pelos serviços PrivateSend, InstantSend e de governança que eles fornecem. 45% da recompensa em bloco é paga aos masternodes, 45% aos mineiros e 10% ao orçamento. Na prática, metade da recompensa de um bloco normal vai para o mineiro e metade para o masternode. Em seguida, a cada 16.616 blocos (aproximadamente 30,29 dias), é criado um superbloco que contém todo o pagamento de 10% para os vencedores da proposta orçamentária. Masternodes são selecionados aleatoriamente para pagamento em cada bloco (aproximadamente a cada 2,6 minutos) de uma lista, uma vez que atingem o top 10% da contagem total de masternodes, e movidos para o final da lista após o pagamento. À medida que mais masternodes são criados, a duração entre os pagamentos aumenta. Devido ao algoritmo de seleção, há sempre um aspecto de aleatoriedade na seleção de pagamento, mas a longo prazo, todos os proprietários de masternode devem receber pagamentos semelhantes. Se o colateral por trás de um masternode for gasto, ou se um masternode parar de fornecer serviços para a rede por mais de uma hora, ele será removido da lista até que o serviço normal seja retomado. Desta forma, os masternodes são incentivados a fornecer serviços eficientes e confiáveis ​​para a rede.

Ter tantos servidores mantendo uma cópia completa do blockchain e trabalhando para a moeda pode ser extremamente útil. Graças ao sistema de recompensas, não há risco de não ter masternodes suficientes, e os desenvolvedores podem contar com eles rapidamente implementando qualquer novo recurso descentralizado que desejarem implementar. É aí que reside a verdadeira força do Dash - um sistema incentivado de milhares de servidores distribuídos trabalhando 24x7 significa que o Dash pode escalar com mais eficiência e implantar serviços mais rapidamente do que um blockchain executado inteiramente por voluntários não remunerados. Quanto mais masternodes, melhor e mais segura a rede do Dash.

Em março de 2018, a rede Dash tem mais de 4700 masternodes localizados em mais de 41 países e hospedado em mais de 100 ISPs. A recompensa em bloco é de aproximadamente 3.34 Dash, então o masternode selecionado recebe 1.67 Dash por pagamento ou aproximadamente 6 Dash por mês. A recompensa em bloco diminui em 7.14% aproximadamente uma vez por ano, de modo que os ganhos anuais de um proprietário de masternode são aproximadamente 7% da garantia e diminuirão com o tempo, conforme calculado aqui. Veja esta ferramenta para calcular as taxas de pagamento em tempo real e este site ou várias estatísticas em tempo real na rede masternode.

Masternodes vs. mineração

Dash, como o Bitcoin e a maioria das outras criptomoedas, é baseado em um registro descentralizado de todas as transações, conhecido como blockchain. Este blockchain é garantido através de um mecanismo de consenso; no caso do Dash e do Bitcoin, o mecanismo de consenso é o Proof of Work (PoW). Mineração tentam resolver problemas difíceis com computadores especializados e, quando resolvem o problema, recebem o direito de adicionar um novo bloco ao blockchain. Se todas as outras pessoas que executam o software concordarem que o problema foi resolvido corretamente, o bloco é adicionado ao blockchain e o minerador é recompensado.

O Dash funciona um pouco diferente do Bitcoin, porque tem uma rede de dois níveis. A segunda camada é acionada por masternodes (Full Nodes), que permitem a privacidade financeira (PrivateSend), transações instantâneas (InstantSend) e o sistema descentralizado de governança e orçamento. Como esse segundo nível é tão importante, os masternodes também são recompensados quando os mineiros descobrem novos blocos. A distribuição é a seguinte: 45% da recompensa em bloco vai para a mineradora, 45% para os masternodes e 10% para o sistema de orçamento (criado por superblocos todos os meses).

O sistema masternode é referido como Prova de Serviço (PoSe), uma vez que os masternodes fornecem serviços cruciais para a rede. De fato, toda a rede é supervisionada pelos masternodes, que têm o poder de rejeitar os blocos mal formados dos mineiros. Se um mineiro tentasse levar a recompensa do bloco inteiro para si ou tentasse executar uma versão antiga do software Dash, a rede masternode ficaria órfã desse bloco, e não seria adicionado ao blockchain.

Em suma, os mineradores tem poder a primeira camada, que é o básico de envio e o recebimento de fundos e prevenção de doublespending. Masternodes tem poder da segunda camada, que fornecem os recursos adicionais que tornam a Dash diferente de outros criptomoedas. E computadores de mineração não podem servir como masternodes. Além disso, cada masternode é «protegido» por 1000 DASH. Essas DASH permaneçam sob o controle exclusivo de seu proprietário em todos os momentos e ainda pode ser gasto livremente. Os fundos não são bloqueados de forma alguma. No entanto, se os fundos são movidos ou gasto, o dono do masternode vai ficar off-line e parar de receber recompensas.

Lógica de pagamento

Os pagamentos de masternode na versão 12 do Dash são determinados usando uma fila determinística completamente descentralizada com seleção probabilística.

Lista Global

Todo masternode aparece na lista global. Sua posição nessa lista é determinada pelo tempo decorrido desde o último pagamento, de acordo com a rede, não pelo blockchain. Novos masternodes juntando a rede e masternodes recebendo pagamento são colocados no final da lista. Os masternodes em execução, ativos, que são reiniciados usando os comandos rpc “masternode start” ou “masternode start-alias” também são colocados no final da lista. Usar o novo comando rpc “masternode start-missing” evita isso. Como os masternodes são movidos para o final da lista global, os masternodes restantes migram lentamente para o topo da lista. Quando um masternode atinge os 10% da lista global, ele é elegível para seleção no pool de seleção.

Pool de seleção

O pool de seleção é o top 10% da lista global. Seu tamanho é determinado pela contagem total de masternodes. Por exemplo, se houver 4500 masternodes ativos, os 450 principais masternodes da lista global serão elegíveis para seleção. Uma vez no pool de seleção, a seleção para pagamento é determinada pela entropia hash do bloco. O bloco hash 100 blocos atrás determina qual masternode será selecionado para pagamento. Um duplo SHA256 do hash e índice de transação de financiamento para todos os masternodes no pool de seleção é comparado com o hash de prova de trabalho 100 blocks atrás. O masternode com o valor de hash numérico mais próximo daquele hash de bloco é selecionado para pagamento.

Probabilidades

Como a seleção é determinada pela entropia hash do bloco, é impossível prever quando um pagamento ocorrerá. Os operadores da Masternode devem esperar variações consideráveis nos intervalos de pagamento ao longo do tempo. Depois que um masternode entra no pool de seleção, os pagamentos se tornam uma probabilidade. As probabilidades neste exemplo são calculadas usando um tamanho de conjunto atual assumido de 450 (em total de 4500 masternodes). Os nós no conjunto de seleção são selecionados para recompensas aleatoriamente, ou seja, a probabilidade de ser selecionado em qualquer bloco é 1/450.

A tabela abaixo mostra o provável de um nó elegível ser selecionado para pagamento em um determinado período de tempo. Por exemplo, a probabilidade de um nó elegível ser selecionado dentro de 12 horas é de cerca de 46%. A tabela não (e não pode) nos diz a probabilidade de ser selecionada após um determinado período de tempo. Por exemplo, se você não tiver sido selecionado nas últimas 12 horas — e sabemos que desta tabela há cerca de 54% de chance de isso acontecer — a probabilidade de ser selecionado no próximo bloco é não 46% . Permanece 1/450. Juntando tudo isso, se você tem um nó qualificado e, digamos, 48 horas se passaram sem pagamento, então você teve muito azar, pois há menos de 10% de chance de isso acontecer. Mas, suas chances de serem selecionadas no próximo bloco permanecem as mesmas de qualquer bloco, ou seja, 1/450.

Quando um nó é selecionado para pagamento, ele é movido para o final da lista e não pode ser selecionado novamente até que ele entre novamente no pool de seleção.

Horas Blocos Probabilidade
1 23.07 5.00%
2 46.14 9.76%
3 69.21 14.27%
4 92.28 18.56%
6 138.42 26.50%
8 184.56 33.67%
10 230.70 40.14%
12 276.84 45.98%
18 415.26 60.30%
24 553.68 70.82%
30 692.10 78.56%
36 830.52 84.24%
42 968.94 88.42%
48 1107.36 91.49%
72 1661.04 97.52%
96 2214.72 99.28%

Você pode executar o código (escrito pelo membro da comunidade moocowmoo usado para criar a tabela acima aqui.

Seleção de quórum

As transações InstantSend na versão 12 do Dash são protegidas usando um consenso de masternodes determinados. Esse conjunto de masternodes é informalmente chamado de quorum e deve estar em um acordo majoritário, pelo menos seis em dez, para um bloqueio bem-sucedido das entradas de transação. Vários quoruns são auto-selecionados para cada entrada em uma transação InstantSend usando a distância matemática entre o hash de cada entrada e o conjunto de transações de financiamento do masternode.

Cada masternode que recebe a solicitação de bloqueio de transação do InstantSend compara o hash da transação de financiamento do masternode com o hash da entrada solicitando o bloqueio. Depois de validar as entradas não são gastas, os dez masternodes mais longe deste hash transmitiram sua aceitação da fechadura.

Todas as entradas do InstantSend devem ter pelo menos seis blocos ou a transação será rejeitada.

Requisitos de Masternode

  • 1000 Dash: Indiscutivelmente a parte mais difícil. Dash pode ser obtido em trocas como Poloniex, Bittrex, Kraken e LiveCoin. O serviço da Shapeshift também é um excelente caminho.
  • Um servidor ou VPS executando o Linux: Os guias mais recentes usam o Ubuntu 16.04 LTS. Recomendamos serviços VPS como Vultr e DigitalOcean, embora qualquer provedor decente faça isso. Geralmente, uma instância com especificações de baixa a média serve, embora os requisitos de desempenho aumentem de acordo com esse roteiro.
  • Um endereço IP dedicado: Estes geralmente vêm com o VPS/servidor.
  • Um pouco de tempo e (coração): Masternodes costumava exigir uma configuração complexa, mas ferramentas como o Dashman agora simplificam bastante o processo.

Além do Dash 1000 realizado em garantia, os masternodes também possuem requisitos mínimos de hardware. A partir da versão 12.1, estes requisitos são os seguintes:

  Mínimo Recomendado
CPU 1x 1 GHz 1x 2 GHz
RAM 1 GB 2 GB
Disco 8 GB 16 GB
Network 400 GB/mth 1 TB/mth

O uso de largura de banda da Masternode varia entre 300 e 500 GB por mês e crescerá conforme a rede.

Dash Evolution

Os requisitos exatos de hardware para os masternodes do Dash Evolution ainda precisam ser determinados, embora alguns indicadores possam ser extraídos do roadmap e isto blog post. Deve ser possível executar o dash masternodes em servidores VPS normais até que o tamanho do bloco atinja aproximadamente 20 MB, após o qual será necessário um hardware personalizado, como GPUs e, eventualmente, ASICs.