Εφαρμοσμένη Κρυπτογραφία Ι



Σχετικά έγγραφα
Cryptography and Network Security Chapter 13. Fifth Edition by William Stallings

Εφαρμοσμένη Κρυπτογραφία Ι

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτοσύστημα RSA (Rivest, Shamir, Adlemann, 1977) Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτογραφία Δημοσίου Κλειδιού

Εφαρμοσμένη Κρυπτογραφία Ι

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο

Αλγόριθµοι δηµόσιου κλειδιού

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

Κεφάλαιο. Ψηφιακές Υπογραφές Εισαγωγή. Πίνακας Περιεχομένων

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

ρ. Κ. Σ. Χειλάς, ίκτυα Η/Υ ΙΙΙ, Τ.Ε.Ι. Σερρών, 2007

1 Ψηφιακές Υπογραφές. 1.1 Η συνάρτηση RSA : Η ύψωση στην e-οστή δύναμη στο Z n. Κρυπτογραφία: Αρχές και πρωτόκολλα Διάλεξη 6. Καθηγητής Α.

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι

Εφαρμοσμένη Κρυπτογραφία Ι

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας

Αριθμοθεωρητικοί Αλγόριθμοι

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο. Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος

1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών;

Κρυπτογραφία. Εργαστηριακό μάθημα 9 (Πρωτόκολλα πιστοποίησης ταυτότητας μηδενικής γνώσης Fiat-Shamir)

Εφαρμοσμένη Κρυπτογραφία Ι

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης

Ψηφιακές Υπογραφές. Άρης Παγουρτζής Στάθης Ζάχος. Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κεφάλαιο 10. Ψηφιακές Υπογραφές. Πάνος Παπαδημητράτος

Hash Functions. μεγεθος h = H(M) ολους. στο μηνυμα. στο συγκεκριμενο hash (one-way property)

Εφαρμοσμένη Κρυπτογραφία Ι

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων.

Εισαγωγή στην επιστήμη της Πληροφορικής και των. Aσφάλεια

El Gamal Αλγόριθμος. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 7 2

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. Συναρτήσεις Κατακερματισμού

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA

Ασφάλεια Πληροφοριακών Συστημάτων

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ στα Πληροφοριακά Συστήματα Κρυπτογραφία και Εφαρμογές Διαλέξεις Ακ.

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ στα Πληροφοριακά Συστήματα Κρυπτογραφία και Εφαρμογές Διαλέξεις Ακ.

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας

Οι απειλές. Απόρρητο επικοινωνίας. Αρχές ασφάλειας δεδομένων. Απόρρητο (privacy) Μέσω κρυπτογράφησης

Κατάλογος Σχηµάτων. Κατάλογος Πινάκων. I Κρυπτανάλυση 21

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

Πρόβληµα 2 (15 µονάδες)

Threshold Cryptography Algorithms. Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους

Στοιχεία Θεωρίας Αριθμών

Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές

Κρυπτογραφία. Κεφάλαιο 1 Γενική επισκόπηση

Πρόλογος 1. 1 Μαθηµατικό υπόβαθρο 9

project RSA και Rabin-Williams

Ασφάλεια Πληροφοριακών Συστηµάτων

Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές

ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή 2. Θεωρία αριθμών Αλγεβρικές δομές 3. Οι κρυπταλγόριθμοι και οι ιδιότητές τους

Την αποδοχή του κειμένου από τον υπογράφοντα και την συμφωνία του με αυτό.

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 ΕΠΙΜΕΛΕΙΑ :ΣΤΟΥΚΑ ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΜΕΤΑΠΤΥΧΙΑΚΟ:ΜΠΛΑ

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Εισαγωγή στην Κρυπτολογία 3. Ασφάλεια Τηλεπικοινωνιακών Συστημάτων Κωδικός DIΤ114 Σταύρος ΝΙΚΟΛΟΠΟΥΛΟΣ

Εφαρμοσμένη Κρυπτογραφία Ι

Παύλος Εφραιμίδης. Κρυπτογραφικά Πρωτόκολλα. Ασφ Υπολ Συστ

Ασφάλεια Υπολογιστικών Συστημάτων

Αυθεντικοποίηση μηνύματος και Κρυπτογραφία δημόσιου κλειδιού

ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία

Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές

University of Cyprus Cryptography Attacks. Paper: The Return of Coppersmith s Attack: Practical Factorization of Widely Used RSA Moduli

W i. Subset Sum Μια παραλλαγή του προβλήματος knapsack είναι το πρόβλημα Subset Sum, το οποίο δεν λαμβάνει υπόψιν την αξία των αντικειμένων:

1 Βασικές Έννοιες Ιδιωτικότητας

Ψηφιακές Υπογραφές. Παναγιώτης Γροντάς - Άρης Παγουρτζής. ΕΜΠ - Κρυπτογραφία - ( ) 28/11/2017. Digital Signatures 1 / 57

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Αννα Νταγιου ΑΕΜ: 432. Εξαμηνο 8. Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε.

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα

Κεφάλαια 2&21. Συναρτήσεις κατακερματισμού Πιστοποίηση ταυτότητας μηνυμάτων

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA. Κασαπίδης Γεώργιος -Μαθηµατικός

Πρόσφατες κατευθύνσεις

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

GPG & ΚΡΥΠΤΟΓΡΑΦΙΑ. Π. Αγγελάτος, Δ. Ζήνδρος

Αυθεντικότητα Μηνυμάτων Συναρτήσεις Hash/MAC

8 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ Εισαγωγή Απαιτήσεις ορισµοί

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Κρυπτογραφία. Μονόδρομες συναρτήσεις - Συναρτήσεις σύνοψης. Άρης Παγουρτζής - Πέτρος Ποτίκας

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας

Επιθέσεις και Ασφάλεια Κρυπτοσυστημάτων

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ

Transcript:

Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou

Ψηφιακές Υπογραφές Ορίζονται πάνω σε μηνύματα και είναι αριθμοί που εξαρτώνται από κάποιο μυστικό κλειδί του υπογράφοντος και επιπλέον από το μήνυμα που υπογράφεται. Προφανώς, οι ψηφιακές υπογραφές θα πρέπει να είναι επαληθεύσιμες. ηλαδή, αν προκύψει μια διαφωνία πάνω στο αν κάποιος έχει υπογράψει κάτι ή όχι, θα πρέπει η διαφωνία να μπορεί να επιλυθεί χωρίς να αποκαλυφθεί η μυστική πληροφορία του υπογράφοντος. 2

Παράδειγμα Εφαρμογής A 1 (d 1, e 1 ) Verification V T (A 2 e 2, s 2 ) E e2 (m) e 2, s 2 Public file A 1,e 1, s 1 = S T (A 1 e 1 ) A 2, e 2, s 2 = S T (A 2 e 2 )... A n, e n, s n = S T (A n e n ) (d 2, e 2 ) (d 3, e 3 ) A 2 A 3 3

Ψηφιακές Υπογραφές Πιστοποίηση «δένει» την ταυτότητα ενός χρήστη με ένα συγκεκριμένο δημόσιο κλειδί. Κύριες Κατηγορίες Ψηφιακών Υπογραφών Ψηφιακές Υπογραφές με Παράρτημα (Digital Signatures with Appendix) Ψηφιακές Υπογραφές με Ανάκτηση του Μηνύματος (Digital Signatures with Message Recovery) 4

Ψηφιακές Υπογραφές S A : αλγόριθμος δημιουργίας υπογραφών του Α V A : αλγόριθμος επαλήθευσης υπογραφών του Α 1) Ψηφιακές Υπογραφές με Παράρτημα: Εκτός από την υπογραφή στέλνεται και το μήνυμα το οποίο έχει υπογραφεί. Στον αλγόριθμο επαλήθευσης χρησιμοποιείται η υπογραφή και το μήνυμα. 2) Ψηφιακές Υπογραφές με Ανάκτηση Μηνύματος: εν στέλνεται το μήνυμα που έχει υπογραφεί. Στον αλγόριθμο επαλήθευσης ανακτάται το μήνυμα. 5

Ψηφιακές Υπογραφές με Παράρτημα Ο χρήστης Α δημιουργεί μια υπογραφή s є S για ένα μήνυμα m є M, η οποία μπορεί να επαληθευτεί αργότερα από κάθε χρήστη Β. ημιουργία Υπογραφής: 1) O A υπολογίζει τις τιμές m = h(m) και s = S A (m ). 2) Η ψηφιακή υπογραφή του Α για το μήνυμα m είναι το ζευγάρι (s, m) το οποίο είναι διαθέσιμο σε κάθε χρήστη που θέλει να επικυρώσει την υπογραφή. Επαλήθευση: 1) Υπολογίζονται οι τιμές m = h(m) και u = V A (m, s). 2) Ο χρήστης Β δέχεται την υπογραφή αν και μόνο αν u = true. 6

Ψηφιακές Υπογραφές με Παράρτημα Πρέπει να ισχύουν οι εξής ιδιότητες: 1) Oι συναρτήσειςs A και V A θα πρέπει να υπολογίζονται αποδοτικά (δηλ. σε πολυωνυμικό χρόνο). 2) Θα πρέπει να είναι υπολογιστικά αδύνατο για μια οντότητα εκτός του Α, να βρει ένα μήνυμα m є M και ένα s є S τέτοια ώστε V A (m, s) = true (όπου m = h(m)). Στις ψηφιακές υπογραφές με παράρτημα μπορούν να υπογραφούν οσοδήποτε μεγάλα μηνύματα, σε αντίθεση με τις ψηφιακές υπογραφές με ανάκτηση μηνύματος που τα μηνύματα πρέπει να έχουν συγκεκριμένο μήκος. 7

Ψηφιακές Υπογραφές με Ανάκτηση Μηνύματος Το μήνυμα ανακτάται μέσω της ψηφιακής υπογραφής και επομένως δεν απαιτείται στη διαδικασία της επαλήθευσης. Αυτές οι ψηφιακές υπογραφές χρησιμοποιούνται για μικρά σε μήκος μηνύματα. ημιουργία Υπογραφής: 1) Υπολογίζει τις τιμές m = R(m), όπου R είναι μια συνάρτηση που καλείται redundancy function (συνάρτηση πλεονασμού). 2) Η ψηφιακή υπογραφή του Α για το μήνυμα m είναι η τιμή s = S A (m ). Επαλήθευση: 1) Υπολογίζεται η τιμή m = V A (s). 2) Επαληθεύει ότι m є M R (M R είναι το σύνολο των μηνυμάτων μετά την επεξεργασία από τη συνάρτηση R). 3) Αν γίνει η επαλήθευση, τότε ανακτάται το αρχικό μήνυμα m από το m μέσω της σχέσης m = R -1 (m ). 8

Redundancy Function Αυξάνειτομήκοςτωνμηνυμάτωνκαιγιααυτότολόγοκαλείται redundancy (πλεονασμός) function. Ένα παράδειγμα μιας τέτοιας συνάρτησης είναι το εξής: έστω M = {m: m є {0,1} n } και R: M -> M R είναι η συνάρτηση R(m) = m m. Τότε κάθε μήνυμα m πριν υπογραφεί παίρνει τη μορφή m m και στη συνέχεια περνάει από τη συνάρτηση υπογραφής S A. Kατά την επαλήθευση, αν η συνάρτηση V A δεν επιστρέψει κάποιο μήνυμα που έχει την ιδιότητα ότι το πρώτο μισό του είναι ίδιο με το δεύτερο μισό, τότε η υπογραφή δεν επαληθεύεται. 9

Ψηφιακές Υπογραφές με Ανάκτηση Μηνύματος Πρέπει να ισχύουν οι εξής ιδιότητες: 1) Oι συναρτήσειςs A και V A θα πρέπει να υπολογίζονται αποδοτικά (δηλ. σε πολυωνυμικό χρόνο). 2) Θα πρέπει να είναι υπολογιστικά αδύνατο για μια οντότητα εκτός του Α, να βρει ένα s є S τέτοιο ώστε V A (s) є Μ R. H μορφή της redundancy function θα πρέπει να είναι τέτοια ώστε να είναι υπολογιστικά αδύνατες τέτοιες επιθέσεις. 10

Τύποι Επιθέσεων Ο σκοπός ενός επιτιθέμενου είναι να πλαστογραφήσει υπογραφές. ηλαδή να δημιουργήσει υπογραφές που θα γίνονται δεκτές από τον αλγόριθμο επαλήθευσης και θα φαίνεται ότι στάλθηκαν από τον σωστό υπογράφοντα. 1) Total break (πλήρες σπάσιμο ): είτε ο επιτιθέμενος έχει βρει το μυστικό κλειδί του υπογράφοντος ή έχει βρει μια συνάρτηση που βγάζει τα ίδια αποτελέσματα με την έγκυρη συνάρτηση υπογραφής S A. 2) Selective forgery (επιλεκτική πλαστογραφία): o επιτιθέμενος μπορεί να δημιουργήσει έγκυρες ψηφιακές υπογραφές για ορισμένα μηνύματα που έχει επιλέξει. 3) Existential forgery (υπαρκτή πλαστογραφία): οεπιτιθέμενος μπορεί να πλαστογραφήσει μια υπογραφή για ένα τουλάχιστον μήνυμα. 11

Βασικές Επιθέσεις 1) Key-only attacks: οεπιτιθέμενοςγνωρίζειμόνοτοδημόσιο κλειδί του υπογράφοντος. 2) Message attacks: ο επιτιθέμενος γνωρίζει ζευγάρια υπογραφών-αντίστοιχων μηνυμάτων, για μηνύματα που είτε τα έχει επιλέξει ο ίδιος ή τα γνωρίζει με κάποιον τρόπο. (α) known message attack (b) chosen-message attack (c) adaptive chosen-message attack 12

Ψηφιακές Υπογραφές RSA Αποτελεί ένα σχήμα ψηφιακών υπογραφών με ανάκτηση μηνύματος. Αρχικά, δημιουργούνται τα κλειδιά για κάθε χρήστη: 1) ημιουργεί δύο μεγάλους πρώτους αριθμούς p και q, περίπου του ίδιου μεγέθους. 2) Υπολογίζει την τιμή n = pq και την φ = (p-1)(q-1) = φ(n). 3) Επιλέγει ένα τυχαίο e με 1 < e < φ, τέτοιο ώστε gcd(e, φ) = 1. 4) Υπολογίζει τον μοναδικό ακέραιο d για τον οποίο ισχύει η ισοτιμία ed 1 mod φ (d = e -1 mod φ). 5) Το δημόσιο κλειδί του Α είναι το ζευγάρι (n, e) και ιδιωτικό το d. 13

Ψηφιακές Υπογραφές RSA ημιουργία υπογραφής: Ο A υπογράφει ένα μήνυμα m (α) Υπολογίζει την τιμή m = R(m) (redundancy function). To m πρέπει να ανήκει στο διάστημα [0, n-1]. (β) Υπολογίζει την τιμή s = (m ) d mod n. (γ) H υπογραφή του A είναι η τιμή s. Επαλήθευση: Ο B λαμβάνει την υπογραφή s και το δημόσιο κλειδί (n, e) του Α (α) Υπολογίζει την τιμή m = s e mod n. (β) Επαληθεύει ότι m є Μ R. Αν δεν ανήκει τότε απορρίπτει την υπογραφή. (γ) Υπολογίζει το αρχικό μήνυμα m = R -1 (m ). Πως θα το υλοποιούσατε για R(m) = m m? 14

Πιθανές Επιθέσεις (a) Επίθεση που βασίζεται στην παραγοντοποίηση ακεραίων: Αν βρεθούν οι πρώτοι παράγοντες p και q του n, τότε ανακτάται η τιμή φ(n) και συνεπώς το μυστικό κλειδί d = e -1 mod φ. total break (b) Πολλαπλασιαστική ιδιότητα του RSA (homomorphic property): Αν s 1 = m 1d mod n και s 2 = m 2d mod n είναι δύο ψηφιακές υπογραφές πάνω στα μηνύματα m 1 και m 2 τότε η τιμή s = s 1 s 2 = (m 1 m 2 ) d mod n. ηλαδή αν m 1 m 2 є Μ R τότε η s είναι έγκυρη υπογραφή για το μήνυμα m 1 m 2. Άρα η redundancy function δεν θα πρέπει να είναι πολλαπλασιαστική (R(ab) R(a) R(b)). 15

RSA Υπογραφές στην Πράξη Public = (n A, e A ), private = d A m d A s = mod n A c = s e B mod n B Public = (n B, e B ), private = d B Πρέπει n A < n B. Γιατί? 16

Reblocking Problem Αντιμετώπιση προβλήματος σε περίπτωση που n Α >n Β : 1) Αλλαγή σειράς κρυπτογράφησης-υπογραφής. 2) Κάθε οντότητα μπορεί να έχει δύο διαφορετικά ζεύγη κλειδιών, ένα για την υπογραφή και ένα για την κρυπτογράφηση. Τα κλειδιά της υπογραφής για όλους θα πρέπει να είναι τουλάχιστον 1 bit μικρότερα από τα κλειδιά της κρυπτογράφησης. 3) Τα moduli n A, n B να έχουν μια συγκεκριμένη μορφή. Π.χ. το 1 ο bit να είναι 1 και τα k επόμενα να είναι 0. Τότε οι υπογραφές s θα έχουν με μεγάλη πιθανότητα 1 σε κάποια από αυτές τις k θέσεις και επομένως θα είναι σίγουρα μικρότερες από τα moduli. 17

Ψηφιακές Υπογραφές Rabin Παρόμοιο με το RSA, μόνο που τώρα κάθε μήνυμα που υπογράφεται θα πρέπει να είναι τετραγωνικό υπόλοιπο. ημιουργία κλειδιών: public = n, private = (p, q). ημιουργία υπογραφής για τον χρήστη Α: (α) Υπολογίζει την τιμή m = R(m) (redundancy function). To m πρέπει να ανήκει στο διάστημα [0, n-1] και να είναι τετραγωνικό υπόλοιπο. (β) Υπολογίζει μια τετραγωνική ρίζα s του m. (γ) H υπογραφή του A είναι η τιμή s. 18

Ψηφιακές Υπογραφές Rabin Επαλήθευση: Ο B λαμβάνει την υπογραφή s και το δημόσιο κλειδί n του Α (α) Υπολογίζει την τιμή m = s 2 mod n. (β) Επαληθεύει ότι m є Μ R. Αν δεν ανήκει τότε απορρίπτει την υπογραφή. (γ) Υπολογίζει το αρχικό μήνυμα m = R -1 (m ). Το πρόβλημα στο σχήμα αυτό είναι ότι το m μπορεί να μην είναι τετραγωνικό υπόλοιπο. προστίθενται κάποια τυχαία bits στο m έτσι ώστε το m να είναι τετραγωνικό υπόλοιπο χρησιμοποιείται το modified Rabin signature scheme (ειδικές συνθήκες για τα p, q και R(.)) 19

Ψηφιακές Υπογραφές Feige-Fiat- Shamir Τα δύο προηγούμενα πρωτόκολλα ψηφιακών υπογραφών ήταν σχήματα με ανάκτηση μηνύματος και ντετερμινιστικά (deterministic). To σχήμα ψηφιακών υπογραφών των Feige- Fiat-Shamir είναι με παράρτημα. ημιουργία κλειδιών: Κάθε χρήστης Α κάνει τα παρακάτω. 1) ημιουργεί δύο πρώτους p και q, καθώς και το n = pq. 2) Επιλέγει έναν θετικό ακέραιο k και διακριτούς τυχαίους αριθμούς s 1, s 2,, s k στο Z n*. 3) Υπολογίζει τις τιμές u j = s -2 j mod n, για όλα τα j. 4) Το δημόσιο κλειδί του Α είναι το (u 1,u 2,..., u k ) και το n. Ιδιωτικό κλειδί είναι το (s 1,s 2,..., s k ). 20

Ψηφιακές Υπογραφές Feige-Fiat- Shamir Η ασφάλεια του μυστικού κλειδιού βασίζεται στο square root modulo n problem. ημιουργία υπογραφής: Ο A υπογράφει ένα μήνυμα m (α) Επιλέγει μια τυχαία τιμή r, με 0 < r < n. (β) Υπολογίζει την τιμή u = r 2 mod n. (γ) Υπολογίζει e = h(m u). Η Hash function επιστρέφει k bits. (δ) Υπολογίζει την τιμή s = r(s 1 e1 s 2 e2 s k ek ) mod n. (ε) H υπογραφή του A είναι η (e, s). Επαλήθευση: Ο B λαμβάνει την υπογραφή s και το δημόσιο κλειδί (u 1, u 2,..., u k ), n του Α (α) Υπολογίζει την τιμή w = s 2 (u 1 e1 u 2 e2 u k ek ) mod n. (β) Υπολογίζει e = h(m w). (γ) Aν e = e δέχεται την υπογραφή, διαφορετικά όχι. 21

Άλλες Ψηφιακές Υπογραφές 1) The Digital Signature Algorithm (DSA) -> το πρώτο σχήμα ψηφιακών υπογραφών που αναγνωρίστηκε από μια κυβέρνηση (Ηνωμ. Πολ.). 2) The ElGamal Signature Scheme. To DSA αποτελεί παραλλαγή αυτού του αλγορίθμου. 3) The Schnorr Signature Scheme. Όπως και το DSA, αποτελεί παραλλαγή του σχήματος ElGamal. Όλα βασίζουν την ασφάλειά τους στο πρόβλημα του διακριτού λογαρίθμου και είναι σχήματα ψηφιακών υπογραφών με παράρτημα. 22

ιάβασμα Κεφάλαια 11.1, 11.2, 11.3 και 11.4 του Handbook of Applied Cryptography Κεφάλαιο 12 απότοβιβλίοσύγχρονη Κρυπτογραφία: θεωρία και Εφαρμογές 23