Σχεδιασμός και υλοποίηση έξυπνης σύμβασης σε ένα δίκτυο Blockchain για την αξιολόγηση των χαρακτηριστικών σε ομάδες δεδομένων
Design and implementation of a smart contract in a Blockchain network to evaluate the characteristics of datasets
Μεταπτυχιακή διπλωματική εργασία
Author
Λιακόπουλος, Αλέξανδρος Δημήτριος
Date
2023-02-23Advisor
Kogias, DimitriosKeywords
Blockchain ; Ethereum ; Solana ; Dataset ; Solidity ; Decentralized applications ; Έξυπνα συμβόλαια ; Αποκεντρωμένες εφαρμογές ; Smart contractsAbstract
Τα μοντέλα τεχνητής νοημοσύνης (AI) με επίκεντρο τα δεδομένα βασίζονται, σε μεγάλο βαθμό, σε σύνολα δεδομένων υψηλής ποιότητας για την εκτέλεση των καθηκόντων τους. Έχουν σχεδιαστεί για να αναλύουν και να μαθαίνουν από μεγάλες ποσότητες δεδομένων προκειμένου να εντοπίζουν μοτίβα και να κάνουν προβλέψεις. Με την ραγδαία ανάπτυξη του κλάδου της τεχνητής νοημοσύνης τα τελευταία χρόνια, και εταιρείες από διαφορικές βιομηχανίες να έχουν επενδύσει πολλά χρήματα (93,5 δις το 2021) στον τομέα αυτό, τα σύνολα δεδομένων αποκτούν καθημερινά όλο και μεγαλύτερη σημασία όσο ποτέ άλλοτε. Εταιρείες όπως η LandingAI που παρέχει, μεταξύ άλλων, σύνολα δεδομένων για την εκπαίδευση μοντέλων μηχανικής μάθησης έναντι μίας μηνιαίας συνδρομής, έχει γίνει πρωτοπόρος στον τομέα. Συνεπώς χρειάζεται μία ασφαλή και αξιόπιστη διαχείριση έχοντας ως ακεραία την ιδιωτικότητα των ομάδων δεδομένων. Οι απαιτήσεις των επιχειρήσεων για μεγαλύτερη αποτελεσματικότητα, αυξημένη χωρητικότητα αποθήκευσης δεδομένων και κυρίως την ασφάλειάς τους καθώς και την ιδιωτικότητα τους, ανέδειξε το blockchain ως μία καινοτόμο και πολύ δελεαστική τεχνολογία που θα μπορούσε να φέρει “επανάσταση” στο συγκεκριμένο τομέα. Επιθυμία των εταιρειών ήταν να μπορούν να χρησιμοποιούν κοινά δεδομένα με ομαδικό τρόπο και από διαφορετικούς υπολογιστές, ώστε να παρέχουν καλύτερη πρόσβαση στους ήδη υπάρχοντες συνεργάτες τους και να δελεάζουν περισσότερους, για να συνεργαστούν μαζί τους. Με το σύστημα blockchain ήταν δυνατόν, πολλές ομάδες να διαχειρίζονται κοινά δεδομένα με ανωνυμία, χωρίς πλαισίωση αλλά και με μεγαλύτερη ιχνηλασιμότητα. Έτσι, θα εξασφαλιζόταν καλύτερη διαφάνεια στο ποιος τα διαχειρίζεται ενώ ο κάθε χρήστης του συστήματος ξεχωριστά, θα μπορούσε να ελέγξει την εγκυρότητά τους χωρίς να χρειάζεται να έρθει σε επαφή με έναν τρίτο ελεγκτή. Το σύστημα blockchain διέφερε σημαντικά από άλλα, όπως το cloud, από άποψη δομής, τρόπου αποθήκευσης δεδομένων και ασφάλειάς τους. Το blockchain λοιπόν, φυλά τα δεδομένα σε διάφορους κόμβους που σχηματίζουν συναίνεση σχετικά με την ακριβή αποθήκευσή τους σε προστατευμένες βάσεις ενώ επιτρέπει σε ένα άτομο ή επιχείρηση που χρησιμοποιεί το σύστημα, να περιορίσει την πρόσβαση μόνο σε ένα μέρος των δεδομένων και όχι σε όλο το εύρος των αρχείων. Τα δεδομένα που παραμένουν αμετάβλητα στις αλυσίδες μπλοκ, δεν μπορούν να διαμορφωθούν ή διαγραφούν από τους χρήστες. Παράλληλα, είναι δημόσια, έτσι κανείς δεν μπορεί να αποκρύψει στοιχεία από τους άλλους συμμετέχοντες στην αλυσίδα μπλοκ. Στην ακόλουθη εργασία, στο πρώτο κεφάλαιο θα γίνει μία παρουσίαση της τεχνολογίας blockchain και κάποιων επιμέρους στοιχείων, όπως τα Smart Conrtacts και η χρήση τους, η δομή των Ethereum και Solana networks και οι μεταξύ τους διαφοροποιήσεις, οι περιπτώσεις χρήσης των Smart contacts και οι αποκεντρωμένες εφαρμογές. Στο δεύτερο, θα γίνει μία ανάλυση της χρήσης των Blockchains σε ομάδες δεδομένων, στο πως θα μπορούσε να βοηθήσει στην ανάπτυξη νέων εφαρμογών και θα γίνει αναφορά σε ήδη υπάρχουσες. Στο τρίτο κεφάλαιο, θα παρουσιαστεί ο τρόπος υλοποίησης του Smart Conrtacts σε επίπεδο προγραμματισμού. Θα αναφερθούν οι βιβλιοθήκες που χρησιμοποιήθηκαν, η λειτουργία τους, τα εργαλεία κ.α. Τέλος, θα δοθούν τα συμπεράσματα της έρευνας.
Abstract
Data-centric artificial intelligence (AI) models rely heavily on high-quality data sets to perform their tasks. They are designed to analyze and learn from large amounts of data in order to identify patterns and make predictions. With the rapid growth of the artificial intelligence industry in recent years, and companies from differential industries having invested a big capital (93.5 billion in 2021) in this field, data sets are becoming more important every day than ever before. Companies such as LandingAI which provides, among other things, datasets for training machine learning models for a monthly subscription, has become a popular innovator on this field. Therefore, a secure and reliable management is needed by having the privacy of the datasets as an aera.
The demands of enterprises for greater efficiency, increased data storage capacity and most importantly their security as well as privacy, has highlighted blockchain as an innovative and very tempting technology that could "revolutionize" this sector. The desire of the companies was to be able to use shared data in a collaborative way and from different computers, in order to provide better access to their existing partners and to entice more to work with them. With the blockchain system, it was possible for multiple teams to manage shared data anonymously, without framing but with greater traceability. This would ensure better transparency in who manages them while each individual user of the system could check their validity without having to contact a third-party controller. The blockchain system differed significantly from others, such as the cloud, in terms of structure, how data is stored and its security. The blockchain therefore keeps data in several nodes that form a consensus on its exact storage in protected databases while allowing an individual or business using the system to restrict access to only a portion of the data rather than the entire range of records. Data that remains unchanged in block chains cannot be formatted or deleted by users. At the same time, it is public, so no one can hide data from other participants in the block chain. In the following paper, the first chapter will present the blockchain technology and some individual elements, such as Smart Contacts and their use, the structure of Ethereum and Solana networks and the differences between them, the use cases of Smart Contacts and decentralized applications. In the second, an analysis of the use of Blockchains in data sets, how it could help in the development of new applications and a reference to existing ones will be made. In the third chapter, we will present how to implement Smart Contacts at the programming level. The libraries used, their functionality, tools etc. will be mentioned. Finally, the conclusions of the research will be given.
Number of pages
60Faculty
Σχολή ΜηχανικώνAcademic Department
Τμήμα Ηλεκτρολόγων και Ηλεκτρονικών ΜηχανικώνΤμήμα Μηχανικών Βιομηχανικής Σχεδίασης και Παραγωγής