Exportação concluída — 

Distributed repository for software packages using blockchain

Detalhes bibliográficos
Ano de defesa: 2022
Autor(a) principal: COSTA, Felipe Zimmerle da Nóbrega
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: eng
Instituição de defesa: Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/49298
Resumo: A package repository is an essential piece of a software ecosystem where packages and interdependencies are published together with security updates. In free and open-source software, the software repositories are frequently hosted and maintained using donations or contributions in the form of computational power or financial aid. The technical solution adopted to absorb the computational power donation limits on its design, prohibiting small donors from participating with their contributions. The lack of contributions directly implies limiting repository functionalities. This work proposes a package repository using Blockchain evaluated through real-world simulations and statistics. The Blockchain described has its consensus algorithm crafted to befit the purpose of a package repository without financial appeal. The consensus algorithm relies on a forger party where peers are semi-randomly selected using a protocol to agree on the forger node. Also, the proposed Blockchain keeps a compatible layer with the traditional repositories, easing its adoption. With the adoption of the proposed Blockchain, the repositories could benefit from the computational power of small contributors, thus enabling more features for their end-users. Furthermore, this work presents a package search over peer-to-peer, computed on untrusted nodes, yet guaranteeing that the results are trusted. In this work, we present tests with a Blockchain holding more than 250 thousand packages, published over more than ten years of the ArchLinux distribution. Finally, we present a functional Blockchain that cohesively exposes more than four million package releases published over more than seventeen years of the PyPi catalog.
id UFPE_9398c9431e75ef6608a696b1900396ab
oai_identifier_str oai:repositorio.ufpe.br:123456789/49298
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str
spelling Distributed repository for software packages using blockchainTeoria da computaçãoBlockchainA package repository is an essential piece of a software ecosystem where packages and interdependencies are published together with security updates. In free and open-source software, the software repositories are frequently hosted and maintained using donations or contributions in the form of computational power or financial aid. The technical solution adopted to absorb the computational power donation limits on its design, prohibiting small donors from participating with their contributions. The lack of contributions directly implies limiting repository functionalities. This work proposes a package repository using Blockchain evaluated through real-world simulations and statistics. The Blockchain described has its consensus algorithm crafted to befit the purpose of a package repository without financial appeal. The consensus algorithm relies on a forger party where peers are semi-randomly selected using a protocol to agree on the forger node. Also, the proposed Blockchain keeps a compatible layer with the traditional repositories, easing its adoption. With the adoption of the proposed Blockchain, the repositories could benefit from the computational power of small contributors, thus enabling more features for their end-users. Furthermore, this work presents a package search over peer-to-peer, computed on untrusted nodes, yet guaranteeing that the results are trusted. In this work, we present tests with a Blockchain holding more than 250 thousand packages, published over more than ten years of the ArchLinux distribution. Finally, we present a functional Blockchain that cohesively exposes more than four million package releases published over more than seventeen years of the PyPi catalog.Um repositório de pacotes é uma parte essencial de um ecossistema de software em que pacotes e interdependências são publicados juntos com atualizações de segurança. No software livre e de código aberto, os repositórios de software são frequentemente hospedados e mantidos por meio de doações na forma de poder computacional ou de ajuda financeira. A solução técnica adotada para absorver as doações de poder computacional são tecnicamente limitadas, proibindo a contribuição de pequenos doadores. A falta de contribuições implica diretamente em limitações das funcionalidades do repositório. Este trabalho propõe um repositório de pacotes usando Blockchain avaliado por meio de simulações e estatísticas do mundo real. O Blockchain descrito tem seu algoritmo de consenso elaborado para atender ao propósito de um repositório de pacotes sem apelo financeiro. O algoritmo de consenso depende de uma festa de forjamento em que os pares são selecionados aleatoriamente usando um protocolo para concordar com o nó forjador. Além disso, o Blockchain proposto mantém uma camada compatível com os repositórios tradicionais, facilitando sua adoção. Com a adoção do Blockchain proposto, os repositórios poderiam se beneficiar do poder computacional de pequenos contribuidores, permitindo assim mais recursos para seus usuários finais. Além disso, este trabalho apresenta uma busca de pacotes peer-to-peer, computada em nós não confiáveis, mas garantindo que os resultados sejam confiáveis. Neste trabalho, apresentamos testes com um Blockchain contendo mais de 250 mil pacotes, publicados ao longo de mais de dez anos da distribuição ArchLinux. Por fim, apresentamos um Blockchain funcional que expõe de forma coesa mais de quatro milhões de lançamentos de pacotes publicados ao longo de mais de dezessete anos do catálogo PyPi.Universidade Federal de PernambucoUFPEBrasilPrograma de Pos Graduacao em Ciencia da ComputacaoQUEIROZ, Ruy José Guerra Barretto deTEIXEIRA, Leopoldo Mottahttp://lattes.cnpq.br/6734847659042065http://lattes.cnpq.br/1825502153580661http://lattes.cnpq.br/2117651910340729COSTA, Felipe Zimmerle da Nóbrega2023-03-08T16:55:57Z2023-03-08T16:55:57Z2022-12-09info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfCOSTA, Felipe Zimmerle da Nóbrega. Distributed repository for software packages using blockchain. 2022. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022.https://repositorio.ufpe.br/handle/123456789/49298engAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPE2023-03-09T05:14:07Zoai:repositorio.ufpe.br:123456789/49298Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212023-03-09T05:14:07Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.none.fl_str_mv Distributed repository for software packages using blockchain
title Distributed repository for software packages using blockchain
spellingShingle Distributed repository for software packages using blockchain
COSTA, Felipe Zimmerle da Nóbrega
Teoria da computação
Blockchain
title_short Distributed repository for software packages using blockchain
title_full Distributed repository for software packages using blockchain
title_fullStr Distributed repository for software packages using blockchain
title_full_unstemmed Distributed repository for software packages using blockchain
title_sort Distributed repository for software packages using blockchain
author COSTA, Felipe Zimmerle da Nóbrega
author_facet COSTA, Felipe Zimmerle da Nóbrega
author_role author
dc.contributor.none.fl_str_mv QUEIROZ, Ruy José Guerra Barretto de
TEIXEIRA, Leopoldo Motta
http://lattes.cnpq.br/6734847659042065
http://lattes.cnpq.br/1825502153580661
http://lattes.cnpq.br/2117651910340729
dc.contributor.author.fl_str_mv COSTA, Felipe Zimmerle da Nóbrega
dc.subject.por.fl_str_mv Teoria da computação
Blockchain
topic Teoria da computação
Blockchain
description A package repository is an essential piece of a software ecosystem where packages and interdependencies are published together with security updates. In free and open-source software, the software repositories are frequently hosted and maintained using donations or contributions in the form of computational power or financial aid. The technical solution adopted to absorb the computational power donation limits on its design, prohibiting small donors from participating with their contributions. The lack of contributions directly implies limiting repository functionalities. This work proposes a package repository using Blockchain evaluated through real-world simulations and statistics. The Blockchain described has its consensus algorithm crafted to befit the purpose of a package repository without financial appeal. The consensus algorithm relies on a forger party where peers are semi-randomly selected using a protocol to agree on the forger node. Also, the proposed Blockchain keeps a compatible layer with the traditional repositories, easing its adoption. With the adoption of the proposed Blockchain, the repositories could benefit from the computational power of small contributors, thus enabling more features for their end-users. Furthermore, this work presents a package search over peer-to-peer, computed on untrusted nodes, yet guaranteeing that the results are trusted. In this work, we present tests with a Blockchain holding more than 250 thousand packages, published over more than ten years of the ArchLinux distribution. Finally, we present a functional Blockchain that cohesively exposes more than four million package releases published over more than seventeen years of the PyPi catalog.
publishDate 2022
dc.date.none.fl_str_mv 2022-12-09
2023-03-08T16:55:57Z
2023-03-08T16:55:57Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv COSTA, Felipe Zimmerle da Nóbrega. Distributed repository for software packages using blockchain. 2022. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022.
https://repositorio.ufpe.br/handle/123456789/49298
identifier_str_mv COSTA, Felipe Zimmerle da Nóbrega. Distributed repository for software packages using blockchain. 2022. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022.
url https://repositorio.ufpe.br/handle/123456789/49298
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
publisher.none.fl_str_mv Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1856042012508160000