Uma forma mais privada de investir

6 minuto(s) de leitura

Original version: A More Private Way to Stake

Atualizado em:

Escrito em 02.06.2020 por Jamie Holdstock, Decred Developer

A comunidade Decred considera a privacidade um direito humano fundamental.

Proteger a privacidade dos usuários do Decred tem sido um princípio básico do projeto desde o início. Para citar a Constituição do Decred:

Privacidade e segurança são prioridades e devem ser equilibradas com a complexidade de suas implementações. Tecnologia adicional de privacidade e segurança deve ser implementada de forma contínua e incremental, de maneira proativa e sob demanda em resposta a ataques.

No final de 2019, Jake Yocom-Piatt revelou a solução de privacidade muito esperada para o Decred - CoinShuffle++ (CSPP). A introdução do CSPP permite que os usuários anonimizem seu Decred, misturando-os com o fluxo constante de transações de tickets que fluem pela rede como parte de seu mecanismo híbrido de consenso PoW e PoS.

A resposta da comunidade foi enfática. Mais de 22% da oferta de Decred em circulação atualmente reside em UTXOs mistos.

O anúncio do CSPP destacou que seria necessário um trabalho adicional para os usuários do VSP participarem da mixagem. Dado que até 50% dos tickets a qualquer momento são mantidos por VSPs, é razoável estimar que permitir a mixagem de tickets VSP possa dobrar a participação no CSPP.

Depois de trabalhar no problema com David Hill por algumas semanas, tenho o prazer de anunciar que o trabalho em uma nova implementação do VSP está quase completo.

Voting Service Providers

A participação no sistema de Proof-of-Stake do Decred exige o uso contínuo de uma carteira online. Aqueles que não conseguem ou não desejam manter seu próprio computador conectado à Internet 24 horas por dia, 7 dias por semana, podem optar por usar um VSP (Provedor de serviços de votação). Um VSP mantém um conjunto de carteiras de votação online e permitirá que os usuários adicionem seus tickets às carteiras em troca de uma pequena taxa. Os VSPs são totalmente sem custódia - eles nunca têm acesso a nenhum dos fundos de seus usuários - o usuário apenas concede ao VSP o direito de votar em seus tickets.

Até agora, os operadores do VSP ofereciam esse serviço aos usuários executando o dcrstakepool. Este software funciona bem e tem um histórico comprovado de quase quatro anos. Atualmente, aos VSPs que executam o dcrstakepool foram confiados os direitos de voto de mais de 14.500 tickets, com um valor aproximado de 2 milhões de DCR.

Quando um usuário deseja usar um VSP executando dcrstakepool, ele deve comprar seu ticket de uma maneira específica, de modo que uma parte da recompensa do voto no ticket seja paga automaticamente ao VSP. Como resultado, os tickets do VSP têm um footprint on-chain diferente dos tickets comprados pelos usuários, o que os torna identificáveis ​​por um observador externo que realiza análises on-chain. Esse footprint é problemático porque impede os usuários do VSP de aproveitar ao máximo a privacidade oferecida pelos tickets CSPP - VSP não podem ser mixados no mesmo anonimato definido como tickets individuais.

Apresentando o vspd

O vspd é uma implementação do zero de um provedor de serviços de votação (VSP) para a rede Decred. Foi criado com a privacidade do usuário como um objetivo fundamental de design.

O vspd não exige que os tickets sejam comprados com condições especiais, como o pagamento da taxa interna exigida pela dcrstakepool. Os pagamentos de taxas ocorrem como uma transação on-chain completamente independente. Isso permite que a compra dos tickets e o pagamento da taxa sejam mixados no mesmo anonimato definido para tickets individuais.

Os donos de tickets não precisam registrar uma conta no vspd. Isso significa que nenhum endereço de e-mail precisa ser entregue, não há senha para lembrar e nem CAPTCHAs precisam ser resolvidos.

O vspd também oferece as seguintes melhorias para os usuários:

Os operadores de VSP também foram considerados no design do vspd. A dcrstakepool tinha a infeliz propriedade de cobrar pagamentos de taxas com um único endereço reutilizado por usuário. O vspd exige que os clientes solicitem um novo endereço de taxa e valor da taxa para cada ticket, o que não apenas remove a reutilização do endereço, mas também permite que os administradores atualizem facilmente seu valor da taxa como desejarem.

O trabalho de sysadmin e as despesas gerais necessárias também foram reduzidos com as seguintes alterações:

  • Uma instância do etcd-io/bbolt no servidor front-end é usada como a única fonte da verdade:
    • O bbolt não possui a sobrecarga do sysadmin associada à manutenção de um servidor de banco de dados completo, como o MySQL. O vspd cria e mantém automaticamente seu próprio banco de dados.
    • O banco de dados é acessado apenas pelo processo vspd. Não há necessidade de expor o sistema a riscos adicionais, abrindo portas para outros processos acessarem o banco de dados.
  • Não há necessidade de configurar e manter um servidor SMTP para e-mails de registro ou recuperação de senha.
  • Os servidores de carteira com direito a voto exigem apenas que o dcrwallet e o dcrd estejam em execução. Não há mais um processo VSP adicional, ou seja, participante, executando nos servidores de votação.
  • Nenhum endereço de e-mail ou informação pessoal é mantido pelo vspd - não é necessário se preocupar com o GDPR ou outros regulamentos de proteção de dados.
  • Os servidores de votação não precisam mais do dcrd para serem executados com um índice de transação.
  • Não é necessário usar a mesma semente de carteira em cada carteira de votação.

Próximos passos

Como parte essencial da infraestrutura do Decred, fundamental para o bom funcionamento da rede, o vspd é de extrema importância e seu desenvolvimento não pode ser apressado.

Até agora, o vspd só foi testado com uma ferramenta cliente personalizada, não adequada para o uso diário. Não recomendamos executar o vspd na rede principal até que o novo software do servidor tenha sido completamente testado e o código do cliente esteja adequadamente integrado ao dcrwallet. Depois que os tickets vspd puderem ser adquiridos com o dcrwallet, a integração no Decrediton deverá ocorrer logo depois.

É esperado um período de transição de cerca de 12 meses, em que os VSPs possam executar vspd, dcrstakepool ou ambos. Isso evitará interromper a experiência do usuário e protegerá o fluxo constante de compra e votação de tickets, essencial para a rede Decred. Os operadores existentes do VSP podem optar por implantar o vspd juntamente com a implantação existente do dcrstakepool. Os operadores mais novos podem optar por executar apenas o vspd. Prevê-se que, eventualmente, a maioria dos tickets do VSP seja comprada no vspd, as implantações do dcrstakepool possam ser desativadas e o suporte ao dcrstakepool possa ser removido das carteiras.

Conclusão

O lançamento do vspd representa outro passo adicional na missão do Decred de produzir tecnologia de código aberto para benefício público. A habilitação de tickets VSP para serem comprados com fundos mixados por meio do CSPP aumenta o tamanho do conjunto geral de anonimato, o que, por sua vez, fornece um maior nível de privacidade para todos os usuários do Decred.

Para descobrir mais sobre como o vspd é construído e como funciona, o código fonte e alguma documentação estão disponíveis no GitHub.

O Decred Project está sempre procurando desenvolvedores talentosos; portanto, se o vspd ou qualquer outro aspecto do desenvolvimento do Decred lhe interessar, entre no nosso bate-papo e apresente-se.