Riassunto analitico
La tesi verte sull’analisi delle tecnologie Blockchain e lo sviluppo di un sistema di memorizzazione tamper-proof. La prima parte è a sua volta divisa in due: un’introduzione alle tecnologie Blockchain e lo studio delle principali implementazioni. All’inizio si esaminerà l’architettura del primo sistema basato su tecnologia Blockchain: Bitcoin; in particolare, si approfondiranno quali motivazioni hanno portato alla realizzazione di tale architettura e quali vantaggi/svantaggi presenta rispetto ad altri sistemi che gestiscono transazioni. Le principali tematiche sono: le reti P2P, l’algoritmo di leader-election e il Proof-of-Work. A seguire, si prenderanno in esame le principali implementazioni basate su tecnologia Blockchain. Si studieranno i sistemi che privilegiano le reti pubbliche e aperte: Bitcoin ed Ethereum. Successivamente, si tratteranno le tecnologie adatte a soluzioni enterprise: il progetto Hyperledger e il gestore di asset BigchainDB. Infine, si riporteranno le caratteristiche di alcune implementazioni ancora in fase di sviluppo. Per ogni tecnologia si esamineranno i principali vantaggi e difetti, che porteranno alla selezione dei contesti migliori in cui la tecnologia può essere utilizzata.
La seconda parte descrive il sistema di memorizzazione tamper-proof: l’analisi dei requisiti che porta al disegno dell’architettura e alla sua implementazione. Il sistema è pensato per contesti enterprise e ha lo scopo di registrare le informazioni inserite dagli utenti in modo che non siano modificabili nemmeno dai proprietari dei dati. In questo modo, le informazioni possono essere considerate maggiormente attendibili da un ente terzo che dovrà verificarne l’esattezza. Inoltre, l’architettura sviluppata permette a più soggetti di creare una rete dove i dati sono condivisi e in relazione tra di loro; l’ente terzo potrà ottenere una visione globale delle informazioni registrate e controllare che anche le loro relazioni siano valide. L’applicazione può essere utilizzata in qualsiasi sistema di tracciabilità ma, in particolare, il programma gestisce i metadati dei clienti in contesto GDPR. L’applicativo è composto da micro-servizi scalabili che comunicano tramite messaggi, i quali sono distribuiti da un message-broker che garantisce che essi non vadano persi in caso di fallimento di un servizio. I micro-servizi sono stati implementati basandosi sul framework Spring e comunicano tramite il message-broker Kafka. La tecnologia Blockchain scelta è Hyperledger Fabric.
|
Abstract
The thesis concerns the analysis of Blockchain technologies and the description of a tamper-proof storage system.
The first part is divided into two chapters: the introduction of Blockchain technologies and the study of the main Blockchain implementations. Firstly, we will examine the architecture of Bitcoin. Moreover, we will discuss the advantages/disadvantages of Blockchain technologies in relation to other systems that manage transactions. The main topics are: P2P networks, the leader-election algorithm and Proof-of-Work. Then, we will focus on the main Blockchain implementations: Bitcoin and Ethereum, which suit public and open networks, Hyperledger projects and BigchainDB asset manager, which fit enterprise contexts and, lastly, some implementations, which are not completed yet. We will analyse the benefits and the drawbacks for each technology and show the best context of every Blockchain solution.
The second part describes the tamper-proof storage system: the architectural model and the system implementation. The application is suited to enterprise solutions and memorises user information, which cannot be modified later even by data owners. An authorised entity knows that the stored information is reliable and can verify if it is correct. Furthermore, the application can share data among organisations and an authorised user can read the system global state.
The system can be applied to any tracking problem but, in particular, the program manages users' metadata in the GDPR context.
The architecture has micro-services that communicate by exchanging messages, which are delivered by a message-broker that guarantees that they will not be lost if one service goes down.
The micro-services are developed by using the Spring framework, Kafka is the message broker and Hyperledger Fabric is the Blockchain technology chosen.
|