Summary: | The 21st century is considered as the era of mass communication and electronic information
exchange. There is a dramatic increase in electronic communications and e-transactions worldwide.
However, this advancement results in the appearance of many security issues, especially when the
exchanged information is sensitive and/or confidential. A significant aspect of security is
authentication, which in most of the cases is provided through a cryptographic hash function.
As happens for the majority of security primitives, software design and implementation of hash
functions is becoming more prevalent today. However, hardware is the embodiment of choice for
military and safety-critical commercial applications due to the physical protection and increased
performance that they offer. Hence, similarly to general hardware designs, regarding cryptographic
hash function ones, three crucial issues, among others, arise: performance, reliability, and flexibility.
In this PhD dissertation, hardware solutions regarding cryptographic hash functions, addressing
the aforementionted three crucial issues are proposed. Specifically, a design methodology for
developing high-throughput and area-efficient sole hardware architectures of the most widely-used
cryptographic hash families, i.e. the SHA-1 and SHA-2, is proposed. This methodology incorporates
several algorithmic-, system-, and circuit-level techniques in an efficient, recursive way, exploiting the
changes in the design’s graph dependencies that are resulted by a technique’s application.
Additionally, high-throughput and area-efficient hardware designs for the above families as well as
new ones (e.g. JH and Skein), are also proposed. These architectures outperform significantly all the
similar ones existing in the literature.
Furthermore, a design methodology for developing Totally Self-Checking (TSC) architectures of the
most widely-used cryptographic hash families, namely the SHA-1 and SHA-2 ones is proposed for the
first time. As any RTL architecture for the above hash families is composed by similar functional
blocks, the proposed methodology is general and can be applied to any RTL architecture of the SHA-1
and SHA-2 families. Based on the above methodology, TSC architectures of the two representatice
hash functions, i.e. SHA-1 and SHA-256, are provided, which are significantlty more efficient in terms
of Throughput/Area, Area, and Power than the corresponding ones that are derived using only
hardware redundancy.
Moreover, a design methodology for developing hardware architectures that realize more than
one cryptographic hash function (mutli-mode architectures) with reasonable throughput and area
penalty is proposed. Due to the fact that any architecture for the above hash families is composed by
similar functional blocks, the proposed methodology can be applied to any RTL architecture of the
SHA-1 and SHA-2 families. The flow exploits specific features appeared in SHA-1 and SHA-2 families
and for that reason it is tailored to produce optimized multi-mode architectures for them. Based on
the above methodology, two multi-mode architectures, namely a SHA256/512 and a SHA1/256/512,
are introduced. They achieve high throughput rates, outperforming all the existing similar ones in
terms of throughput/area cost factor. At the same time, they are area-efficient. Specifically, they
occupy less area compared to the corresponding architectures that are derived by simply designing
the sole hash cores together and feeding them to a commercial FPGA synthesis/P&R/mapping tool.
Finally, the extracted knowledge from the above research activities was exploited in three
additional works that deal with: (a) a data locality methodology for matrix–matrix multiplication, (b) a
methodology for Speeding-Up Fast Fourier Transform focusing on memory architecture utilization,
and (c) a near-optimal microprocessor & accelerators co-design with latency & throughput constraints. === Ο 21ος αιώνας θεωρείται η εποχή της μαζικής επικοινωνίας και της ηλεκτρονικής πληροφορίας.
Υπάρχει μία δραματική αύξηση των τηλεπικοινωνιών και των ηλεκτρονικών συναλλαγών σε όλο τον
κόσμο. Αυτές οι ηλεκτρονικές επικοινωνίες και συναλλαγές ποικίλουν από αποστολή και λήψη
πακέτων δεδομένων μέσω του Διαδικτύου ή αποθήκευση πολυμεσικών δεδομένων, έως και κρίσιμες
οικονομικές ή/και στρατιωτικές υπηρεσίες. Όμως, αυτή η εξέλιξη αναδεικνύει την ανάγκη για
περισσότερη ασφάλεια, ιδιαίτερα στις περιπτώσεις όπου οι πληροφορίες που ανταλλάσονται
αφορούν ευαίσθητα ή/και εμπιστευτικά δεδομένα. Σε αυτές τις περιπτώσεις, η ασφάλεια θεωρείται
αναπόσπαστο χαρακτηριστικό των εμπλεκομένων εφαρμογών και συστημάτων. Οι συναρτήσεις κατακερματισμού παίζουν έναν
πολύ σημαντικό ρόλο στον τομέα της ασφάλειας και, όπως συμβαίνει στην πλειοψηφία των βασικών
αλγορίθμων ασφαλείας, οι υλοποιήσεις σε λογισμικό (software) επικρατούν στις μέρες μας. Παρόλα
αυτά, οι υλοποιήσεις σε υλικό (hardware) είναι η κύρια επιλογή οσον αφορά στρατιωτικές
εφαρμογές και εμπορικές εφαρμογές κρίσιμης ασφάλειας. Η NSA, για παράδειγμα, εξουσιοδοτεί
μόνο υλοποιήσεις σε υλικό. Αυτό γιατί οι υλοποιήσεις σε υλικό είναι πολύ γρηγορότερες από τις
αντίστοιχες σε λογισμικό, ενώ προσφέρουν και υψηλά επίπεδα «φυσικής» ασφάλειας λόγω
κατασκευής. Έτσι, όσον αφορά τις κρυπτογραφικές συναρτήσεις κατακερματισμού, όπως ίσχυει
γενικά στις υλοποιήσεις υλικού, ανακύπτουν τρία (ανάμεσα σε άλλα) κύρια θέματα: Επιδόσεις,
Αξιοπιστία, Ευελιξία. Σκοπός της παρούσας διατριβής είναι να παράσχει λύσεις υλοποίησης σε υλικό για
κρυπτογραφικές συναρτήσεις κατακερματισμού, στοχεύοντας στα τρία κύρια ζητήματα που
αφορούν υλοποιήσεις σε υλικό, τα οποία και προαναφέρθηκαν (Επιδόσεις, Αξιοπιστία, Ευελιξία).
Συγκεκριμένα, προτείνονται μεθοδολογίες σχεδιασμού αρχιτεκτονικών υλικού (καθώς και οι
αρχιτεκτονικές αυτές καθαυτές) για τις οικογένειες SHA-1 και SHA-2 οι οποίες επιτυγχάνουν υψηλή
ρυθμαπόδοση με λογική αύξηση της επιφάνειας ολοκλήρωσης. Επίσης, προτείνονται αρχιτεκτονικές
οι οποίες επιτυγχάνουν υψηλή ρυθμαπόδοση με λογική αύξηση της επιφάνειας ολοκλήρωσης για
νέες κρυπτογραφικές συναρτήσεις, δηλαδή για τις JH και Skein. Ακόμα, προτείνονται μεθοδολογίες
σχεδιασμού αρχιτεκτονικών υλικού (καθώς και οι αρχιτεκτονικές αυτές καθαυτές) για τις οικογένειες
SHA-1 και SHA-2 οι οποίες έχουν τη δυνατότητα να ανιχνέυουν πιθανά λάθη κατά τη λειτουργία τους
ενώ επιτυγχάνουν υψηλή ρυθμαπόδοση με λογική αύξηση της επιφάνειας ολοκλήρωσης. Τέλος,
προτείνονται μεθοδολογίες σχεδιασμού πολύ-τροπων αρχιτεκτονικών υλικού (καθώς και οι
αρχιτεκτονικές αυτές καθ’αυτές) για τις οικογένειες SHA-1 και SHA-2 οι οποίες έχουν τη δυνατότητα
να υποστηρίξουν παραπάνω από μία συνάρτηση ενώ επιτυγχάνουν υψηλή ρυθμαπόδοση με λογική
αύξηση της επιφάνειας ολοκλήρωσης.
|