# Prova de participação delegada

Prova de participação delegada (DPOS, da sigla em inglês Delegated Proof of Stake) é um tipo de algoritmo usado por redes de blockchain de criptomoedas para alcançar consenso distribuído.
DPOS utiliza votação em tempo real combinada com um sistema social de reputação para alcançar consenso. Esse mecanismo pode ser visto como o protocolo de consenso menos centralizado quando comparado com todos os outros, uma vez que é o mais inclusivo. Todo usuário que possui tokens pode exercer um grau de influência sobre o que acontece na rede.
De acordo com os seus desenvolvedores, este algoritmo tenta resolver os problemas da Prova de trabalho e da Prova de participação, pois implementa uma camada de democracia tecnológica para reduzir os efeitos negativos da centralização.

## Desenvolvedor

O protocolo de prova de participação delegada foi desenvolvido por Dan Larimer em 2014. Larimer participou do desenvolvimento da Bitshares, uma plataforma de serviços financeiros baseada em blockchain; Steemit, uma plataforma de publicação alimentada por criptomoeda; e a da EOS.IO, uma blockchain que funciona como um contrato inteligente para implantação de aplicativos descentralizados (dApps) e corporações autônomas descentralizadas. Todos os sistemas mencionados utilizam o protocolo de participação delegada para verificar as transações.

## Funcionamento

O algoritmo da prova de participação delegada é dividido em duas partes: eleger um grupo de produtores de blocos e agendar a produção. O processo de eleição garante que os stakeholders estarão no controle, pois são eles quem perdem mais quando a rede não opera como deveria. A forma como as pessoas são eleitas tem pouco impacto em como o consenso é alcançado. São feitas votações para eleger dois tipos de usuários especiais: as testemunhas e os delegados.

### Produção de blocos

No protocolo de prova de participação delegada, os stakeholders podem eleger qualquer número de testemunhas para produzir blocos. Um bloco é um grupo de transações que atualizam o estado da base de dados. É permitido um voto por ação por testemunha a cada conta, um processo conhecido como votação de aprovação. As N principais testemunhas por aprovação total são selecionadas. O número (N) de testemunhas é definido de tal forma que pelo menos 50% das partes votantes acreditam que há descentralização suficiente. Quando as partes interessadas expressam o número desejado de testemunhas, elas devem votar em pelo menos o número de testemunhas que foi expressado.
Cada vez que uma testemunha produz um bloco, ela é paga por seus serviços. A quantia é determinada pelos stakeholders através de seus delegados eleitos. Se uma testemunha não consegue produzir um bloco, ela não é paga e pode ser removida da posição como testemunha no futuro. A lista de testemunhas ativas é atualizada uma vez a cada intervalo de manutenção (um dia), quando os votos são contabilizados. As testemunhas são aleatorizadas e é dada uma oportunidade a cada testemunha para produzir um bloco em um período fixo de um bloco a cada 2 segundos. Depois que todas as testemunhas tiveram a sua vez, elas são aleatorizadas de novo. Se uma testemunha não produzir um bloco no intervalo de tempo, esse intervalo de tempo será ignorado e a próxima testemunha produzirá o próximo bloco.

### Mudanças de parâmetros

Delegados são eleitos de uma forma semelhante às testemunhas. Um delegado pode se tornar um co-signer em uma conta especial que tem o privilégio de propor mudanças nos parâmetros da rede. Essa conta é conhecida como conta gênesis. Esses parâmetros incluem desde as taxas das transações, ao tamanho dos blocos, à quantia paga às testemunhas ao intervalo dos blocos. Depois que a maioria dos delegados aprova uma proposta de mudança, é concedido aos stakeholders um período de revisão de duas semanas durante o qual estes podem anular as mudanças propostas.
As funções dos delegados envolvem:
* Garantir que seu nó esteja sempre ativo e em execução
* Coletar as transações da rede em blocos
* Assinar e transmitir esses blocos, validando as transações
* Se houver questões em relação ao consenso, a DPOS permite que estas sejam resolvidas de maneira justa e democrática
Esse modelo foi escolhido para assegurar que os delegados não tenham, tecnicamente, nenhum poder direto e que todas as mudanças nos parâmetros da rede seja em última instância, aprovadas pelos stakeholders. Isso é feito para proteger os delegados contra regulações que podem ser aplicadas à gerentes ou administradores de criptomoedas. Diferentemente de testemunhas, delegados não recebem remuneração. No entanto, não se espera que esses parâmetros mudem com frequência.
A conta gênesis tecnicamente pode realizar qualquer ação que qualquer outra conta pode realizar, o que significa que é possível enviar fundos para a conta gênesis ou especificar a conta gênesis como um agente de custódia. A conta gênesis também pode ser usada para para emitir novos ativos. Há um número incontável de aplicativos nos quais os representantes eleitos podem ajudar os interessados a executar tarefas que exijam um alto grau de confiança e responsabilidade.

### Descentralização

Na prova de participação delegada, cada stakeholder tem uma influência diretamente proporcional à sua participação, e nenhum stakeholder é excluído do exercício dessa influência. Todos os outros sistemas de consenso no mercado excluem a grande maioria dos stakeholders de participar, e isso acontece de diversas maneiras. Algumas alternativas usam sistemas apenas para convidados. Outros excluem a participação fazendo com que seja mais caro participar do que ganhar. Há ainda outros sistemas que tecnicamente permitem que todos participem, mas os stakeholders podem ser ignorados por alguns poucos usuários grandes que produzem a grande maioria dos blocos. Apenas a DPOS garante que a produção de blocos seja distribuída uniformemente entre a maioria das pessoas e que todos tenham uma maneira economicamente viável de influenciar quem são essas pessoas.

## Comparação com outros protocolos de consenso

Bitcoin introduziu a Prova de trabalho, na qual os mineradores tem que calcular uma solução (hash) para um problema, onde quanto mais poder o minerador tiver, mais rápido ele consegue encontrar essa solução. O minerador que encontrar a solução primeiro gera o bloco e recebe uma quantia de Bitcoin como recompensa. Isso significa que o minerador recebe um incentivo financeiro para ser o mais rápido. Isso leva a uma competição na rede que aumenta o consumo de energia de toda a rede.
Nxt introduziu o mecanismo de Prova de participação, que remove o elemento de mineração da rede, consequentemente reduzindo o consumo de energia dramaticamente. Nesta criptomoeda, sua participação, i.e. a quantidade de moedas que você possui, determina sua chance de gerar o próximo bloco. Portanto, não existe uma competição como na prova de trabalho, mas existe uma ênfase em aumentar a quantidade de moedas que você possui para aumentar sua chance de gerar um bloco.
O mecanismo da prova de participação delegada foi implementado pela primeira vez na rede Bitshares em 2014. A validação de transações no sistema DPOS depende de um número limitado de delegados, que são eleitos pela comunidade através de um sistema de votação democrático.
A prova de participação delegada e a Prova de participação tradicional são bem diferentes. Uma distinção importante entre prova de participação delegada e prova de participação é que no mecanismo de DPOS, não há um requisito mínimo de moedas para participar. Além disso, em vez da habilidade de produzir blocos do stakeholder ser representada proporcionalmente pela quantidade de moedas que o mesmo possui, os usuários possuem votos proporcionais à sua participação para eleger produtores de blocos.
Prova de participação incentiva usuários que possuem muitas moedas a aumentar seu saldo, mas isso não é necessariamente benéfico para usuários que não possuem tantas moedas. Uma vez que as recompensas são proporcionais à sua participação na rede, usuários com menos moedas frequentemente terão menos recompensas em comparação a usuários que possuem quantidades bem maiores de moedas, o que pode não ser a forma mais justa de distribuir recompensas.
Por outro lado, o algoritmo da prova de participação delegada é mais eficiente e fornece mais descentralização ao oferecer recompensas a mais usuários. Além disso, DPOS fornece transações confirmadas com confiabilidade nas redes que implementam essa tecnologia.

## Vantagens

A prova de participação delegada reduz os potenciais impactos negativos da centralização através do uso de testemunhas. Um total de N testemunhas escolhidas por meio de votação pelos usuários da rede em cada transação realizada é responsável por verificar os blocos.
Ao usar um processo de votação descentralizada, a DPOS é, por definição, mais democrática do que sistemas similares. Em vez de eliminar a necessidade de confiança em conjunto, a DPOS busca assegurar que os delegados que validam os blocos pela rede o façam de maneira correta e sem viés.
Além disso, antes que um bloco possa ser considerado válido, ele passa por um processo de verificação que confirma que o mesmo é confiável. A DPOS elimina a necessidade de esperar até que um certo número de nós não confiáveis verifiquem uma transação antes que ela possa ser confirmada. Esta redução na necessidade de confirmação produz uma redução do tempo de transação, tornando-as mais rápidas.
Na prova de participação delegada a centralização ainda ocorre, mas ela é controlada. Ao contrário de outros métodos de proteção de redes de criptomoedas, em um sistema DPOS cada cliente tem a capacidade de decidir quem é confiável em vez de confiar naqueles com mais recursos. Isso permite que a rede se beneficie das principais vantagens da centralização, e se manter descentralizada ao mesmo tempo. Este sistema funciona por meio de um processo de eleição justa, onde qualquer um pode se tornar um delegado representante da maioria dos usuários.
O mecanismo de prova de participação delegada provou ser um sistema superior uma vez que é o mecanismo de consenso mais descentralizado que existe até o momento. O que permite isto é que embora os stakeholders tenham o poder final, nenhuma única entidade pode controlar o sistema, uma vez que o trabalho chega aos delegados eleitos e às testemunhas. Além disso, o sistema ainda funciona se uma ou mais testemunhas pararem de operar, porque novas testemunhas podem ser eleitas, garantindo uma participação contínua no processo de criação de blocos.

## Críticas

O criador do Ethereum, Vitalik Buterin, argumentou que o uso de Prova de Participação Delegada para validação de transações no EOS.IO torna o sistema vulnerável a compra de votos e a consolidação de poder sobre a rede.

## Plataformas que utilizam Prova de Participação Delegada

* BitShares
* Steemit
* EOS.IO
* Nano
* Lisk
* Ark
* Rise
* Oxycoin
* Shift
* Blockpool
* Kapu
* LWF (Local World Forwarders)
* Lightning BTC