An application specific instruction set processor for cryptographic applications based on RISC-V architecture

Nowadays, RISC-V instruction set architecture (ISA) is becoming increasingly popular in commercial CPU implementations. The benefits introduced by its open-source and simple design along with its ability to be customizable, make it a strong candidate, especially for inexpensive, low-power embedded d...

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

Λεπτομέρειες βιβλιογραφικής εγγραφής
Κύριος συγγραφέας: Θεοδωρόπουλος, Νικόλαος
Άλλοι συγγραφείς: Theodoropoulos, Nikolaos
Γλώσσα:English
Έκδοση: 2021
Θέματα:
Διαθέσιμο Online:http://hdl.handle.net/10889/14991
id nemertes-10889-14991
record_format dspace
institution UPatras
collection Nemertes
language English
topic Processors
RISC-V
Instruction set architecture
VexRiscv
SHA-256
FPGA
Αρχιτεκτονική επεξεργαστών
Αλγόριθμοι κρυπτογραφίας
spellingShingle Processors
RISC-V
Instruction set architecture
VexRiscv
SHA-256
FPGA
Αρχιτεκτονική επεξεργαστών
Αλγόριθμοι κρυπτογραφίας
Θεοδωρόπουλος, Νικόλαος
An application specific instruction set processor for cryptographic applications based on RISC-V architecture
description Nowadays, RISC-V instruction set architecture (ISA) is becoming increasingly popular in commercial CPU implementations. The benefits introduced by its open-source and simple design along with its ability to be customizable, make it a strong candidate, especially for inexpensive, low-power embedded devices. Implementations used in IoT applications can reap the benefits from an instruction set architecture like RISC-V, as energy efficiency is of paramount importance. Security and privacy of IoT networks have also been an ongoing debate and the most sought-after solutions are those achieving it with minimum performance requirements. There have been proposals that cryptographic hash functions and Blockchain technology could be parts of a potential solution to these problems. In this thesis, a RISC-V processor is presented and extended to make it suitable for cryptographic applications. Firstly, the RISC-V concept and architecture are introduced. Secondly, VexRiscv, the RISC-V core selected to host the cryptographic extensions, is studied. Subsequently, the cryptographic algorithm associated with this thesis and the technique used to accelerate its execution are thoroughly examined, with emphasis on details regarding the implementation. Finally, the design is implemented on a Field Programmable Gate Array, where its proper functioning is verified, initially via simulation and then through waveforms provided by an Integrated Logic Analyzer.
author2 Theodoropoulos, Nikolaos
author_facet Theodoropoulos, Nikolaos
Θεοδωρόπουλος, Νικόλαος
author Θεοδωρόπουλος, Νικόλαος
author_sort Θεοδωρόπουλος, Νικόλαος
title An application specific instruction set processor for cryptographic applications based on RISC-V architecture
title_short An application specific instruction set processor for cryptographic applications based on RISC-V architecture
title_full An application specific instruction set processor for cryptographic applications based on RISC-V architecture
title_fullStr An application specific instruction set processor for cryptographic applications based on RISC-V architecture
title_full_unstemmed An application specific instruction set processor for cryptographic applications based on RISC-V architecture
title_sort application specific instruction set processor for cryptographic applications based on risc-v architecture
publishDate 2021
url http://hdl.handle.net/10889/14991
work_keys_str_mv AT theodōropoulosnikolaos anapplicationspecificinstructionsetprocessorforcryptographicapplicationsbasedonriscvarchitecture
AT theodōropoulosnikolaos epexergastēseidikouskopouarchitektonikēsriscvmeemphasēsekryptographikesepharmoges
AT theodōropoulosnikolaos applicationspecificinstructionsetprocessorforcryptographicapplicationsbasedonriscvarchitecture
_version_ 1771297273435652096
spelling nemertes-10889-149912022-09-05T20:33:49Z An application specific instruction set processor for cryptographic applications based on RISC-V architecture Επεξεργαστής ειδικού σκοπού αρχιτεκτονικής RISC-V με έμφαση σε κρυπτογραφικές εφαρμογές Θεοδωρόπουλος, Νικόλαος Theodoropoulos, Nikolaos Processors RISC-V Instruction set architecture VexRiscv SHA-256 FPGA Αρχιτεκτονική επεξεργαστών Αλγόριθμοι κρυπτογραφίας Nowadays, RISC-V instruction set architecture (ISA) is becoming increasingly popular in commercial CPU implementations. The benefits introduced by its open-source and simple design along with its ability to be customizable, make it a strong candidate, especially for inexpensive, low-power embedded devices. Implementations used in IoT applications can reap the benefits from an instruction set architecture like RISC-V, as energy efficiency is of paramount importance. Security and privacy of IoT networks have also been an ongoing debate and the most sought-after solutions are those achieving it with minimum performance requirements. There have been proposals that cryptographic hash functions and Blockchain technology could be parts of a potential solution to these problems. In this thesis, a RISC-V processor is presented and extended to make it suitable for cryptographic applications. Firstly, the RISC-V concept and architecture are introduced. Secondly, VexRiscv, the RISC-V core selected to host the cryptographic extensions, is studied. Subsequently, the cryptographic algorithm associated with this thesis and the technique used to accelerate its execution are thoroughly examined, with emphasis on details regarding the implementation. Finally, the design is implemented on a Field Programmable Gate Array, where its proper functioning is verified, initially via simulation and then through waveforms provided by an Integrated Logic Analyzer. Στον κόσμο της τεχνολογίας και της εξέλιξης, η καινοτομία και η δυνατότητα παραμετροποίησης ανάλογα με τις ανάγκες του κάθε προιόντος έχουν ιδιαίτερη σημασία. Ο κάθε κατασκευαστής θα προτιμούσε να χρησιμοποιεί μόνο ότι του είναι απαραίτητο σε μια σχεδίαση, αποφεύγοντας έτσι σπατάλη ενέργειας και υλικών πόρων. Οι δημοφιλείς επεξεργαστές που χρησιμοποιούνται στις περισσότερες εφαρμογές σήμερα, δεν προσφέρουν την δυνατότητα παραμετροποίησης καθώς πωλούνται αυτούσιοι σαν IP blocks και η αρχιτεκτονική τους είναι ιδιόκτητη, δηλαδή δεν είναι ανοιχτή στο επιστημονικό κοινό, παρά μόνο στις εταιρίες οι οποίες τις έχουν δημιουργήσει. Μια αρχιτεκτονική που είναι ανοιχτή και δωρεάν διαθέσιμη έχει μεγάλα οφέλη καθώς εξαλείφει τα προαναφερθέντα μειονεκτήματα. Μια τέτοια αρχιτεκτονική επεξεργαστών είναι η RISC-V, η οποία κερδίζει συνεχώς έδαφος, όχι μόνο στο επιστημονικό κοινό, αλλά και σε πολλές εμπορικές εφαρμογές. Παρόλο που δεν έχει φτάσει ακόμα την πολυπλοκότητα των αρχιτεκτονικών όπως x86 και ARM, η RISC-V εξελίσεται συνεχώς και θεωρείται από πολλους το μέλλον των επεξεργαστών. Ένας άλλο φαινόμενο στον τομέα της τεχνολογίας είναι η συνεχής αύξηση στη χρήση των αλγόριθμων κρυπτογραφίας. Αυτό οφείλεται κυρίως στα οφέλη που προσφέρει η τεχνολογία Blockchain και οι δυνατότητες χρησιμοποίησης της για την κατασκευή ενός ασφαλούς κατανεμημένου δικτύου στον κλάδο του Ίντερνετ των Πραγμάτων (IoT). Ο συνδιασμός αυτών των δύο καινοτόμων τεχνολογιών, που αναφέρθηκαν παραπάνω, είναι το αντικείμενο αυτής της εργασίας. Στην παρούσα εργασία υλοποιείται ενας επεξεργαστής αρχιτεκτονικής RISC-V και επεκτείνεται το σύνολο των εντολών του ώστε να εκτελεί εξειδικευμένες συναρτήσεις οι οποίες χρησιμοποιούνται στον αλγόριθμο κρυπτογραφίας SHA-256. Στα πλαίσια της ανάπτυξης αυτής της τεχνολογίας μελετάται διεξοδικά ο RISC-V επεξεργαστής που ονομάζεται VexRiscv ως προς την αρχιτεκτονική του καθώς και τον ιδιαίτερο τρόπο που έχει κατασκευαστεί. Στην συνέχεια αναλύεται ο αλγόριθμος κατακερματισμού SHA-256 και διευκρινύζεται πως μπορεί να επιταχυνθεί χρησιμοποιόντας έναν πλήρως λειτουργικό επεξεργαστή, ο οποίος είναι ικανός να εκτελέσει όλες τις εντολές της αρχιτεκτονικής RISCV. Τέλος, δίνεται έμφαση στον τρόπο υλοποίησης του επεξεργαστή σε υλικό όπως μια συστοιχία προγραμματιζόμενων πυλών (FPGA) και επιβεβαιώνεται η ορθή λειτουργεία των επεκτάσεων που δημιουργήθηκαν. 2021-07-13T05:23:04Z 2021-07-13T05:23:04Z 2021-07-08 http://hdl.handle.net/10889/14991 en application/pdf