Ασφάλεια δεδομένων σε υλικό με τη χρήση ελλειπτικών καμπυλών binary Edwards

Αντικείμενο της εργασίας αυτής αποτελεί ένα αρκετά ενδιαφέρον ζήτημα στο χώρο της Κρυπτογραφίας, αυτό της προσπάθειας ανάδειξης πιο αποδοτικών και ασφαλέστερων οικογενειών Ελλειπτικών Καμπυλών καθώς και την πρακτική εφαρμογή αυτών. Υπό αυτό το πρίσμα, η εργασία αυτή καταπιάνεται με την ανάπτυξη...

Πλήρης περιγραφή

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Δημόπουλος, Χαράλαμπος
Άλλοι συγγραφείς: Κουφοπαύλου, Οδυσσέας
Μορφή: Thesis
Γλώσσα:Greek
Έκδοση: 2018
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/11742
Περιγραφή
Περίληψη:Αντικείμενο της εργασίας αυτής αποτελεί ένα αρκετά ενδιαφέρον ζήτημα στο χώρο της Κρυπτογραφίας, αυτό της προσπάθειας ανάδειξης πιο αποδοτικών και ασφαλέστερων οικογενειών Ελλειπτικών Καμπυλών καθώς και την πρακτική εφαρμογή αυτών. Υπό αυτό το πρίσμα, η εργασία αυτή καταπιάνεται με την ανάπτυξη ενός Κρυπτογραφικού Συστήματος Ελλειπτικών Καμπυλών βασισμένο στις Καμπύλες Edwards και πιο συ- γκεκριμένα τη δυαδική τους μορφή, δηλαδή τις Binary Edwards Curves. Αρχικά, σε μαθηματικό επίπεδο, γίνεται μια σύγκριση μεταξύ των διαφορετικών οικογενειών καμπυλών με τα αντίστοιχα μειονεκτήματα και πλεονεκτήματα που προσφέρει η καθεμία. Σε σχέση με τις ήδη καθιερω- μένες καμπύλες Weierstrass, οι Καμπύλες Edwards θεωρούνται ολοκληρω- μένες και ομοιόμορφες, καθώς δεν παρουσιάζουν σημεία εξαίρεσης που αποτελούν τρωτό σημείο όσον αφορά την ασφάλεια. Μειονέκτημά τους όμως σε σχέση με τις Weierstrass είναι η απόδοσή τους λόγω των περισ- σότερων πράξεων πεπερασμένων πεδίων που απαιτούν. Σε αυτό το σημείο πρέπει να ληφθεί η σωστή απόφαση όσον αφορά τον τύπο πεπερασμένου πεδίου, καθώς αυτή θα επηρρεάσει σε με- γάλο βαθμό τη μορφή και του υπόλοιπου συστήματος. Υπό αυτό το πρίσμα, μία επιλογή αφορά την εφαρμογή του Κρυπτογραφικού Συστήματος εξο- λοκλήρου σε λογισμικό, προσφέροντας αρκετά μεγάλη ευελιξία με σοβαρό ανίκτυπο όμως την ταχύτητα εκτέλεσης και την ασφάλεια από επιθέσεις τύπου Side Channel Analysis. Η άλλη προσέγγιση είναι μια υλοποίηση ως επί το πλείστον σε υλικό, γεγονός που προσδίδει τις μέγιστες επιδόσεις και ασφάλεια, με αντίκτυπο παρ’όλα αυτά το χρόνο σχεδιασμού και την ανε- λαστικότητα που αναπόφευκτα προσδίδει μία τέτοιου τύπου υλοποίηση. Θέλοντας λοιπόν να προσδώσουμε ταχύτητα στο σύστημά μας προχωρούμε στην επιλογή δυαδικών GF (2 k ) πεδίων αντί των πρώτων GF ( p ) και κατά συνέπεια στην υλοποίησή των πράξεών τους απευθείας σε υλικό, αφού σε αυτά απλουστεύονται κατά μεγάλο βαθμό σχεδιαστικά οι πράξεις αυτές. Έχοντας επίγνωση πλέον οτι στο χαμηλότερο επίπεδο οι πράξεις της πρόσθεσης και του πολλαπλασιασμού σε πεδία GF (2 k ) θα υλοποι- ηθούν σε υλικό, προσπαθούμε να αντλήσουμε όσο το δυνατόν περισσό- τερη ταχύτητα ανά χρόνο σχεδίασης γίνεται. Παρατηρούμε λοιπόν πως στον αλγόριθμο γέννησης και επικύρωσης υπογραφών ECDSA η πιο απαι- τητική ενέργεια είναι η πράξη του Βαθμωτού Πολλαπλασιασμού (Scalar Multiplication). Για αυτόν τον λόγο λαμβάνεται η απόφαση το Κρυπτο- γραφικό Σύστημα να είναι ένα υβρίδιο υλικού-λογισμικού, με την πράξη του Βαθμωτού Πολλαπλασιασμού να πραγματοποιείται σε υλικό και τις υπόλοιπες αλγοριθμικές ενέργειες να τις αναλαμβάνει το λογισμικό. Προχωρώντας προς τον τελικό στόχο την υλοποίηση ενός πολλα- πλασιαστή με ισορροπημένα χαρακτηριστικά όσον αφορά την ταχύτητα v και τον αριθμό των χρησιμοποιούμενων λογικών πυλών, χωρίς όμως να υστερείται προστατευτικών μέτρων απέναντι σε SCA επιθέσεις, εφαρμό- ζουμε μία σειρά από τεχνικές βελτιστοποίησης. Πιο συγκεκριμένα, μετά από μία Data Dependency Graph ανά- λυση, αναμιγνύονται οι GF (2 k ) πράξεις και της Πρόσθεσης και του Διπλα- σιασμού σημείου καμπύλης και παραλληλίζονται ταυτόχρονα σε επίπεδα, δημιουργώντας ένα συμπαγές συνονθύλεμα που αποκρύπτει όσο το δυνα- τόν περισσότερη κρίσιμη πληροφορία καθ’όλη τη διάρκεια εκτέλεσης του Βαθμωτού Πολλαπλασιασμού. Ο πολλαπλασιαστής είναι δομημένος από τρεις ξεχωριστές και ημιαυτόνομες μονάδες που αναλαμβάνουν η κάθε μια την αποθήκευση των αποτελεσμάτων στο δικό τους αρχείο καταχωρητών και την επανάκτηση των τιμών αυτών ώστε να προωθηθούν στις επιμέρους αριθμητικές μονάδες προς υπολογισμό των νέων αποτελεσμάτων. Στις μονάδες αυτές έχει εφαρμοστεί μία τεχνική σημαντικής μεί- ωσης της επιφάνειας του δικτύου πολυπλεκτών μέσω της ομαδοποίησης των αποτελεσμάτων ανά δύο. Τις τρεις αυτές μονάδες συγχρονίζει μία Μηχανή Πεπερασμένων Καταστάσεων (FSM), υπεύθυνη για τη διαβίβαση όλων των σημάτων ελέγχου. Μία επιπλέον τεχνική αφορά τη δόμηση του Αρχείου Καταχωρητών με τέτοιο τρόπο ώστε να διαχειρίζεται πιο απο- δοτικά τη διάρκεια ζωής των αποτελεσμάτων με συνέπεια τη μείωση του αριθμού των αναγκαίων καταχωρητών. Περισσότερες λεπτομέρειες για τις συγκεκριμένες τεχνικές παρουσιάζονται στο Κεφάλαιο 3. Στην προσπάθεια να ενισχυθεί το συνολικό σύστημα από επιθέ- σεις τύπου SPA (Simple Power Attack) και SCA (Side Channel Analysis), έχει προταθεί μία σειρά αντίμετρων. Η εκτέλεση του Βαθμωτού Πολλαπλα- σιασμού επιτυγχάνεται με τη χρήση του αλγορίθμου Montgomery Power Ladder (MPL), ο οποίος προσφέρει απόκρυψη των εκτελεσθέντων πράξεων σημείων χωρίς όμως την εισαγωγή επιπλέον ψεύτικων πράξεων. Εκτός όμως από τον παραλληλισμό επιπέδων των GF (2 k ) πράξεων και τη χρήση του MPL, δύο επιπλέον μέτρα προστασίας από SCA επιθέσεις έχουν εφαρ- μοστεί. Το πρώτο αφορά την τυχαιοποίηση της βαθμωτής τιμής του πολλα- πλασιασμού, η οποία γίνεται σε επίπεδο λογισμικού και το δεύτερο αφορά την τυχαιοποίηση των προβολικών συντεταγμένων του σημείου εξόδου του Βαθμωτού Πολλαπλασιαστή πολλές φορές κατά τη διάρκεια εκτέλεσης του πολλαπλασιασμού. Για να δοκιμαστεί η αρχιτεκτονική του συστήματος αυτού σε πραγματικές συνθήκες, υλοποιήθηκε σε υλικό με τη βοήθεια του Zynq- 7000 SoC FPGA (Zedboard). Ο Βαθμωτός Πολλαπλασιαστής συνδέεται με έναν επεξεργαστή ARM Cortex-A9 μέσω ενός driver γραμμένου σε C. Τα αποτελέσματα που παράχθηκαν φανερώνουν μία ισορροπημένη σχεδίαση, με αρκετά ικανοποιητικές τιμές όσον αφορά το συνδυασμό ταχύτητας και χρησιμοποιούμενης επιφάνειας. Τέλος, το σύστημα ελέγχθηκε ως προς την αντίσταση που προ- σφέρει ενάντια σε επιθέσεις μέσω της χρήσης της τεχνικής του Test Vector vi Leakage Assessment (TVLA), όπου επίσης φανερώθηκαν αρκετά ικανοποι- ητικά αποτελέσματα που του προσδίδουν ένα σεβαστό επίπεδο προστα- σίας. Λαμβάνοντας υπόψιν λοιπόν και τις θετικές μετρήσεις υλοποίησης όπως αναφέρθηκαν παραπάνω, φανερώνεται πως το σύστημα αυτό απο- τελεί μία ολοκληρωμένη λύση όσον αφορά τα διάφορα χαρακτηριστικά του και υλοποιημένο με βάση μία καινούρια οικογένεια καμπυλών.