Συντάχθηκε 25-02-2026 15:00
Τόπος:
Σύνδεσμος τηλεδιάσκεψης
Έναρξη: 27/02/2026 17:00
Λήξη: 27/02/2026 18:00
ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ
Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Πρόγραμμα Προπτυχιακών Σπουδών
ΠΑΡΟΥΣΙΑΣΗ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ
Αναστασίας Κιάφα
με θέμα
Δυναμικά Αναδιατασσόμενες Λειτουργίες Περιβάλλοντος Διαπιστευμένης Εκτέλεσης σε Αρχιτεκτονικά Συστήματα RISC-V
Dynamically Reconfigurable TEE primitives in RISC-V SoC
Εξεταστική Επιτροπή
Καθηγητής Σωτήριος Ιωαννίδης (επιβλέπων)
Αναπληρωτής Καθηγητής Βασίλειος Σαμολαδάς
Δόκτωρ Γεώργιος Χρήστου
Περίληψη
Τα Περιβάλλοντα Διαπιστευμένης Λειτουργίας (TEE) προσφέρουν την δυνατότητα απομόνωσης με χρήση hardware, στοχεύοντας στη προστασία ευαίσθητων προγραμμάτων και δεδομένων από πιθανές διακινδυνεύσεις του λογισμικού περιλαμβανομένου του λειτουργικού συστήματος. Τα σύγχρονα TEE παρουσιάζουν συγκεκριμένες λειτουργίες ασφάλειας όπως η απομόνωση της μνήμης, attestation , ασφαλή I/O, κρυπτογραφικούς επιταχυντές, ώστε να ορίσουν και να εφαρμόσουν σαφή όρια μεταξύ των έμπιστων και μη δομικών στοιχείων του συστήματος. Ωστόσο, αυτή η προσέγγιση δεν καλύπτει επαρκώς τις ανάγκες για προσαρμοστικότητα που απαιτείται με την εξέλιξη των απειλών και των εφαρμογών. Απαντώντας σε αυτό το επιχείρημα η παρακάτω διπλωματική εργασία προτείνει μια δυναμικά αναδιατασσόμενη αρχιτεκτονική που υλοποιεί λειτουργίες TEE σε αρχιτεκτονικά συστήματα RISC − V, χρησιμοποιώντας Field Programmable Gate Arrays (FPGA) προσφέροντας ευέλικτες λύσεις που μπορούν να προσαρμοστούν στις εξελισσόμενες απαιτήσεις. Το σύστημα χρησιμοποιεί την υλοποίηση της αρχιτεκτονικής RISC−V του Tarassov στοχεύοντας στη δημιουργία ενός integrity monitor που πιστοποιεί το εκτελούμενο πρόγραμμα μέσω του hash του .text κομματιού του. Για την δημιουργία του hash τροποποιήθηκε ένα έτοιμο SHA256 cryptographic core, τοποθετημένο στην επαναπρογραμματιζόμενη περιοχή της FPGA και συνδέθηκε με Direct Memory Access (DMA) controller που βρίσκεται στην στατική περιοχή της. Ο DMA εκτελεί μεταφορές δεδομένων από τη μνήμη του συστήματος στον core χωρίς την εμπλοκή του επεξεργαστή, με ένα user − space interface το οποίο ρυθμίζει τον DMA και τον cryptographic core χρησιμοποιώντας memory −mapped registers. Ακόμη, αναπτύχθηκε ένα βοηθητικό πρόγραμμα για τον εντοπισμό του .text segment στη physical memory. Αυτή η υλοποίηση συνεισφέρει στη μεθοδολογία για τη δημιουργία ευέλικτων, με χρήση hardware TEE σε αρχιτεκτονικά συστήματα RISC −V. Μετρήσαμε την απόδοση του integrity primitive και παρατηρήσαμε ότι ο DMA controller μεταφέρει αποτελεσματικά δεδομένα στο SHA256 core με χρόνους μεταφοράς δεδομένων οι οποίοι αυξάνονται γραμμικά από 6ms σε 16ms με την αύξηση των δεδομένων από 4ΚΒ σε 16ΚΒ, και με χρόνους hashing να παραμένουν σταθεροί σε 1ms. Το σύστημα λειτουργεί όπως αναμενόταν, επικυρώνοντας τον σχεδιασμό μας.
Abstract
Trusted Execution Environments (TEEs) provide the ability for hardware-enforced isolation, enabling the protection of sensitive code and data against a potential compromise of system software including the operating system. Modern TEE implementations offer a single set of primitives e.g., memory isolation, attestation, secure I/O, cryptographic accelerators, to define and enforce trust boundaries between trusted and untrusted system components. However, static security hardware is insufficient to address the need for adaptability required by constant evolving threats and diverse application needs. To address this, the present thesis introduces a dynamically reconfigurable architecture for implementing TEE primitives on RISC-V System-on-Chip (SoC) platforms, utilizing FPGA technology offering flexible security options that can adapt to changing demands. The proposed system is based on Tarassov's RISC-V project. The architecture is aimed to perform as an integrity monitor, verifying application code by computing and checking the hash of the .text segment. A pre-existing SHA256 cryptographic core, altered for integration with a Direct Memory Access (DMA) controller located in the static region, is employed in the reconfigurable region for hashing operations. The DMA engine performs data transfers from system memory to the cryptographic core without the processor intervention. Additionally, a user-space interface was developed to configure both the DMA and the cryptographic core through memory-mapped registers. A helper tool was also implemented to retrieve the physical memory addresses of executing program segments. This work contributes to the methodology for developing flexible reconfigurable, hardware-assisted TEEs on open RISC-V platforms. We measured our integrity primitive and observed that the DMA effectively transfers data to the SHA256 core with transfer times that increased linearly from 6ms to 16ms with data sizes of 4KB to 16KB, and the SHA256 hardware accelerator consistently performed at a stable latency of 1ms. The system responds consistently and as predicted, validating the implementation of our AXI DMA architecture for memory-mapped cryptographic acceleration.