Ψηφιοποίηση εγγράφων και διασφάλιση γνησιότητας με χρήση της τεχνολογίας blockchain
Document digitation and validation using blockchain technology
View/ Open
Keywords
Γνησιότητα εγγράφων ; Blockchain ; OCRAbstract
The presented thesis was developed within the Master's Degree Programme "Advanced Computer Systems - Software Development and Artificial Intelligence" framework. Its objective was to implement a web application that digitises student grades and university degrees using blockchain technology.
It integrates a friendly front-end user interface developed in the Angular framework to upload files by a suitably authorised university employee, who also has the right to search students, their documents and information of all blockchain blocks. Upon entering the application, students can explore their documents and view the information of the blocks that host them. Also, they can view the contact information of the employees - professors of the university. User roles are editable by the administrator (admin) of the system, who can modify the role of registered users.
The backend has been developed in a microservices architecture with Spring Webflux, using asynchronous calls to microservices. MongoDB was used for asynchronous document search and storage. In addition to direct calls between microservices, a message broker (RabbitMQ) was used to ensure seamless communication between them and to ensure that there would be no data loss. For storing documents, PDF files are accepted as well as PNG and JPG files which are converted to PDF using OCR, while Zipkin was used for tracing requests.
Finally, the Keycloak server was used for the application's security, which issues Json Web Tokens (JWT) for each call of the connected users on the front-end and confirms its validity on the backend. The server uses the Postgres database for storing the users.