Top Banner
Cryptography and Cryptography and Network Security Network Security Chapter 9 Chapter 9 Fifth Edition Fifth Edition by William Stallings by William Stallings
31

Cryptography and Network Security Chapter 9

Dec 30, 2015

Download

Documents

Anastasia Owens

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings. Chapter 9 – Κρυπτογραφια Δημοσιου Κλειδιου και RSA. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cryptography and Network Security Chapter 9

Cryptography and Cryptography and Network SecurityNetwork Security

Chapter 9Chapter 9

Fifth EditionFifth Edition

by William Stallingsby William Stallings

Page 2: Cryptography and Network Security Chapter 9

Chapter 9 – Chapter 9 – Κρυπτογραφια Κρυπτογραφια Δημοσιου Κλειδιου και Δημοσιου Κλειδιου και RSARSA

Every Egyptian received two names, which were Every Egyptian received two names, which were known respectively as the true name and the known respectively as the true name and the good name, or the great name and the little good name, or the great name and the little name; and while the good or little name was name; and while the good or little name was made public, the true or great name appears to made public, the true or great name appears to have been carefully concealed.have been carefully concealed.

——The Golden Bough, The Golden Bough, Sir James George FrazerSir James George Frazer

Page 3: Cryptography and Network Security Chapter 9

KKρυπτογραφια Μυστικου Κλειδιου ρυπτογραφια Μυστικου Κλειδιου ((Private-Key CryptographyPrivate-Key Cryptography))

• Η παραδοσιακη κρυπτογραφια Η παραδοσιακη κρυπτογραφια ιδιωτικου/μυστικου/μοναδικου κειδιου χρησιμοποιει ενα ιδιωτικου/μυστικου/μοναδικου κειδιου χρησιμοποιει ενα μονο κλειδι.μονο κλειδι.

• Το κλειδι αυτο μοιραζεται αναμεσα στον αποστολεα και Το κλειδι αυτο μοιραζεται αναμεσα στον αποστολεα και τον παραληπτητον παραληπτη

• Αν το κλειδι αποκαλυφθει, τοτε πληττεται η ασφαλεια της Αν το κλειδι αποκαλυφθει, τοτε πληττεται η ασφαλεια της επικοινωνιαςεπικοινωνιας

• Επισης ειναι συμμετρικος, τα μερη ειναι ισα.Επισης ειναι συμμετρικος, τα μερη ειναι ισα.

• Δεν προστατευει τον μεταδοτη απο το ενδεχομενο να Δεν προστατευει τον μεταδοτη απο το ενδεχομενο να κατασκευασει ο αποδεκτης ενα μηνυμα και να ισχυριστει κατασκευασει ο αποδεκτης ενα μηνυμα και να ισχυριστει οτι το εστειλε ο μεταδοτης.οτι το εστειλε ο μεταδοτης.

Page 4: Cryptography and Network Security Chapter 9

Κρυπτογραφια Δημοσιου Κλειδιου Κρυπτογραφια Δημοσιου Κλειδιου ((Public-Key CryptographyPublic-Key Cryptography))

• Ειναι ισως η μεγαλυτερη ανακαλυψη στη 3000 Ειναι ισως η μεγαλυτερη ανακαλυψη στη 3000 ετων ιστορια της κρυπτογραφιαςετων ιστορια της κρυπτογραφιας

• Χρησιμποιει δυο κλειδια. Το δημοσιο και το Χρησιμποιει δυο κλειδια. Το δημοσιο και το ιδιωτικο (ιδιωτικο (publicpublic key & private key)key & private key)

• EEναι ασυμμερος διοτι τα δυο μερη δεν ειναι ναι ασυμμερος διοτι τα δυο μερη δεν ειναι ισα.ισα.

• Χρησιμοποιει εξυπνα στοιχεια απο τη θεωρια Χρησιμοποιει εξυπνα στοιχεια απο τη θεωρια αριθμων για να λειτουργησειαριθμων για να λειτουργησει

• Συμπληρωνει και δεν αντικαθιστα την Συμπληρωνει και δεν αντικαθιστα την κρυπτογραφια ιδιωτικου κλειδιουκρυπτογραφια ιδιωτικου κλειδιουoo

Page 5: Cryptography and Network Security Chapter 9

Γιατι χρειαζομαστε την Γιατι χρειαζομαστε την Κρυπτογραφια Δημοσιου ΚλειδιουΚρυπτογραφια Δημοσιου Κλειδιου??

• Αναπτυχθηκε για να αντιμετωπισει δυο Αναπτυχθηκε για να αντιμετωπισει δυο βασικα θεματα:βασικα θεματα:– Διανομη Κλειδιου (Διανομη Κλειδιου (key distributionkey distribution))– Ψηφιακες Υπογραφες (Ψηφιακες Υπογραφες (digital signaturesdigital signatures))

• Ανακαλυφθηκε επισημα απο τους Ανακαλυφθηκε επισημα απο τους Whitfield Diffie & Martin Hellman Whitfield Diffie & Martin Hellman στο στο Πανεπιστημιο Πανεπιστημιο Stanford Stanford τοτο19761976– Ηταν γνωστος νωριτερα στην κρυπτογραφικη Ηταν γνωστος νωριτερα στην κρυπτογραφικη

κοινοτητακοινοτητα

Page 6: Cryptography and Network Security Chapter 9

Κρυπτογραφια Δημοσιου Κλειδιου Κρυπτογραφια Δημοσιου Κλειδιου ((Public-Key CryptographyPublic-Key Cryptography))

• Η Η KKρυπτογραφια Δημοσιου κλειδιου (ή Ασυμμετρη ρυπτογραφια Δημοσιου κλειδιου (ή Ασυμμετρη Κρυπτογραφια) χρησιμοποιει δυο κλειδιαΚρυπτογραφια) χρησιμοποιει δυο κλειδια: : – Το δημοσιο κλειδι (Το δημοσιο κλειδι (public-keypublic-key)), , που μπορει να ειναι που μπορει να ειναι

γνωστο σε ολους και χρησιμοποιειται για την γνωστο σε ολους και χρησιμοποιειται για την κρυπτογραφηση μηνυματωνκρυπτογραφηση μηνυματων και την και την επιβεβαιωση επιβεβαιωση ψηφιακων υπογραφων.ψηφιακων υπογραφων.

– Το ιδιωτικο κλειδι που ειναι γνωστο μονο στον κατοχο Το ιδιωτικο κλειδι που ειναι γνωστο μονο στον κατοχο του του καικαι χρησιμοποιειται για την χρησιμοποιειται για την αποκρυπτογραφηση αποκρυπτογραφηση μηνυματωνμηνυματων και για και για να υπογραψει ο κατοχος του ενα να υπογραψει ο κατοχος του ενα ψηφιακο εγγραφο.ψηφιακο εγγραφο.

• Πρεπει να ειναι αδυνατο να προσδιορισει καποιος το Πρεπει να ειναι αδυνατο να προσδιορισει καποιος το ιδιωτικο κλειδι γνωριζοντας μονο το δημοσιο.ιδιωτικο κλειδι γνωριζοντας μονο το δημοσιο.

• Ειναι Ασυμμετρη γιατι αυτος που μπορει να κρυπτογραφει Ειναι Ασυμμετρη γιατι αυτος που μπορει να κρυπτογραφει μηνυματα και να επιβεβαιωνει ψηφιακες υπογραφες, δεν μηνυματα και να επιβεβαιωνει ψηφιακες υπογραφες, δεν μπορει να αποκρυπτογραφει και να βαζει ψηφιακες μπορει να αποκρυπτογραφει και να βαζει ψηφιακες υπογραφες.υπογραφες.

Page 7: Cryptography and Network Security Chapter 9

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

Page 8: Cryptography and Network Security Chapter 9

Συμμετρική Συμμετρική vsvs Δημοσιου Κλειδιου Δημοσιου Κλειδιου

Page 9: Cryptography and Network Security Chapter 9

Κρυπτοσυστηματα Δημοσιου ΚλειδιουΚρυπτοσυστηματα Δημοσιου Κλειδιου

Page 10: Cryptography and Network Security Chapter 9

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

– Κρυπτοραφηση/αποκρυπτογραφησηΚρυπτοραφηση/αποκρυπτογραφηση – Ψηφιακες ΥπογραφεςΨηφιακες Υπογραφες– Ανταλλαγη ΚλειδιουΑνταλλαγη Κλειδιου

• Καποιοι αλγοριθμοι εινναι καταλληλοι και για τις τρεις Καποιοι αλγοριθμοι εινναι καταλληλοι και για τις τρεις χρησεις, ενω αλλοι μονο για καποιες απο αυτεςχρησεις, ενω αλλοι μονο για καποιες απο αυτες

Page 11: Cryptography and Network Security Chapter 9

Απαιτησεις απο τους Απαιτησεις απο τους Κρυπτογραφικους Αλγοριθμους Κρυπτογραφικους Αλγοριθμους

Δημοσιου ΚλειδιουΔημοσιου Κλειδιου• Οι αλγοριθμοι Δημοσιου Κλειδιου βασιζονται σε δυο Οι αλγοριθμοι Δημοσιου Κλειδιου βασιζονται σε δυο

κλειδια τα οποιακλειδια τα οποια::– Ειναι υπολογιστικα αδυνατο να βρεθει το ιδιωτικο κλειδι απο Ειναι υπολογιστικα αδυνατο να βρεθει το ιδιωτικο κλειδι απο

καποιον που γνωριζει μονο το δημοσιοκαποιον που γνωριζει μονο το δημοσιο– Ειναι υπολογιστικα ευκολο να κρυπτογραφει/αποκρυπτγραφει Ειναι υπολογιστικα ευκολο να κρυπτογραφει/αποκρυπτγραφει

καποιος μηνυματα οταν γνωριζει το αντιστοιχο κλειδικαποιος μηνυματα οταν γνωριζει το αντιστοιχο κλειδι– Οτι κρυπτογρφειται με το ενα κλειδι αποκρυπτογραφειται με το Οτι κρυπτογρφειται με το ενα κλειδι αποκρυπτογραφειται με το

αλλο, και το αντιστροφο. (δεν ισχυει για ολους τους αλγοριθμους αλλο, και το αντιστροφο. (δεν ισχυει για ολους τους αλγοριθμους δημοσιου κλειδιου).δημοσιου κλειδιου).

• Ειναι εξαιρετικα δυσκολες οι παραπανω Ειναι εξαιρετικα δυσκολες οι παραπανω απαιτησεις και ελαχιστοι αλγοριθμοι τις απαιτησεις και ελαχιστοι αλγοριθμοι τις πληρουν.πληρουν.

Page 12: Cryptography and Network Security Chapter 9

Ασφαλεια συστηματων δημοσιου Ασφαλεια συστηματων δημοσιου κλειδιουκλειδιου

• Οπως και στα συμμετρικα συστηματα, παντα Οπως και στα συμμετρικα συστηματα, παντα μπορει θεωρητικα να γινει επιθεση μπορει θεωρητικα να γινει επιθεση brute forcebrute force

• Αλλα εδω τα κλειδια ειναι πολυ μεγαλα Αλλα εδω τα κλειδια ειναι πολυ μεγαλα (>512bits) (>512bits)

• Η ασφαλεια βασιζεται στη μεγαλη διαφορα της Η ασφαλεια βασιζεται στη μεγαλη διαφορα της δυσκολιας αναμεσα στην ευκολη δυσκολιας αναμεσα στην ευκολη κρυπτογραφηση/αποκρυπτογραφηση και τη κρυπτογραφηση/αποκρυπτογραφηση και τη δυσκολη κρυπταναλυσηδυσκολη κρυπταναλυση

• Χρησιμοποιει πολυ μεγαλους αριθμους και αρα Χρησιμοποιει πολυ μεγαλους αριθμους και αρα ειναι πολυ πιο αργη απο την συμμετρικη ειναι πολυ πιο αργη απο την συμμετρικη κρυπτογραφιακρυπτογραφια

Page 13: Cryptography and Network Security Chapter 9

RSARSA

• Δημιουργοι: Δημιουργοι: Rivest, Shamir & Adleman of MIT in Rivest, Shamir & Adleman of MIT in 1977 1977

• Ο πιο γνωστος και ο ευρυτερα Ο πιο γνωστος και ο ευρυτερα χρησιμοποιουμενος αλγοριθμος δημοσιου χρησιμοποιουμενος αλγοριθμος δημοσιου κλειδιουκλειδιου

• Βασιζεται στην υψωση ακεραιων σε δυναμη και Βασιζεται στην υψωση ακεραιων σε δυναμη και σε αριθμητικη σε αριθμητικη modulo modulo

• Χρησιμοποιει πολυ μεγαλους ακεραιουςΧρησιμοποιει πολυ μεγαλους ακεραιους• Η ασφαλεια του βασιζεται στη δυσκολια Η ασφαλεια του βασιζεται στη δυσκολια

παραγοντοποιησης μεγαλων αριθμωνπαραγοντοποιησης μεγαλων αριθμων

Page 14: Cryptography and Network Security Chapter 9

Κρυπτογραφηση και Κρυπτογραφηση και Αποκρυπτογραφηση με τον Αποκρυπτογραφηση με τον RSARSA

• Κρυπτογραφηση μηνυματος Μ (στο μεταδοτη)Κρυπτογραφηση μηνυματος Μ (στο μεταδοτη)::– Λαμβανεται το δημοσιο κλειδι του αποδεκτη Λαμβανεται το δημοσιο κλειδι του αποδεκτη PU={e,n}PU={e,n} – Υπολογιζεται το Υπολογιζεται το : : C = MC = Mee mod n mod n, , οπου οπου 00≤≤MM<<nn

• Αποκρυπτογραφηση το Αποκρυπτογραφηση το ciphertext Cciphertext C (στον (στον αππδεκτη)αππδεκτη)::– Χρησιμοποιειται το ιδιωτικο κλειδι Χρησιμοποιειται το ιδιωτικο κλειδι PR={d,n}PR={d,n} – Υπολογιζται τοΥπολογιζται το: : M = CM = Cdd mod n mod n

• Το μηνυμαΤο μηνυμα M M πρεπει να ειναι μικροτερο απο το πρεπει να ειναι μικροτερο απο το n n ((αλλιως πρεπει να χωριστει σε τμηματααλλιως πρεπει να χωριστει σε τμηματα))

Page 15: Cryptography and Network Security Chapter 9

Δημιουργια κλειδιων στον Δημιουργια κλειδιων στον RSA RSA

• Καθε χρηστης δημιουργει ενα ζευγος δημοσιου/ιδιωτικου Καθε χρηστης δημιουργει ενα ζευγος δημοσιου/ιδιωτικου κλειδιουκλειδιου: :

• Επιλεγοντας δυο μεγαλουν πρωτους αριθμους τυχαιαΕπιλεγοντας δυο μεγαλουν πρωτους αριθμους τυχαια: : p, p, qq

• Υπολογίζει το Υπολογίζει το modulusmodulus n=p.qn=p.q– Ετσι ωστε:Ετσι ωστε: φφ(n)=(p-1)(q-1)(n)=(p-1)(q-1)

• Επιλεγει τυχαια το κλειδι κρυπτογραφησης (δημοσιο κλειδι)Επιλεγει τυχαια το κλειδι κρυπτογραφησης (δημοσιο κλειδι) ee– Ετσι ωστε:Ετσι ωστε: 1<e<φ(n), 1<e<φ(n), ΜΚΔΜΚΔ(e,φ(n))=1 (e,φ(n))=1

• Λυνει την παρακατω εξισωση για να βρει το κλειδι Λυνει την παρακατω εξισωση για να βρει το κλειδι αποκρυπτογραφησης (ιδιωτικο κλειδι)αποκρυπτογραφησης (ιδιωτικο κλειδι) dd – e.d=1 mod e.d=1 mod φφ(n) and 0(n) and 0≤≤dd≤≤nn

• Δημοσιοποιει το κλειδι κρυπτογραφησηςΔημοσιοποιει το κλειδι κρυπτογραφησης: PU={e,n} : PU={e,n} • Κραταει μυστικο το κλειδι αποκρυπτογραφησηςΚραταει μυστικο το κλειδι αποκρυπτογραφησης: PR={d,n} : PR={d,n}

Page 16: Cryptography and Network Security Chapter 9

Γιατι λειτουργει οΓιατι λειτουργει ο RSA RSA??• Απο το θεωρημα του Απο το θεωρημα του EulerEuler ισχυει ισχυει::

aaφφ(n)(n) mod n = 1mod n = 1, οπου, οπου ΜΚΔΜΚΔ(a,n)=1(a,n)=1

• Στον Στον RSA RSA έχουμεέχουμε:: n=p.qn=p.q φφ(n)=(p-1)(q-1)(n)=(p-1)(q-1) Επιλεγουμε προσεκτικα τους Επιλεγουμε προσεκτικα τους ee & & dd ωστε να ειναι ωστε να ειναι

αντιστροφοιαντιστροφοι mod mod φφ(n)(n) Ως εκ τουτουΩς εκ τουτου e.d=1+k.e.d=1+k.φφ(n)(n) για καποιο για καποιο kk

• Και επομενωςΚαι επομενως::

CCdd = M = Me.d e.d = M= M1+k.1+k.φφ(n)(n) = M = M11.(M.(Mφφ(n)(n)))kk = M= M11.(1).(1)kk = M = M11 = M mod n = M mod n

Page 17: Cryptography and Network Security Chapter 9

Παραδειγμα: Παραδειγμα: RSA – RSA – Ορισμος των κλειδιωνΟρισμος των κλειδιων

1.1. Επιλέγουμε πρωτους αριθμουςΕπιλέγουμε πρωτους αριθμους: : pp=17 & =17 & qq=11=112.2. Υπολογίζουμε:Υπολογίζουμε: n n = = pq pq =17=17 x x 11=18711=1873.3. Υπολογίζουμε:Υπολογίζουμε: φφ((nn)=()=(p–p–1)(1)(q-q-1)=161)=16xx10=16010=1604.4. ΕπιλέγουμεΕπιλέγουμε το το ee, τετοιο ωστε να ειναι πρωτος , τετοιο ωστε να ειναι πρωτος

ως προς το ως προς το φφ((nn)=)=160 (Δηλ. 160 (Δηλ. ΜΚΔΜΚΔ(e,160)=1(e,160)=1)); ; Επιλεγουμε:Επιλεγουμε: ee=7=7..

5.5. Οριζουμε τοΟριζουμε το dd, τετοιο ωστε, τετοιο ωστε:: dede mod 16mod 160 = 1 0 = 1 και και d d < 160< 160 Η σωστη τιμη ειναι Η σωστη τιμη ειναι d=23d=23 επειδη επειδη

2323xx7=161=107=161=10xx16+116+16. Δημοσιευουμε το Δημοσιο Κλειδι6. Δημοσιευουμε το Δημοσιο Κλειδι PU={7,187}PU={7,187}7. Κραταμε μυστικο το ιδιωτικο κλειδι7. Κραταμε μυστικο το ιδιωτικο κλειδι PR={23,PR={23,187}187}

Page 18: Cryptography and Network Security Chapter 9

Παραδειγμα: Κρυπτογραφηση Παραδειγμα: Κρυπτογραφηση /Αποκρυπτογραφηση /Αποκρυπτογραφηση RSARSA

• ΜηνυμαΜηνυμα M = 88M = 88 ( (ισχυει: ισχυει: 88<18788<187))

• ΚρυπτογράφησηΚρυπτογράφηση::C = 88C = 8877 mod 187 = 11 mod 187 = 11

• ΑποκρυπτογράφησηΑποκρυπτογράφηση::M = 11M = 112323 mod 187 = 88 mod 187 = 88

Page 19: Cryptography and Network Security Chapter 9

Υψωση σε δυναμηΥψωση σε δυναμη

• Μπορουμε να χρησιμοποιησουμε τον αλγοριθμο Μπορουμε να χρησιμοποιησουμε τον αλγοριθμο ««Square and MultiplySquare and Multiply» που ειναι γρηγορος και » που ειναι γρηγορος και αποδοτικοςαποδοτικος

• Βασιζεται στην επανειλημενη υψωση στο Βασιζεται στην επανειλημενη υψωση στο τετραγωνο και στους πολλαπλασιασμους που τετραγωνο και στους πολλαπλασιασμους που ειναι απαραιτητοι για να υπολογισουμε το τελικο ειναι απαραιτητοι για να υπολογισουμε το τελικο αποτελεσμααποτελεσμα

• Προσεξτε τη δυαδικη αναπαρασταση του εκθετη.Προσεξτε τη δυαδικη αναπαρασταση του εκθετη. • Απαιτουνται μονο Απαιτουνται μονο O(logO(log22 n) n) πολλαπλασιασμοι πολλαπλασιασμοι

για εναν αριθμο για εναν αριθμο n n – eg. eg. 7755 = 7 = 744.7.711 = 3.7 = 10 mod 11 = 3.7 = 10 mod 11– eg. eg. 33129129 = 3 = 3128128.3.311 = 5.3 = 4 mod 11 = 5.3 = 4 mod 11

Page 20: Cryptography and Network Security Chapter 9

Υψωση σε δυναμηΥψωση σε δυναμη

c = 0; f = 1c = 0; f = 1for i = k downto 0 for i = k downto 0 do c = 2 x cdo c = 2 x c f = (f x f) mod nf = (f x f) mod n

if bif bii == 1 == 1 then then c = c + 1c = c + 1 f = (f x a) mod n f = (f x a) mod n return freturn f

Page 21: Cryptography and Network Security Chapter 9

Αποτελεσματικη ΚρυπτογραφησηΑποτελεσματικη Κρυπτογραφηση

• Η κρυπτογραφηση χρησιμοποιει υψωση σε Η κρυπτογραφηση χρησιμοποιει υψωση σε δυναμη δυναμη ee

• Επειδη το Επειδη το e e ειναι μικρο, αυτο γινεται γρηγορα,ειναι μικρο, αυτο γινεται γρηγορα, – Συχνα επιλεγουμε:Συχνα επιλεγουμε: e=65537 (2 e=65537 (21616-1)-1)

• Αλλα αν ειναι υπερβολικα μικροΑλλα αν ειναι υπερβολικα μικρο ( (π.χ.π.χ. e=3) e=3) μειωνεται η ασφαλειαμειωνεται η ασφαλεια

• Αν το Αν το e e ειναι σταθερο, πρεπει να ειμαστε ειναι σταθερο, πρεπει να ειμαστε σιγουροι οτισιγουροι οτι ΜΚΔΜΚΔ(e,(e,φφ(n))=1(n))=1– Απορριπτονται οποιαδηποτε Απορριπτονται οποιαδηποτε p p ήή q q που δεν ειναι που δεν ειναι

σχετικα πρωτοι ως προς το σχετικα πρωτοι ως προς το ee

Page 22: Cryptography and Network Security Chapter 9

Αποτελεσματικη ΑποκρυπτογραφησηΑποτελεσματικη Αποκρυπτογραφηση

• Η αποκρυπτογραφηση χρησιμοποιει υψωση σε Η αποκρυπτογραφηση χρησιμοποιει υψωση σε δυναμη δυναμη dd– Το Το d d πρεπει να ειναι μεγαλο, αλλιως ειναι μη ασφαλες.πρεπει να ειναι μεγαλο, αλλιως ειναι μη ασφαλες.

• Μπορουμε να χρησιμοποιησουμε τοΜπορουμε να χρησιμοποιησουμε το Chinese Chinese Remainder Theorem (CRT) Remainder Theorem (CRT) για να υπολογισουμε τα για να υπολογισουμε τα mod p & q mod p & q ξεχωριστα.ξεχωριστα. Τοτε τα συνδυαζουμε για να Τοτε τα συνδυαζουμε για να παρουμε την επιθυμητη απαντησηπαρουμε την επιθυμητη απαντηση– Αυτο ειναι περιπου 4Αυτο ειναι περιπου 4 φορες γρηγοροτερο απο το να το φορες γρηγοροτερο απο το να το

κανουμε αμεσακανουμε αμεσα

• Μονο ο κατοχος του ιδιωτικου κλειδιου που γνωριζει Μονο ο κατοχος του ιδιωτικου κλειδιου που γνωριζει τις τιμες τις τιμες τωντις τιμες τις τιμες των p & q p & q μπορει να εφαρμοσει μπορει να εφαρμοσει αυτην την τεχνικηαυτην την τεχνικη

Page 23: Cryptography and Network Security Chapter 9

Δημιουργια κλειδιου Δημιουργια κλειδιου RSARSA

• Οι χρηστες τουΟι χρηστες του RSA RSA πρεπειπρεπει::– Να επιλεξουν στην τυχη δυο πρωτους Να επιλεξουν στην τυχη δυο πρωτους

αριθμους αριθμους p,qp,q – Να επιλέξουν το ειτε τοΝα επιλέξουν το ειτε το ee ειτε τοειτε το dd και να και να

υπολογισουν το αλλο.υπολογισουν το αλλο.

• Οι πρωτοι αριθμοι Οι πρωτοι αριθμοι p,qp,q πρεπει να ειναι πρεπει να ειναι αρκετα μεγαλοι ωστε να μην προκυπτουν αρκετα μεγαλοι ωστε να μην προκυπτουν ευκολα απο το ευκολα απο το modulus modulus n=p.qn=p.q

Page 24: Cryptography and Network Security Chapter 9

Ασφαλεια του Ασφαλεια του RSARSA

• Πιθανες επιθεσεις στον Πιθανες επιθεσεις στον RSA:RSA:– brute force key search – brute force key search – αδυνατο λογω των αδυνατο λογω των

τεραστιων αριθμων που χρησιμοποιουνταιτεραστιων αριθμων που χρησιμοποιουνται– Μσθηματικες επιθεσειςΜσθηματικες επιθεσεις – – βασιζονται στη βασιζονται στη

δσκολια υπολογισμου τουδσκολια υπολογισμου του φ(n),φ(n), παραγοντοποιωντας το παραγοντοποιωντας το modulus modulus nn

– Επιθεσεις χρονισμουΕπιθεσεις χρονισμου – Επιθεσεις επιλεγμενου Επιθεσεις επιλεγμενου ciphertext (Chosen ciphertext (Chosen

ciphertext attacks)ciphertext attacks)

Page 25: Cryptography and Network Security Chapter 9

Το προβλημα της παραγοντοποιησηςΤο προβλημα της παραγοντοποιησης

• Η μαθηματικη προσεγγιση εχει τρεις μορφεςΗ μαθηματικη προσεγγιση εχει τρεις μορφες::– Παραγοντοποιησε τοΠαραγοντοποιησε το n=p.qn=p.q, , και στη συνεχεια υπολογισε και στη συνεχεια υπολογισε

το το φφ(n)(n) και τελος το και τελος το dd– Βρες απ’ευθειας τοΒρες απ’ευθειας το φφ(n)(n) και υπολογισε το και υπολογισε το dd– Βρες απ’ευθειας τοΒρες απ’ευθειας το d d

Σημερα Σημερα RSA RSA με κλειδιαμε κλειδια 1024-2048 bit 1024-2048 bit θεωρειται ασφαληςθεωρειται ασφαλης• Εφοσον τα Εφοσον τα p, q p, q ειναι παρομοιου μεγεθους και πληρουν ολα τα ειναι παρομοιου μεγεθους και πληρουν ολα τα

κριτηρια που εχουν τεθει.κριτηρια που εχουν τεθει.

Page 26: Cryptography and Network Security Chapter 9

Progress in Progress in FactoringFactoring

Page 27: Cryptography and Network Security Chapter 9

Η προοδος Η προοδος στην στην

παραγοντοπαραγοντοποιησηποιηση

Page 28: Cryptography and Network Security Chapter 9

Επιθεσεις Χρονισμου στον Επιθεσεις Χρονισμου στον RSARSA((Timing AttacksTiming Attacks))

• Αναπτυχθηκαν απο τον Αναπτυχθηκαν απο τον Paul Kocher Paul Kocher στα μεσα της δεκαετιας του στα μεσα της δεκαετιας του ’90.’90.

• Εκμεταλλεύονται τη διαφοροποιηση στη χρονικη διαρκεια των Εκμεταλλεύονται τη διαφοροποιηση στη χρονικη διαρκεια των λειτουργιωνλειτουργιων– ππ..χ. Ο πολλαπλασιασμος μικρου αριθμου εναντι του πολλαπλασιασμου χ. Ο πολλαπλασιασμος μικρου αριθμου εναντι του πολλαπλασιασμου

μεγαλου αριθμουμεγαλου αριθμου – ή το ποιες εντολες εκτελουνται μετα απο ενα ή το ποιες εντολες εκτελουνται μετα απο ενα IFIF

• Συμπεραινει το μεγεθος του ορισματος με βαση το χρονο που Συμπεραινει το μεγεθος του ορισματος με βαση το χρονο που παιρνει η εντολη για να εκτελεστειπαιρνει η εντολη για να εκτελεστει

• Στην περιπτωση του Στην περιπτωση του RSA RSA εκμεταλευεται το χρονο που παιρνει η εκμεταλευεται το χρονο που παιρνει η υψωση σε δυναμη.υψωση σε δυναμη.

• Αντιμετρα:Αντιμετρα:– Χρηση σταθερου χρονου υψωσης σε δυναμηΧρηση σταθερου χρονου υψωσης σε δυναμη– Προσθηκη τυχαιων καθυστερησεωνΠροσθηκη τυχαιων καθυστερησεων– Πολλαπλασμος του Πολλαπλασμος του ciphertext ciphertext με εναν τυχαιο αριθμο πριν την υψωση με εναν τυχαιο αριθμο πριν την υψωση

του σε δυναμη.του σε δυναμη.

Page 29: Cryptography and Network Security Chapter 9

Επιθεσεις Επιθεσεις EEπιλεγμενου πιλεγμενου CiphertextCiphertext(Chosen Ciphertext Attacks, CCA)(Chosen Ciphertext Attacks, CCA)

O RSA O RSA ειναι ευπαθης σε επιθεσεις Επιλεγμενου ειναι ευπαθης σε επιθεσεις Επιλεγμενου Ciphertext Ciphertext

O O επιτιθεμενος εχει τη δυνατοτητα να επιλεγει το επιτιθεμενος εχει τη δυνατοτητα να επιλεγει το ciphertextciphertext και να παιρνει πισω το και να παιρνει πισω το αποκρυπτογραφημενο κειμενοαποκρυπτογραφημενο κειμενο

Επιλεγει τοΕπιλεγει το ciphertext ciphertext ετσι ωστε να εκμεταλευεται τις ετσι ωστε να εκμεταλευεται τις ιδιοτητες του ιδιοτητες του RSARSA και με τον τροπο αυτο να παιρνει και με τον τροπο αυτο να παιρνει πληροφοριες που τον βοηθουν στην κρυπταναλυσηπληροφοριες που τον βοηθουν στην κρυπταναλυση

Ως αντιμετρο η Ως αντιμετρο η RSA RSA προτεινει την τροποποιηση του προτεινει την τροποποιηση του plaintextplaintext μεσω μιας διαδικασιας που ονομαζεται μεσω μιας διαδικασιας που ονομαζεται Optimal Asymmetric Encryption Padding (OASP)Optimal Asymmetric Encryption Padding (OASP)

Page 30: Cryptography and Network Security Chapter 9

Optimal Optimal Asymmetric Asymmetric Encryption Encryption Padding Padding (OASP)(OASP)

Page 31: Cryptography and Network Security Chapter 9

ΣυνοψηΣυνοψη

• ΣυζητησαμεΣυζητησαμε::– Τις αρχες της κρυπτογραφιας δημοσιου Τις αρχες της κρυπτογραφιας δημοσιου

κλειδιουκλειδιου– Τον αλγοριθμο Τον αλγοριθμο RSARSA, την υλοποιηση του και , την υλοποιηση του και

την ασφαλεια τουτην ασφαλεια του