Exploração de algoritmos de consenso no Quorum

Detalhes bibliográficos
Autor(a) principal: Lopes, João Pedro Ascensão
Data de Publicação: 2023
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10400.22/23439
Resumo: As blockchain technology matures, more industries are becoming interested in evaluating if the technology can answer their needs for decentralized systems that guarantee data immutability and traceability. Quorum is a blockchain platform that accommodates enterprise use-cases by extending Ethereum to support private transactions and a higher transaction throughput. To achieve this, Quorum replaced Ethereum’s proof-of-stake consensus mechanism with proof-of-authority ones, supporting four different algorithms: Raft, Clique, IBFT 1.0, and QBFT. This work explores Quorum’s consensus algorithms and how they affect performance and fault-tolerance, in order to assess the best use cases for each and what should drive their choice. A GoQuorum network was set up, and benchmarks were run against this system under different scenarios while only changing the consensus algorithm for each scenario. Results showed that Raft is the most performant consensus algorithm in Quorum in both private and public transactions. Additionally, QBFT achieved the same performance as IBFT, and Clique was the worst performer across the board, particularly due to having high resource-usage. Regarding fault-tolerance, it was found that bringing validator nodes down at random, when the network has high-availability, had no impact on networks under any of the consensus algorithms.
id RCAP_9e3525038d341fdcf3dbef3f1380bc38
oai_identifier_str oai:recipp.ipp.pt:10400.22/23439
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Exploração de algoritmos de consenso no QuorumBlockchainQuorumConsensus AlgorithmsIBFTQBFTCliqueRaftAs blockchain technology matures, more industries are becoming interested in evaluating if the technology can answer their needs for decentralized systems that guarantee data immutability and traceability. Quorum is a blockchain platform that accommodates enterprise use-cases by extending Ethereum to support private transactions and a higher transaction throughput. To achieve this, Quorum replaced Ethereum’s proof-of-stake consensus mechanism with proof-of-authority ones, supporting four different algorithms: Raft, Clique, IBFT 1.0, and QBFT. This work explores Quorum’s consensus algorithms and how they affect performance and fault-tolerance, in order to assess the best use cases for each and what should drive their choice. A GoQuorum network was set up, and benchmarks were run against this system under different scenarios while only changing the consensus algorithm for each scenario. Results showed that Raft is the most performant consensus algorithm in Quorum in both private and public transactions. Additionally, QBFT achieved the same performance as IBFT, and Clique was the worst performer across the board, particularly due to having high resource-usage. Regarding fault-tolerance, it was found that bringing validator nodes down at random, when the network has high-availability, had no impact on networks under any of the consensus algorithms.Com blockchain a entrar numa fase de maturidade, cada vez mais indústrias procuram avaliar se esta tecnologia responde às suas necessidades de sistemas distribuídos que garantam a imutabilidade e rastreabilidade dos seus dados. Quorum é uma plataforma blockchain que procura acomodar os casos de uso destas empresas ao extender Ethereum para suportar transações privadas e um maior número de transações por segundo. Para esse efeito, o Quorum substituiu o mecanismo de consenso proof-ofstake do Ethereum por um mecanismo de proof-of-authority, onde quatro algoritmos são suportados: Raft, Clique, IBFT 1.0, e QBFT. Este trabalho explora os algoritmos de consenso suportados pelo Quorum de modo a determinar como estes afetam o desempenho e tolerância a falhas das redes, e consequentemente perceber os melhores casos de uso para estes algoritmos e que fatores ter em conta aquando a sua escolha. Foi criada uma rede de GoQuorum, e vários testes de desempenho foram corridos contra a rede sob diferentes cenários, onde para cada cenário a única variável foi o algoritmo de consenso. Os resultados mostraram que o Raft foi o algoritmo de consenso com melhor desempenho, tanto em transações públicas como privadas. Adicionalmente, o QBFT e o IBFT atingiram o mesmo desempenho, e o Clique o pior de todos, particularmente pelo seu alto uso de recursos do sistema. Quanto a tolerância a falhas, foi concluído que trazer nós validadores abaixo aleatoriamente enquanto o sistema está configurado com alta disponibilidade não tem impacto nas redes, independentemente do algoritmo de consenso utilizado.Azevedo, Isabel de Fátima SilvaRepositório Científico do Instituto Politécnico do PortoLopes, João Pedro Ascensão2023-08-30T11:15:17Z20232023-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/23439TID:203345517enginfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-09-06T01:46:12Zoai:recipp.ipp.pt:10400.22/23439Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T20:28:17.833610Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Exploração de algoritmos de consenso no Quorum
title Exploração de algoritmos de consenso no Quorum
spellingShingle Exploração de algoritmos de consenso no Quorum
Lopes, João Pedro Ascensão
Blockchain
Quorum
Consensus Algorithms
IBFT
QBFT
Clique
Raft
title_short Exploração de algoritmos de consenso no Quorum
title_full Exploração de algoritmos de consenso no Quorum
title_fullStr Exploração de algoritmos de consenso no Quorum
title_full_unstemmed Exploração de algoritmos de consenso no Quorum
title_sort Exploração de algoritmos de consenso no Quorum
author Lopes, João Pedro Ascensão
author_facet Lopes, João Pedro Ascensão
author_role author
dc.contributor.none.fl_str_mv Azevedo, Isabel de Fátima Silva
Repositório Científico do Instituto Politécnico do Porto
dc.contributor.author.fl_str_mv Lopes, João Pedro Ascensão
dc.subject.por.fl_str_mv Blockchain
Quorum
Consensus Algorithms
IBFT
QBFT
Clique
Raft
topic Blockchain
Quorum
Consensus Algorithms
IBFT
QBFT
Clique
Raft
description As blockchain technology matures, more industries are becoming interested in evaluating if the technology can answer their needs for decentralized systems that guarantee data immutability and traceability. Quorum is a blockchain platform that accommodates enterprise use-cases by extending Ethereum to support private transactions and a higher transaction throughput. To achieve this, Quorum replaced Ethereum’s proof-of-stake consensus mechanism with proof-of-authority ones, supporting four different algorithms: Raft, Clique, IBFT 1.0, and QBFT. This work explores Quorum’s consensus algorithms and how they affect performance and fault-tolerance, in order to assess the best use cases for each and what should drive their choice. A GoQuorum network was set up, and benchmarks were run against this system under different scenarios while only changing the consensus algorithm for each scenario. Results showed that Raft is the most performant consensus algorithm in Quorum in both private and public transactions. Additionally, QBFT achieved the same performance as IBFT, and Clique was the worst performer across the board, particularly due to having high resource-usage. Regarding fault-tolerance, it was found that bringing validator nodes down at random, when the network has high-availability, had no impact on networks under any of the consensus algorithms.
publishDate 2023
dc.date.none.fl_str_mv 2023-08-30T11:15:17Z
2023
2023-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10400.22/23439
TID:203345517
url http://hdl.handle.net/10400.22/23439
identifier_str_mv TID:203345517
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799133550723727360