Περίληψη: | Στις μέρες μας, η ασφαλής διακίνηση πληροφοριών και δεδομένων αποτελεί ένα μείζον ζήτημα. Προς αυτή την κατεύθυνση, τα σύγχρονα συστήματα ασφαλείας χρησιμοποιούν κρυπτογραφικούς αλγορίθμους για να παρέχουν εμπιστευτικότητα, ακεραιότητα και αυθεντικότητα των δεδομένων. Αυτό έχει σαν αποτέλεσμα τα τελευταία χρόνια η επιστήμη της κρυπτογραφίας να αποτελεί ένα τομέα με μεγάλο ερευνητικό ενδιαφέρον. Πιο συγκεκριμένα, η κρυπτογραφία δημοσίου κλειδιού παρουσιάζει γρήγορη ανάπτυξη και εφαρμόζεται ευρύτατα καθώς παρέχει μεγάλο βαθμό προστασίας των δεδομένων. Αυτό το χαρακτηριστικό επιτυγχάνεται χάρη στην υψηλή υπολογιστική πολυπλοκότητα που παρουσιάζουν οι χρησιμοποιούμενοι αλγόριθμοι κατά την προσπάθεια επίλυσής τους. Επιπλέον, αυτού του τύπου η κρυπτογραφία αποφεύγει το πρόβλημα της διανομής και διαχείρισης κλειδιών μέσα σε ένα μη ασφαλές κανάλι επικοινωνίας που παρουσιάζει η κρυπτογραφία ιδιωτικού κλειδιού. Παρόλα αυτά, η κρυπτογραφία δημοσίου κλειδιού εμφανίζει, και αυτή με τη σειρά της, το μειονέκτημα πως κατά την κρυπτογράφηση-αποκρυπτογράφηση απαιτούνται δαπανηρές αριθμητικές πράξεις (π.χ. modulo πολλαπλασιασμός, αντιστροφή). Το πρόβλημα αυτό επιβαρύνεται από το γεγονός πως το μήκος των κλειδιών σε αυτού του τύπου την κρυπτογραφία έχει πολύ μεγάλο μέγεθος έτσι ώστε να διασφαλιστεί ένα υψηλό επίπεδο ασφαλείας. Λύση στα παραπάνω προβλήματα αποτελεί η βελτιστοποίηση σχεδιασμού των αριθμητικών πράξεων που απαιτούνται σε ένα σύστημα δημοσίου κλειδιού καθώς και η χρήση ελλειπτικών καμπυλών αφού με αυτό τον τρόπο γίνεται χρήση μικρότερου μήκους κλειδιών για την επίτευξη του ίδιου επιπέδου ασφαλείας. Στην Κρυπτογραφία Ελλειπτικών Καμπυλών, ο Βαθμωτός Πολλαπλασιασμός αποτελεί την κύρια μαθηματική πράξη και περιλαμβάνει μια σειρά από άλλες λειτουργίες πάνω στα σημεία της καμπύλης οι οποίες αυξάνουν τη συνολική υπολογιστική πολυπλοκότητα του συστήματος. Οι χρησιμοποιούμενοι, λοιπόν, βαθμωτοί πολλαπλασιαστές αποτελούν τον κύριο στόχο των φυσικών επιθέσεων (επιθέσεων υλικού) οι οποίες έχουν ως σκοπό να αποκομίσουν σημαντικές πληροφορίες κατά τη διάρκεια εκτέλεσης ενός βαθμωτού πολλαπλασιασμού. Οι πιο ευρέως γνωστές τέτοιες επιθέσεις είναι οι επιθέσεις σφάλματος (Fault Attacks - FA) και οι επιθέσεις πλάγιου μονοπατιού (Side Channel Attacks - SCA). Η χρήση αντίμετρων, όμως, για αυτά τα είδη επιθέσεων κατά την υλοποίηση ενός βαθμωτού πολλαπλασιαστή δεν είναι μια απλή διαδικασία. Ο συνδυασμός διάφορων αντίμετρων σε μια ενιαία αρχιτεκτονική μπορεί να δημιουργήσει νέα τρωτά σημεία σε αυτό το σύστημα τα οποία μπορεί να εκμεταλλευτεί ένας επιτιθέμενος. Λόγω αυτού του γεγονότος και δεδομένου ότι το κόστος κάθε αντίμετρου στη συνολική απόδοση δεν είναι αμελητέο, είναι ιδιαιτέρως σημαντική η προσεκτική επιλογή του σχήματος προστασίας για την αρχιτεκτονική ενός βαθμωτού πολλαπλασιαστή.
Στα πλαίσια αυτής της διπλωματικής εργασίας μελετήθηκε η κρυπτογραφία δημοσίου κλειδιού η οποία βασίζεται στις Ελλειπτικές Καμπύλες με στόχο να προταθεί και να υλοποιηθεί ένα αποδοτικό κρυπτογραφικό σύστημα, τόσο από πλευράς ταχύτητας και απαιτούμενης επιφάνειας όσο και από πλευράς ασφάλειας. Σε αυτή τη μεθοδολογία σχεδιασμού δόθηκε μεγάλο βάρος στην προσπάθεια χρήσης μιας νέας μορφής Ελλειπτικών Καμπυλών, τις
iv
Καμπύλες Edwards, οι οποίες παρουσιάζουν σημαντικά πλεονεκτήματα έναντι των συμβατικών ελλειπτικών καμπυλών (π.χ. Weierstrass), καθώς οι πράξεις πάνω στην καμπύλη μπορούν να υλοποιηθούν πιο αποτελεσματικά ενώ έχουν και ένα εγγενή μηχανισμό προστασίας ενάντια στις επιθέσεις πλάγιου μονοπατιού. Λόγω του γεγονότος πως οι καμπύλες αυτές ορίζεται πάνω σε ένα πεπερασμένο σώμα ( ), οι πράξεις μεταξύ των σημείων της καμπύλης βασίζονται στην αριθμητική πεπερασμένων σωμάτων. Για να αυξηθεί το προτεινόμενο επίπεδο προστασίας και η συνολική αποδοτικότητα χρησιμοποιήθηκε το Αριθμητικό Σύστημα Υπολοίπων (Residue Number System - RNS), το οποίο αντικαθιστά μια πράξη με δεδομένα μεγάλου μεγέθους με υπολογισμούς σε παράλληλα μονοπάτια μικρότερου μεγέθους. Επίσης, το σύστημα RNS λόγω της αναπαράστασης των αριθμών οι οποίοι βασίζονται σε αριθμητικά υπόλοιπα, έχει μια εγγενή προστασία ενάντια σε επιθέσεις σφάλματος καθώς οποιοδήποτε εισαχθέν σφάλμα σε μια μεταβλητή κατά τη διάρκεια ενός RNS υπολογισμού, διαδίδεται σε όλες τις άλλες μεταβλητές και καθιστά το αποτέλεσμα μη-χρησιμοποιήσιμο (αρχή μολυσματικού υπολογισμού). Για την περαιτέρω αύξηση του μηχανισμού προστασίας, ένας αλγόριθμος για το βαθμωτό πολλαπλασιασμό βασιζόμενος στο Montgomery Power Ladder υιοθετήθηκε ο οποίος χρησιμοποιεί τυχαιοποίηση και έλεγχο συνοχής σε μια προσπάθεια το προτεινόμενο σύστημα να παρουσιάζει αντοχή και ανθεκτικότητα ενάντια σε FA και SCA επιθέσεις χωρίς να δημιουργηθούν νέα τρωτά σημεία.
|