Design of a clock fault Injection circuit (clock glitcher) on an FPGA chip
Σχεδίαση κυκλώματος εισαγωγής σφαλμάτων ρολογιού σε ένα FPGA τσιπ

Bachelor Dissertation
Συγγραφέας
Bello, Mario
Μπέλλο, Μάριο
Ημερομηνία
2025-09Επιβλέπων
Psarakis, MichaelΨαράκης, Μιχαήλ
Προβολή/ Άνοιγμα
Λέξεις κλειδιά
Fault injection ; Clock glitching ; Digital design ; AutomationΠερίληψη
Τα ψηφιακά συστήματα αποτελούν το θεμέλιο της σύγχρονης τεχνολογίας, και η αξιοπιστία και ασφάλειά τους είναι κρίσιμες σε τομείς όπως το Διαδίκτυο των Πραγμάτων (IoT), η αεροδιαστημική, η αυτοκινητοβιομηχανία και η άμυνα. Η εισαγωγή σφαλμάτων (fault injection) είναι μια ισχυρή τεχνική για την αξιολόγηση της ανθεκτικότητας αυτών των συστημάτων, καθώς διαταράσσει εσκεμμένα τη φυσιολογική τους λειτουργία. Μεταξύ των διαθέσιμων μεθόδων, το clock glitching είναι μία από τις πιο αποτελεσματικές, προσφέροντας χαμηλό κόστος και λεπτομερή έλεγχο των παραμέτρων του σφάλματος.
Η παρούσα εργασία εξετάζει το clock glitching με χρήση FPGA, με έμφαση στην ακρίβεια, την επαναληψιμότητα και την προσαρμοστικότητα. Χρησιμοποιώντας την πλατφόρμα Xilinx Arty Z7-20, σχεδιάζουμε και υλοποιούμε μία αρχιτεκτονική υλικού/λογισμικού (hardware/software co-design) που αξιοποιεί Mixed-Mode Clock Managers (MMCMs), τη Dynamic Phase Shift Interface (DPSI) και στοιχεία εισαγωγής καθυστέρησης (IDELAY) για τη δημιουργία ελεγχόμενων παρεμβολών (glitches). Με τον συνδυασμό αυτών των primitives του FPGA και αυτοματοποιημένων δοκιμών μέσω του Zynq Processing System και λογισμικού ελεγχόμενου από UART, το προτεινόμενο σύστημα επιτρέπει λεπτομερή διερεύνηση των συντεταγμένων του glitch και αναπαραγώγιμες εκστρατείες εισαγωγής σφαλμάτων.
Η πειραματική αξιολόγηση πραγματοποιήθηκε σε βασικά ακολουθιακά στοιχεία, όπως αθροιστές και flip-flops. Τα αποτελέσματα δείχνουν ότι ο ελεγχόμενος χειρισμός του ρολογιού μπορεί να προκαλέσει με συνέπεια συγκεκριμένα bit faults, με ποσοστά επιτυχίας που υπερβαίνουν το 60% υπό βέλτιστες συνθήκες. Διαπιστώθηκε επίσης ότι η τοποθέτηση και η δρομολόγηση επηρεάζουν σημαντικά τα αποτελέσματα, γεγονός που αναδεικνύει τη σημασία του φυσικού σχεδιασμού τόσο για την αποτελεσματικότητα της επίθεσης όσο και για τις δοκιμές αξιοπιστίας.
Οι συνεισφορές αυτής της εργασίας συνοψίζονται στα εξής: (i) μια πρακτική μεθοδολογία για clock glitching σε FPGA με ανάλυση υπο-κύκλου, (ii) μία συγκριτική ανάλυση μεταξύ των προσεγγίσεων με MMCM και IDELAY, (iii) μια πειραματική μελέτη των επιπτώσεων των glitches σε βασικά ψηφιακά δομικά στοιχεία, και (iv) ένα αυτοματοποιημένο πλαίσιο υλικού/λογισμικού για αναπαραγώγιμες δοκιμές μεγάλης κλίμακας.
Τα ευρήματα επιβεβαιώνουν ότι το clock glitching με FPGA αποτελεί μια οικονομικά αποδοτική και ευέλικτη τεχνική για ανάλυση σφαλμάτων. Πέρα από τις δοκιμές, η προτεινόμενη μεθοδολογία μπορεί να συνεισφέρει τόσο στην ανάπτυξη πιο ανθεκτικών ψηφιακών συστημάτων όσο και στη σχεδίαση μεθόδων αντιμετώπισης κακόβουλων επιθέσεων εισαγωγής σφαλμάτων.