Blockchain-Based Decentralized Architecture for Software Version Control

Version control is an important component of configuration management, and most enterprise-level software uses different tools and technologies to manage the software version control such as CVS, Subversion, or Perforce. Following the success of bitcoin, the first practical application of blockchain...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Hammad, Muhammad, Iqbal, Jawaid, Hassan, Ch Anwar ul, Hussain, Saddam, Sajid Ullah, Syed, Uddin, Mueen, Malik, Urooj Ali, Abdelhaq, Maha, Alsaqour, Raed
Format: Artikel
Sprache:eng
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Version control is an important component of configuration management, and most enterprise-level software uses different tools and technologies to manage the software version control such as CVS, Subversion, or Perforce. Following the success of bitcoin, the first practical application of blockchain, it is being implemented in other fields such as healthcare, supply chains, financial management, real estate, electoral systems, and so on. Blockchain’s core features include decentralization, immutability, and interminability. Most version control repositories are centralized and can be modified by external sources, implying that they are in danger of being corrupted or controlled. In this study, we present the BDA-SCV architecture for implementing a version control system in blockchain technology. Our proposed approach would replace the necessity for a centralized system, with a decentralized approach implemented in the blockchain using distributed file storage, for which we will use the InterPlanetary File System (IPFS), which is a distributed file system. The proof of authority (PoA) consensus algorithm will be used to approve the developer communicating modifications to the private blockchain network; the authority will only provide permission and will not be able to add, edit, or delete code files. For each change, a ledger block will be created with a reference to the file stored in the distributed repository. A block cannot be manipulated once it has been created. Smart contracts will be used to register developers, create blocks, and manage the repository. The suggested model is implemented using the Hyperledger Fabric network, and the developer and authorizer ends are built into the dotnet web application.