Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT

Ψηφιακά συστήματα που χρησιμοποιούνται σε περιβάλλοντα με περιορισμένο περιθώριο ενεργειακής κατανάλωσης και διαθεσιμότητας πόρων απαιτούν ένα ικανό επίπεδο κρυπτογράφησης για ασφαλή επικοινωνία. Αλγόριθμοι που αναπτύσσονται για αυτό το σκοπό αποτελούν μια ικανοποιητική λύση, όμως, βελτιωμένες αρχιτ...

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

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Ζυγούρος, Ιωάννης
Άλλοι συγγραφείς: Θεοδωρίδης, Γεώργιος
Μορφή: Thesis
Γλώσσα:Greek
Έκδοση: 2019
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/12590
id nemertes-10889-12590
record_format dspace
institution UPatras
collection Nemertes
language Greek
topic Κρυπτογράφηση
Αλγόριθμος PRESENT
Cryptography
FPGA
005.824
spellingShingle Κρυπτογράφηση
Αλγόριθμος PRESENT
Cryptography
FPGA
005.824
Ζυγούρος, Ιωάννης
Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
description Ψηφιακά συστήματα που χρησιμοποιούνται σε περιβάλλοντα με περιορισμένο περιθώριο ενεργειακής κατανάλωσης και διαθεσιμότητας πόρων απαιτούν ένα ικανό επίπεδο κρυπτογράφησης για ασφαλή επικοινωνία. Αλγόριθμοι που αναπτύσσονται για αυτό το σκοπό αποτελούν μια ικανοποιητική λύση, όμως, βελτιωμένες αρχιτεκτονικές υλοποιήσεις αυτών των αλγορίθμων δύναται να επιτύχουν πιο γρήγορη επικοινωνία και καλύτερα κυκλωματικά χαρακτηριστικά. Σκοπός της παρούσας διπλωματικής εργασίας είναι ο σχεδιασμός και η υλοποίηση κρυπτογραφικών συστημάτων με βάση τον αλγόριθμο PRESENT, η επαλήθευσή λειτουργίας τους και η σύγκριση των επιδόσεων τους. Συγκεκριμένα αναπτύχθηκαν και υλοποιήθηκαν τέσσερεις αρχιτεκτονικές. Με χρήση της γλώσσας περιγραφής υλικού VHDL, υλοποιήθηκε ένα συνδυαστικό κύκλωμα (Combined Module) που διαθέτει σύστημα παραγωγής κλειδιών, σύστημα κρυπτογράφησης και αποκρυπτογράφησης και τρείς αρχιτεκτικές για κρυπτογράφηση με χρήση της τεχνικής διοχέτευσης (Pipeline) των 2, 4 και 8 σταδίων. Η επιβεβαίωση της ορθής λειτουργίας των αρχιτεκτονικών έγινε σε προγραμματιστικό επίπεδο (software) στη γλώσσα C και σε επίπεδο υλικού (hardware) με χρήση της γλώσσας VHDL στη πλακέτα FPGA (Field Programmable Gate Array) Virtex 5. Οι αρχιτεκτονικές που αναπτύχθηκαν, εφαρμόστηκαν σε επιλεγμένες οικογένειες Xilinx FPGA (Spartan, Atrix, Virtex) με γνώμονα μικρή, μεσαία και μεγάλη διαθεσιμότητα πόρων. Συγκεκριμένα, από τα πειραματικά αποτελέσματα που προέκυψαν στο FPGA device Spartan 100, παρατηρήθηκε ότι η Combined Module υλοποίηση εμφάνισε συχνότητα λειτουργίας (Performance) 117 MHz, ρυθμό επεξεργασίας δεδομένων (Throughput) 107 Mbps, ρυθμό επεξεργασίας δεδομένων ανά επιφάνεια (Throughput/Area) 132 Mbps/Slice και ρυθμό επεξεργασίας δεδομένων προς ενεργειακή κατανάλωση (Throughput/Power) 986 Mbps/Watt. Παρόμοια αποτελέσματα εμφανίστηκαν και στα υπόλοιπα devices. Διακρίνεται πως οι αρχιτεκτονικές με χρήση της τεχνικής Pipeline παρουσίασαν βελτιωμένα κυκλωματικά χαρακτηριστικά συγκρίνοντας τα με την αρχιτεκτονική Combined Module. Στην αρχιτεκτονική Pipeline 2 Stages παρατηρήθηκε στο ίδιο device, αύξηση κατά 37% στην απόδοση με 161 MHz, 171 % στο Throughput με 291 Mbps και επιπλέον διπλάσιο Throughput/Area. Στην αρχιτεκτονική Pipeline 4 Stages η βελτίωση στην απόδοση ήταν 52% και φάνηκε πενταπλάσια βελτίωση σε Throughput και Throughput/Area, ενώ η Pipeline 8 Stages παρουσίασε βελτίωση 44% σε απόδοση με 170 MHz, 9,5 φορές καλύτερο Throughput με 1127 Mbps και 13 φορές βελτιωμένο Throughput/Area με 1316 Mbps/Slice. Παρατηρήθηκε επίσης μείωση στα Slices των FPGA καθώς αυξήθηκαν τα στάδια Pipeline. Το αντίθετο διακρίθηκε για τα LUT και τα Flip Flop. Παρόμοια αποτελέσματα είχαν και τα υπόλοιπα FPGA που χρησιμοποιήθηκαν. Επίσης έγινε αντιληπτό πως η στατική κατανάλωση εξαρτάται από το μέγεθος και το μοντέλο του εκάστοτε FPGA, ενώ όσο περισσότερα ήταν τα στάδια Pipeline, τόσο αυξήθηκε και η δυναμική κατανάλωση. Αξιοσημείωτο είναι πως η οικογένεια Virtex παρουσίασε συνολικά το καλύτερο Throughput σε όλες τις αρχιτεκτονικές με 660 Mbps, όμως είχε 62% λιγότερο Throughput/Power σε σχέση με τα μοντέλα Spartan και Atrix. Η παρούσα μελέτη έδειξε ότι αξιοποιώντας την τεχνική Pipeline αυξάνονται σημαντικά οι επιδόσεις ενός κρυπτογραφικού συστήματος PRESENT, ενώ θυσιάζονται ελάχιστοι πόροι και κατανάλωση. Επίσης, παρατηρήθηκε πως οι χρησιμοποιούμενοι πόροι της εκάστοτε αρχιτεκτονικής ήταν σημαντικά μειωμένοι συγκριτικά με τα FPGA devices που επιλέχθηκαν προκαλώντας αυξημένη ενεργειακή κατανάλωση. Η επιλογή devices με λίγους διαθέσιμους πόρους θα αποτελούσε καλύτερη λύση για περιβάλλοντα με περιορισμένο περιθώριο ενεργειακής κατανάλωσης και πόρων.
author2 Θεοδωρίδης, Γεώργιος
author_facet Θεοδωρίδης, Γεώργιος
Ζυγούρος, Ιωάννης
format Thesis
author Ζυγούρος, Ιωάννης
author_sort Ζυγούρος, Ιωάννης
title Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
title_short Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
title_full Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
title_fullStr Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
title_full_unstemmed Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT
title_sort ανάπτυξη σε fpga κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου present
publishDate 2019
url http://hdl.handle.net/10889/12590
work_keys_str_mv AT zygourosiōannēs anaptyxēsefpgakryptographikousystēmatosgiaylopoiēsētoualgorithmoupresent
AT zygourosiōannēs developmentofcryptographicsystembasedonthepresentalgorithmwithfpgatechnology
_version_ 1771297134289616896
spelling nemertes-10889-125902022-09-05T05:00:04Z Ανάπτυξη σε FPGA κρυπτογραφικού συστήματος για υλοποίηση του αλγόριθμου PRESENT Development of cryptographic system based on the PRESENT algorithm with FPGA technology Ζυγούρος, Ιωάννης Θεοδωρίδης, Γεώργιος Μπίρμπας, Μιχαήλ Zygouros, Ioannis Κρυπτογράφηση Αλγόριθμος PRESENT Cryptography FPGA 005.824 Ψηφιακά συστήματα που χρησιμοποιούνται σε περιβάλλοντα με περιορισμένο περιθώριο ενεργειακής κατανάλωσης και διαθεσιμότητας πόρων απαιτούν ένα ικανό επίπεδο κρυπτογράφησης για ασφαλή επικοινωνία. Αλγόριθμοι που αναπτύσσονται για αυτό το σκοπό αποτελούν μια ικανοποιητική λύση, όμως, βελτιωμένες αρχιτεκτονικές υλοποιήσεις αυτών των αλγορίθμων δύναται να επιτύχουν πιο γρήγορη επικοινωνία και καλύτερα κυκλωματικά χαρακτηριστικά. Σκοπός της παρούσας διπλωματικής εργασίας είναι ο σχεδιασμός και η υλοποίηση κρυπτογραφικών συστημάτων με βάση τον αλγόριθμο PRESENT, η επαλήθευσή λειτουργίας τους και η σύγκριση των επιδόσεων τους. Συγκεκριμένα αναπτύχθηκαν και υλοποιήθηκαν τέσσερεις αρχιτεκτονικές. Με χρήση της γλώσσας περιγραφής υλικού VHDL, υλοποιήθηκε ένα συνδυαστικό κύκλωμα (Combined Module) που διαθέτει σύστημα παραγωγής κλειδιών, σύστημα κρυπτογράφησης και αποκρυπτογράφησης και τρείς αρχιτεκτικές για κρυπτογράφηση με χρήση της τεχνικής διοχέτευσης (Pipeline) των 2, 4 και 8 σταδίων. Η επιβεβαίωση της ορθής λειτουργίας των αρχιτεκτονικών έγινε σε προγραμματιστικό επίπεδο (software) στη γλώσσα C και σε επίπεδο υλικού (hardware) με χρήση της γλώσσας VHDL στη πλακέτα FPGA (Field Programmable Gate Array) Virtex 5. Οι αρχιτεκτονικές που αναπτύχθηκαν, εφαρμόστηκαν σε επιλεγμένες οικογένειες Xilinx FPGA (Spartan, Atrix, Virtex) με γνώμονα μικρή, μεσαία και μεγάλη διαθεσιμότητα πόρων. Συγκεκριμένα, από τα πειραματικά αποτελέσματα που προέκυψαν στο FPGA device Spartan 100, παρατηρήθηκε ότι η Combined Module υλοποίηση εμφάνισε συχνότητα λειτουργίας (Performance) 117 MHz, ρυθμό επεξεργασίας δεδομένων (Throughput) 107 Mbps, ρυθμό επεξεργασίας δεδομένων ανά επιφάνεια (Throughput/Area) 132 Mbps/Slice και ρυθμό επεξεργασίας δεδομένων προς ενεργειακή κατανάλωση (Throughput/Power) 986 Mbps/Watt. Παρόμοια αποτελέσματα εμφανίστηκαν και στα υπόλοιπα devices. Διακρίνεται πως οι αρχιτεκτονικές με χρήση της τεχνικής Pipeline παρουσίασαν βελτιωμένα κυκλωματικά χαρακτηριστικά συγκρίνοντας τα με την αρχιτεκτονική Combined Module. Στην αρχιτεκτονική Pipeline 2 Stages παρατηρήθηκε στο ίδιο device, αύξηση κατά 37% στην απόδοση με 161 MHz, 171 % στο Throughput με 291 Mbps και επιπλέον διπλάσιο Throughput/Area. Στην αρχιτεκτονική Pipeline 4 Stages η βελτίωση στην απόδοση ήταν 52% και φάνηκε πενταπλάσια βελτίωση σε Throughput και Throughput/Area, ενώ η Pipeline 8 Stages παρουσίασε βελτίωση 44% σε απόδοση με 170 MHz, 9,5 φορές καλύτερο Throughput με 1127 Mbps και 13 φορές βελτιωμένο Throughput/Area με 1316 Mbps/Slice. Παρατηρήθηκε επίσης μείωση στα Slices των FPGA καθώς αυξήθηκαν τα στάδια Pipeline. Το αντίθετο διακρίθηκε για τα LUT και τα Flip Flop. Παρόμοια αποτελέσματα είχαν και τα υπόλοιπα FPGA που χρησιμοποιήθηκαν. Επίσης έγινε αντιληπτό πως η στατική κατανάλωση εξαρτάται από το μέγεθος και το μοντέλο του εκάστοτε FPGA, ενώ όσο περισσότερα ήταν τα στάδια Pipeline, τόσο αυξήθηκε και η δυναμική κατανάλωση. Αξιοσημείωτο είναι πως η οικογένεια Virtex παρουσίασε συνολικά το καλύτερο Throughput σε όλες τις αρχιτεκτονικές με 660 Mbps, όμως είχε 62% λιγότερο Throughput/Power σε σχέση με τα μοντέλα Spartan και Atrix. Η παρούσα μελέτη έδειξε ότι αξιοποιώντας την τεχνική Pipeline αυξάνονται σημαντικά οι επιδόσεις ενός κρυπτογραφικού συστήματος PRESENT, ενώ θυσιάζονται ελάχιστοι πόροι και κατανάλωση. Επίσης, παρατηρήθηκε πως οι χρησιμοποιούμενοι πόροι της εκάστοτε αρχιτεκτονικής ήταν σημαντικά μειωμένοι συγκριτικά με τα FPGA devices που επιλέχθηκαν προκαλώντας αυξημένη ενεργειακή κατανάλωση. Η επιλογή devices με λίγους διαθέσιμους πόρους θα αποτελούσε καλύτερη λύση για περιβάλλοντα με περιορισμένο περιθώριο ενεργειακής κατανάλωσης και πόρων. Electronic digital devices employed in a constrained setting (low power consumption and restricted available resources) require a level of cryptographic security for safely interfacing with their environment. Algorithms developed for this purpose form a solid lightweight solution for these constrained environments, however, better architecture implementations should be considered in order to improve their communicating and circuitry characteristics. The main goal of this thesis is the design and implementation of cryptographic systems based on the PRESENT algorithm, validation of their function in FPGA (Field Programmable Gate Array) technology, and comparison of their performance. In this context four architectures were developed and implemented, with use of the Hardware Description Language VHDL, a united system (Combined Module) which consists of a key generation, encryption and decryption procedure, and three encryption systems with applied Pipeline technique of 2, 4 and 8 Stages. The validity of all the architectures was conducted in a programming environment (software) with C language, and in a hardware setting with the use of VHDL utilizing the Virtex 5 FPGA device. The developed architectures where applied in certain FPGA families (Spartan, Atrix, Virtex) taking into consideration little, average and plentiful available resources. The experimental results in the Spartan 100 FPGA device have shown that the Combined Module implementation had, performance of 117 MHz, Throughput 107 Mbps, Throughput/Area 132 Mbps/Slice and Throughput/Power 986 Mbps/Watt. Similar results were observed in the other FPGA devices which were used. The applied Pipeline technique has shown considerate improvement in these measurements. Specifically, in the same FPGA device, Pipeline 2 Stages architecture has shown an improvement of 37% in Performance with 161MHz, 171% in Throughput with 281 Mbps and additionally double the ratio in Throughput/Area. Furthermore, Pipeline 4 Stages had an improvement in Performance of 52%, whereas Throughput and Throughput/Area had about 5 times better results. Pipeline 8 Stages showed an improvement of 44% in performance with 170 MHz, 9,5 better Throughput with 1127 Mbps and 13 times better Throughput/Area with 1316 Mbps/Slice. Additionally, a reduction in used slices in FPGA was observed, as Pipeline Stages was being added. The opposite result was detected in LUT and Flip Flop. Similar results were observed in the other FPGA devices used. Moreover, it was understood that static power consumption depends on the magnitude of the FPGA, whereas dynamic power consumption is contingent on the number of Pipeline Stages. It is worth mentioning that the Virtex family has shown the best Throughput with 660 Mbps on average in all architectures deployed, however, it had 62% worst Throughput/Power compared to Spartan and Atrix models. This thesis has shown that using pipeline implementation greatly improves the performance of a cryptographic PRESENT system, while the cost in used available resources and power consumption is small. Furthermore, the used resources in every architecture was considerably little, compared to the available resources in all FPGAs used, producing increased power consumption. A selection of small FPGA devices for this application would be a better choice in constrained environments. 2019-10-10T21:04:50Z 2019-10-10T21:04:50Z 2019-07-10 Thesis http://hdl.handle.net/10889/12590 gr 0 An error occurred getting the license - uri. application/pdf