31
τιµή
T EM P , η οποία καθορίζεται από συνάρτηση που εξαρτάται από το εκάστοτε
στάδιο
και
τις
τρέχουσες
τιµές
των
µεταβλητών.
Αυτή
η
τιµή
χρησιµοποιείται
για την ενηµέρωση των µεταβλητών κατάστασης µέσω λογικών περιστροϕών και
αλγεβρικών πράξεων.
Μετά την επεξεργασία κάθε µπλοκ, οι τιµές
H
0
,
H
1
,
H
2
,
H
3
και
H
4
ενηµερώνονται
προσθέτοντας τις τρέχουσες τιµές των αντίστοιχων µεταβλητών, διασϕαλίζοντας
ότι
η
εσωτερική
κατάσταση
του
αλγορίθµου
εξελίσσεται
δυναµικά.
Το
τελικό
κατακερµατισµένο αποτέλεσµα προκύπτει από τη συνένωση των τελικών τιµών των
H
0
,
H
1
,
H
2
,
H
3
και
H
4
, παρέχοντας έναν κατακερµατισµό 160 bits που χαρακτηρίζει
µοναδικά το αρχικό µήνυµα.
2.3
SHA-2
Ο
SHA-2
αποτελεί
µια
οικογένεια
αλγορίθµων
κατακερµατισµού,
η
οποία
περιλαµβάνει διάϕορα πρότυπα µεγέθους εξόδου. Συγκεκριµένα, ο SHA-2 προσϕέρει
τέσσερις βασικές εκδόσεις µε διαϕορετικά µεγέθη εξόδου:
224,
256,
384 και 512
bit.
Επιπλέον, στην οικογένεια περιλαµβάνονται και δύο περικοµµένες εκδόσεις, ο
SHA-512/224 και ο SHA-512/256, οι οποίες παράγουν αντίστοιχα µικρότερα µεγέθη
εξόδου σε σύγκριση µε τη βασική έκδοση SHA-512 [96].
Οι εκδόσεις SHA-224 και SHA-256 χρησιµοποιούν µπλοκ των 512 bit,
τα οποία
αποτελούνται
από
16
λέξεις
των
32
bit
η
καθεµία.
Συνεπώς,
το
µήνυµα
που
πρόκειται να κατακερµατιστεί διαιρείται σε τµήµατα των 512 bit, µε κάθε τµήµα
να αντιστοιχεί σε 16 λέξεις.
Αντίθετα, οι εκδόσεις SHA-384 και SHA-512 (καθώς
και οι περικοµµένες τους εκδόσεις) επεξεργάζονται µπλοκ των 1024 bit, τα οποία
αποτελούνται από 16 λέξεις των 64 bit.
Αυτό συνεπάγεται ότι τόσο το µέγεθος
των
µπλοκ
όσο
και
των
λέξεων
είναι
διπλάσιο
σε
σχέση
µε
το
SHA-224
και
το SHA-256.
Η χρήση διαϕορετικού µεγέθους λέξεων και µπλοκ στις διάϕορες
εκδόσεις της οικογένειας SHA-2 προσδίδει στον αλγόριθµο ευελιξία και δυνατότητα
προσαρµογής σε ποικίλες απαιτήσεις εϕαρµογών, προσϕέροντας ταυτόχρονα ένα
ευρύ ϕάσµα επιπέδων ασϕάλειας [97, 98].