Υλοποίηση αλγορίθμου μετα-κβαντικής κρυπτογραφίας
| datacite.contributor.RelatedPerson | Θεοδωρίδης, Γεώργιος | |
| datacite.contributor.RelatedPerson | Μπίρμπας, Μιχαήλ | |
| datacite.contributor.Supervisor | Σερπάνος, Δημήτριος | |
| dc.contributor.author | Γιαννόπουλος, Γεώργιος | |
| dc.contributor.other | Giannopoulos, Georgios | |
| dc.date.accessioned | 2026-07-06T08:26:16Z | |
| dc.date.available | 2026-07-06T08:26:16Z | |
| dc.date.issued | 2026-07-01 | |
| dc.degree | graduateThesis | |
| dc.description.abstract | Η ανάδυση μεγάλης κλίμακας κβαντικών υπολογιστών αποτελεί θεμελιώδη απειλή για την ασφάλεια των κλασικών κρυπτογραφικών σχημάτων δημοσίου κλειδιού, συμπεριλαμβανομένων του RSA και της κρυπτογραφίας ελλειπτικών καμπυλών (ECC). Ο αλγόριθμος Shor [6], εκτελούμενος σε επαρκώς ισχυρό κβαντικό υπολογιστή, επιλύει το πρόβλημα παραγοντοποίησης ακεραίων και το πρόβλημα του διακριτού λογαρίθμου σε πολυωνυμικό χρόνο, καθιστώντας τα κρυπτοσυστήματα RSA και ECC ανασφαλή. Ως απόκριση, αναπτύχθηκε η Μετα-Κβαντική Κρυπτογραφία (Post-Quantum Cryptography, PQC), στην οποία εντάσσεται το κρυπτοσύστημα NTRU — ένα από τα παλαιότερα και πλέον αναλυμένα κρυπτοσυστήματα βασισμένα σε πλέγματα. Η παρούσα διπλωματική εργασία παρουσιάζει μια πλήρη υλοποίηση του κρυπτοσυστήματος NTRU-HPS (N=509, p=3, q=2048, επίπεδο ασφάλειας ≈128 bit) σε FPGA, αναπτυγμένη με χρήση του Vivado / Vitis High-Level Synthesis (HLS) 2024.2 της AMD Xilinx. Η υλοποίηση σε C/C++ καλύπτει τις τρεις κεντρικές λειτουργίες του κρυπτοσυστήματος: παραγωγή κλειδιών (keygen), κρυπτογράφηση (encryption) και αποκρυπτογράφηση (decryption). Ο κώδικας βελτιστοποιείται μέσω pragma οδηγιών HLS, συμπεριλαμβανομένων των HLS PIPELINE (II=1), HLS ARRAY_PARTITION CYCLIC και HLS DATAFLOW. Η συσκευή-στόχος είναι το FPGA Xilinx Zynq UltraScale+ ZCU104 (XCZU7EV-FFVC1156-2-E). Κατά τη διαδικασία ανάπτυξης εντοπίστηκαν και διορθώθηκαν δύο κρίσιμα μαθηματικά σφάλματα: (α) η κατασκευή του ιδιωτικού κλειδιού f, η οποία πρέπει να ακολουθεί τη μορφή f = 1 + p·F (αντί απλού τριαδικού πολυωνύμου) για να εξασφαλίζεται η αντιστρεψιμότητά του στον δακτύλιο R_p, και (β) ο αλγόριθμος αντιστροφής πολυωνύμων, ο οποίος απαιτεί πλήρη πολυωνυμική διαίρεση (long division with remainder) σε κάθε βήμα του Εκτεταμένου Αλγόριθμου Ευκλείδη (EEA) για ορθά αποτελέσματα σε GF(p)[x]/(x^N - 1). Η ορθότητα της υλοποίησης επαληθεύεται μέσω πλήρους κύκλου keygen → encrypt → decrypt (C-simulation), ο οποίος επιστρέφει PASS για τυχαία δεδομένα ελέγχου. Τα αποτελέσματα σύνθεσης αξιολογούνται ως προς κατανάλωση πόρων FPGA (LUTs, FFs, DSPs, BRAM), μέγιστη συχνότητα λειτουργίας και καθυστέρηση (latency), και συγκρίνονται με σχετικές προηγούμενες εργασίες της βιβλιογραφίας. Τα αποτελέσματα αποδεικνύουν ότι το Vitis HLS 2024.2 αποτελεί αποτελεσματική μεθοδολογία για πρωτοτυποποίηση κρυπτογραφικού υλικού PQC, επιτυγχάνοντας σημαντική επιτάχυνση σε σχέση με το λογισμικό αναφοράς, με μικρότερο κόστος ανάπτυξης σε σχέση με χειροκίνητο RTL σχεδιασμό. | |
| dc.description.translatedabstract | The emergence of large-scale quantum computers constitutes a fundamental threat to the security of classical public-key cryptographic schemes, including RSA and Elliptic Curve Cryptography (ECC). Shor's algorithm [6], when executed on a sufficiently powerful quantum computer, solves the integer factorization problem and the discrete logarithm problem in polynomial time, rendering the RSA and ECC cryptosystems insecure. In response, Post-Quantum Cryptography (PQC) has been developed, which encompasses the NTRU cryptosystem — one of the oldest and most thoroughly analyzed lattice-based cryptosystems. This thesis presents a complete implementation of the NTRU-HPS cryptosystem (N=509, p=3, q=2048, security level ≈128 bits) on FPGA, developed using AMD Xilinx Vivado / Vitis High-Level Synthesis (HLS) 2024.2. The C/C++ implementation covers the three core operations of the cryptosystem: key generation (keygen), encryption, and decryption. The code is optimized through HLS pragma directives, including HLS PIPELINE (II=1), HLS ARRAY_PARTITION CYCLIC, and HLS DATAFLOW. The target device is the Xilinx Zynq UltraScale+ ZCU104 FPGA (XCZU7EV-FFVC1156-2-E). During the development process, two critical mathematical errors were identified and corrected: (a) the construction of the private key f, which must follow the form f = 1 + p·F (rather than a plain ternary polynomial) in order to ensure its invertibility in the ring R_p, and (b) the polynomial inversion algorithm, which requires full polynomial long division (with remainder) at every step of the Extended Euclidean Algorithm (EEA) to produce correct results in GF(p)[x]/(x^N − 1). The correctness of the implementation is verified through a complete keygen → encrypt → decrypt round-trip (C-simulation), which returns PASS for randomized test data. The synthesis results are evaluated with respect to FPGA resource utilization (LUTs, FFs, DSPs, BRAM), maximum operating frequency, and latency, and are compared against related prior work in the literature. The results demonstrate that Vitis HLS 2024.2 constitutes an effective methodology for prototyping PQC cryptographic hardware, achieving significant acceleration over the reference software implementation, with lower development cost compared to manual RTL design. | |
| dc.identifier.uri | https://hdl.handle.net/10889/32283 | |
| dc.language.iso | el | |
| dc.subject | Μετα-κβαντική κρυπτογραφία | |
| dc.subject | Κρυπτογραφία πλεγμάτων | |
| dc.subject | Κρυπτογραφία | |
| dc.subject.alternative | Post quantum cryptography | |
| dc.subject.alternative | Lattice based cryptography | |
| dc.subject.alternative | Field programmable gate array (FPGA) | |
| dc.title | Υλοποίηση αλγορίθμου μετα-κβαντικής κρυπτογραφίας | |
| dc.title.alternative | Development of a post quantum cryptography algorithm |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- Διπλωματική Εργασία Γιαννόπουλος Γιώργος 1020849.pdf
- Size:
- 1.59 MB
- Format:
- Adobe Portable Document Format
License bundle
1 - 1 of 1
No Thumbnail Available
- Name:
- license.txt
- Size:
- 5.02 KB
- Format:
- Item-specific license agreed upon to submission
- Description: