Skip navigation
Use este identificador para citar ou linkar para este item: https://repositorio.ufpe.br/handle/123456789/49298

Compartilhe esta página

Registro completo de metadados
Campo DCValorIdioma
dc.contributor.advisorQUEIROZ, Ruy José Guerra Barretto de-
dc.contributor.authorCOSTA, Felipe Zimmerle da Nóbrega-
dc.date.accessioned2023-03-08T16:55:57Z-
dc.date.available2023-03-08T16:55:57Z-
dc.date.issued2022-12-09-
dc.identifier.citationCOSTA, 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.pt_BR
dc.identifier.urihttps://repositorio.ufpe.br/handle/123456789/49298-
dc.description.abstractA 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.pt_BR
dc.language.isoengpt_BR
dc.publisherUniversidade Federal de Pernambucopt_BR
dc.rightsopenAccesspt_BR
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 Brazil*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/br/*
dc.subjectTeoria da computaçãopt_BR
dc.subjectBlockchainpt_BR
dc.titleDistributed repository for software packages using blockchainpt_BR
dc.typedoctoralThesispt_BR
dc.contributor.advisor-coTEIXEIRA, Leopoldo Motta-
dc.contributor.authorLatteshttp://lattes.cnpq.br/6734847659042065pt_BR
dc.publisher.initialsUFPEpt_BR
dc.publisher.countryBrasilpt_BR
dc.degree.leveldoutoradopt_BR
dc.contributor.advisorLatteshttp://lattes.cnpq.br/1825502153580661pt_BR
dc.publisher.programPrograma de Pos Graduacao em Ciencia da Computacaopt_BR
dc.description.abstractxUm 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.pt_BR
dc.contributor.advisor-coLatteshttp://lattes.cnpq.br/2117651910340729pt_BR
Aparece nas coleções:Teses de Doutorado - Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
TESE Felipe Zimmerle da Nóbrega Costa.pdf2,36 MBAdobe PDFThumbnail
Visualizar/Abrir


Este arquivo é protegido por direitos autorais



Este item está licenciada sob uma Licença Creative Commons Creative Commons