Repository logo
 
No Thumbnail Available
Publication

Contributions to Permissionless Decentralized Networks for Digital Currencies Based on Delegated Proof of Stake

Use this identifier to reference this record.
Name:Description:Size:Format: 
Tese_Doutoramento_Rui_Morais.pdf1.51 MBAdobe PDF Download

Abstract(s)

With the growing and flourishing of human societies came the desire to exchange what was deemed as valuable, be it a good or a service. Initially this exchange was made directly through barter, either synchronously or asynchronously with debt. The first had the downside of requiring coincidence of wants and the second the need for trust. Both were very inefficient and did not scale well. So, what we call money was invented, which is nothing more than a good that is used as medium of exchange between other goods and services. Since then, money has changed form and has acquired new functions, namely unit of account and store of value. The most recent form of money is digital currency. This money cannot be transferred physically like other forms, so it needs a digital network to be transferred, which can have different characteristics. This thesis concerns a specific type of networks for digital currencies: permissionless, meaning that any participant can have read and write access to the network; decentralized, meaning that no single entity controls the network; and that use Delegated Proof of Stake (DPoS) as a Sybil defence mechanism, to prevent the network from being controlled by malicious actors that create numerous false identities. Its research tries to fulfil the vision that a network for digital currencies, besides being permissionless and decentralized, should be scalable, monetary policy agnostic, anonymous and have high performance. Three different layers of the network are studied: the communication layer, responsible for sending and receiving messages, the transaction layer, responsible for validating those messages, and the consensus layer, responsible for reaching agreement on the state of the network. The first two goals can be achieved in the communication layer. On one hand, a vertical way to scale the system is proposed composed of a peer management and traffic prioritization design based on DPoS, offering an alternative to highly disseminated fee-based models. On the other hand, a horizontal way to scale is presented through database sharding. In the transaction layer, a general framework to make DPoS compatible with anonymity is described. More specifically, two different approaches to achieve amount anonymity are proposed: one based on multi-party computation and the other on the Diffie-Hellman key exchange. Finally, a new decoy selection algorithm, called SimpleDSA, is developed to improve sender anonymity. The consensus layer features two innovative consensus algorithms, Nero and Echidna, and two methods for state machine replication: Sphinx (leader-based) and Cerberus (leaderless). These developments aim to enhance the performance of the network, specifically by decreasing the latency of its state changes and increasing the throughput, i.e., increasing the number of state changes per unit of time. A protocol that instantiates the transaction and consensus layer, called Adamastor, is formalized with security proofs and implemented with a prototype in the Rust language. Benchmarks demonstrate the practicality of the scheme and potential application to decentralized payment systems. While further research is needed, particularly in implementing a fully operational network, it sets a foundation for future advancements. In conclusion, this thesis contributes to the area of knowledge that results from the fusion of economics and computer science, by offering technical solutions for implementing a vision of a more inclusive, fairer, efficient, and secure financial system. The implications of this work are far-reaching, suggesting a future where digital currencies play a significant role in shaping global finance and technology.
Com o crescimento e florescimento das sociedades humanas surgiu o desejo de trocar o que era considerado valioso, quer fosse um bem ou um serviço. Inicialmente, essa troca era feita sem intermediários, de forma síncrona (troca direta) ou assíncrona (troca de favores). A primeira tinha a desvantagem de exigir coincidência de desejos e a segunda a necessidade de confiança entre as partes. Ambas eram muito ineficientes e não escalavam de modo adequado. Por isso, o que chamamos de dinheiro foi inventado, que é nada mais do que um bem que é usado como meio de troca entre outros bens e serviços. Desde então, o dinheiro mudou de forma e adquiriu novas funções, nomeadamente unidade de conta e reserva de valor. A forma mais recente de dinheiro é a moeda digital. Este dinheiro não pode ser transferido fisicamente como outras formas, pelo que precisa de uma rede digital para ser transferido, a qual pode ter diferentes características. Esta tese estuda um tipo específico de redes para moedas digitais: sem permissão (aberta), o que significa que qualquer participante pode ter acesso de leitura e escrita na rede; descentralizada, o que significa, por sua vez, que nenhuma entidade única controla a rede; e que usa Prova de participação delegada Delegated Proof of Stake (DPoS) como um mecanismo Sybil de defesa contra ataques Sybil para evitar que a rede seja controlada por atores maliciosos que criam múltiplas falsas identidades. O objetivo da investigação é cumprir a visão de que uma rede para moedas digitais, para além de ser aberta e descentralizada, deve ser escalável, agnóstica em relação à política monetária, anónima e ter desempenho elevado. Três camadas diferentes da rede são estudadas: a camada de comunicação, responsável por enviar e receber mensagens, a camada de transação, responsável por validar essas mensagens, e a camada de consenso, responsável por chegar a um acordo sobre o estado da rede. Os dois primeiros objetivos podem ser alcançados na camada de comunicação. Por um lado, é proposta uma forma vertical de escalar o sistema composta por uma gestão de pares e design de prioritização de tráfego baseado em DPoS, oferecendo uma alternativa aos modelos baseados em taxas de transação altamente disseminados. Por outro lado, é apresentada uma forma horizontal de escalar através da fragmentação sharding da base de dados. Na camada de transação, é descrito um quadro geral para tornar o DPoS compatível com o anonimato. Mais especificamente, são propostas duas abordagens diferentes para anonimizar o montante de uma transferência: uma baseada em computação multipartidária e outra na troca de chaves Diffie-Hellman. Finalmente, é desenvolvido um novo algoritmo de seleção de inputs engodos, chamado SimpleDSA, para melhorar o anonimato do remetente. A camada de consenso apresenta dois algoritmos novos de consenso, Nero e Echidna, e dois métodos para replicação de máquinas de estado: Sphinx (com líder) e Cerberus (sem líder). Estes desenvolvimentos visam realçar o desempenho da rede, especificamente diminuindo a latência das mudanças de estado e aumentando a taxa de transferência, ou seja, aumentando o número de mudanças de estado por unidade de tempo. Um protocolo que combina a camada de transação e a camada de consenso, chamado Adamastor, é formalizado com provas de segurança e implementado com um protótipo na linguagem Rust. Parâmetros de referência demonstram a praticabilidade do esquema e a aplicação potencial a sistemas de pagamento descentralizados. Embora mais investigação seja necessária, particularmente na implementação de uma rede totalmente operacional, esta contribuição estabelece uma base para futuros avanços. Em conclusão, esta tese contribui para a área de conhecimento que resulta da fusão da economia e da engenharia informática, oferecendo soluções técnicas para implementar uma visão de um sistema financeiro mais inclusivo, justo, eficiente e seguro. As implicações deste trabalho são de grande alcance, sugerindo um futuro onde as moedas digitais desempenham um papel significativo na formação da finança e tecnologia globais.

Description

Keywords

Prova de participação delegada Moedas digitais Criptomoedas Rede descentralizada sem permissão Prioritização Camada de transação Camada de rede Camada de consenso Algoritmo Desempenho Escalabilidade Segurança Anonimato

Citation

Organizational Units

Journal Issue