Σχεδιασμός και υλοποίηση web εφαρμογής με γραφικό περιβάλλον για την παρουσίαση της λειτουργίας του αλγορίθμου κρυπτογράφησης AES

Loading...
Thumbnail Image

Date

2026-02-26

Authors

Αλεξοπούλου, Αγγελική

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Η κρυπτογραφία είναι η διαδικασία της κρυπτογράφησης, δηλαδή της απόκρυψης ή κωδικοποίησης πληροφοριών, έτσι ώστε μόνο οι εξουσιοδοτημένοι αποδέκτες να μπορούν να τις αποκρυπτογραφήσουν, δηλαδή να τις διαβάσουν. Για τον σκοπό αυτό, έχουν σχεδιαστεί και χρησιμοποιούνται συγκεκριμένες μέθοδοι, δηλαδή αλγόριθμοι, για τη μετατροπή αναγνώσιμων δεδομένων (απλό κείμενο-plaintext) σε μη αναγνώσιμη μορφή (κρυπτογραφημένο κείμενο-ciphertext), ώστε να αποτρέπεται η μη εξουσιοδοτημένη πρόσβαση και αλλοίωση. Οι αλγόριθμοι κρυπτογράφησης έχουν καθοριστικό ρόλο στον σύγχρονο, έντονα διασυνδεδεμένο και δικτυοκεντρικό κόσμο μας, καθώς αποτελούν βασικό στοιχείο της ασφαλούς ψηφιακής επικοινωνίας και των σύγχρονων διαδικτυακών οικονομιών. Οι αλγόριθμοι κρυπτογράφησης βασίζονται σε μαθηματικές έννοιες και χρησιμοποιούν μυστικά κλειδιά για την κρυπτογράφηση και την αποκρυπτογράφηση δεδομένων. Ο AES (Advanced Encryption Standard) είναι ένας ιδιαίτερα ασφαλής αλγόριθμος συμμετρικής κρυπτογράφησης που χρησιμοποιείται παγκοσμίως για την προστασία ευαίσθητων ψηφιακών δεδομένων, μετατρέποντάς τα σε μη αναγνώσιμο κώδικα, χρησιμοποιώντας το ίδιο κλειδί τόσο για την κρυπτογράφηση όσο και για την αποκρυπτογράφηση. Ο αλγόριθμος AES αποτελεί πρότυπο του NIST (US National Institute of Standards and Technology) και υποστηρίζει κλειδιά 128, 192 ή 256 bit, ενώ αποτελεί θεμέλιο της ασφάλειας σε εφαρμογές που εκτείνονται από τις ηλεκτρονικές τραπεζικές συναλλαγές έως την αποθήκευση αρχείων. Χρησιμοποιείται ευρέως στα πρωτόκολλα ασφάλειας Wi-Fi για την κρυπτογράφηση δεδομένων που μεταδίδονται μέσω ασύρματων δικτύων. Ο AES κρυπτογραφεί δεδομένα σε μπλοκ σταθερού μεγέθους (128 bit) μέσω πολλαπλών γύρων μετασχηματισμών. Κάθε γύρος περιλαμβάνει διάφορα στάδια, όπως αντικατάσταση δεδομένων, μετατόπιση γραμμών, ανάμειξη στηλών και προσθήκη ενός μέρους του κλειδιού. Ο AES-256, με μήκος κλειδιού 256 bit, θεωρείται πρακτικά απρόσβλητος από επιθέσεις εξαντλητικής αναζήτησης (brute force) με την τρέχουσα υπολογιστική ισχύ, γεγονός που τον καθιστά ένα από τα ασφαλέστερα συστήματα κρυπτογράφησης που χρησιμοποιούνται σήμερα. Ο AES περιλαμβάνεται στην ύλη μαθημάτων Κρυπτογραφίας στην τριτοβάθμια εκπαίδευση. Ωστόσο, υπάρχει δυσκολία στη διδασκαλία του, κυρίως επειδή ο αλγόριθμος βασίζεται σε σύνθετη μαθηματική δομή που περιλαμβάνει αριθμητική πεπερασμένων σωμάτων (συμπεριλαμβανομένων πράξεων XOR και πολλαπλασιασμού πολυωνύμων), πολλαπλασιασμό μητρώων και μη γραμμικούς μετασχηματισμούς byte, απαιτώντας από τους φοιτητές να κατανοήσουν ταυτόχρονα τόσο τους υψηλού επιπέδου κρυπτογραφικούς στόχους όσο και την αριθμητική σε επίπεδο byte. Κατά συνέπεια, η διδασκαλία του AES συχνά επικεντρώνεται στην παρουσίαση γενικών εννοιών, αντί για εις βάθος ανάλυση των μαθηματικών και των επιμέρους συναρτήσεων κάθε γύρου, καθώς και της συνολικής διαδικασίας πολλών (10, 12 ή 14) γύρων μετασχηματισμών. Με αφορμή τις παραπάνω παρατηρήσεις και με στόχο να βοηθήσουμε στη διδασκαλία αλλά και την κατανόηση και εφαρμογή του αλγορίθμου AES, σχεδιάσαμε και υλοποιήσαμε μια διαδικτυακή εφαρμογή που δίνει τη δυνατότητα στους χρήστες να εξοικειωθούν τόσο με τη μαθηματική δομή όσο και με ολόκληρη τη διαδικασία των πολλαπλών γύρων μετασχηματισμών του AES. Η εφαρμογή μας περιλαμβάνει ενότητες μάθησης και εξάσκησης, καθώς και ενότητα για την παρουσίαση του S-box (Substitution box) και του αντίστροφου S-box, ενός σταθερού πίνακα αναζήτησης που χρησιμοποιείται στον AES κατά τις διαδικασίες κρυπτογράφησης και αποκρυπτογράφησης. Παρέχει επίσης mini υπολογιστή (calculator) ειδικά σχεδιασμένο για την εκτέλεση πράξεων XOR και μετατροπών μεταξύ δεκαεξαδικών και δυαδικών αριθμών, οι οποίες χρησιμοποιούνται εκτενώς στον AES. Στην εκπαιδευτική ενότητα, μπορεί να πραγματοποιηθεί βήμα προς βήμα εκτέλεση ολόκληρης της διαδικασίας AES για όλα τα μεγέθη κλειδιού, τόσο για κρυπτογράφηση όσο και για αποκρυπτογράφηση, συμπεριλαμβανομένης της οπτικοποίησης και αναλυτικών πληροφοριών που παρέχονται για όλους τους εφαρμοζόμενους μετασχηματισμούς. Η ενότητα εξάσκησης δίνει τη δυνατότητα στους χρήστες να εξασκούνται διαδραστικά σε κάθε στάδιο του αλγορίθμου AES, με καθοδήγηση καθ’ όλη τη διάρκεια της διαδικασίας. Από όσο γνωρίζουμε, δεν έχει παρουσιαστεί μέχρι σήμερα παρόμοια εφαρμογή. Η εφαρμογή μας, η οποία είναι προς το παρόν διαθέσιμη σε ελληνικά και αγγλικά, έχει αναπτυχθεί με χρήση της βιβλιοθήκης ανοιχτού κώδικα React ενώ φιλοξενείται στην υπηρεσία GitHub Pages.

Description

Keywords

Mαθήματα κρυπτογραφίας, Αλγόριθμοι κρυπτογράφησης/αποκρυπτογράφησης AES, Οπτικοποίηση αλγορίθμων, Διαδραστική μάθηση και εξάσκηση, Εκπαιδευτικές διαδικτυακές εφαρμογές, Εργαλεία υπολογισμού XOR

Citation