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

Σχετικά έγγραφα
ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3

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

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

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

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Κρυπτογραφία. Εργαστηριακό μάθημα 11 (Επαναληπτικές ασκήσεις)

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

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

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

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

Κρυπτογραφία. Εργαστηριακό μάθημα 10 (Επαναληπτικές ασκήσεις)

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

ΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: 2 Δυαδική Κωδικοποίηση

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

Λειτουργικά Συστήματα (ΗΥ321)

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2

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

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

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

* * * ( ) mod p = (a p 1. 2 ) mod p.

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

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. PGP (Pretty Good Privacy)

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

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

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 8 η. Βασίλης Στεφανής

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

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

Δραστηριότητες σχετικά με κρυπτογραφία και ελέγχους ισοτιμίας

YΒΡΙΔΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

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

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

7. O κβαντικός αλγόριθμος του Shor

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

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

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

a n = 3 n a n+1 = 3 a n, a 0 = 1

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

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

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

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

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

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

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

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

Θεωρία Πληροφορίας. Διάλεξη 4: Διακριτή πηγή πληροφορίας χωρίς μνήμη. Δρ. Μιχάλης Παρασκευάς Επίκουρος Καθηγητής

Υπολογιστικά & Διακριτά Μαθηματικά

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

Κ15 Ψηφιακή Λογική Σχεδίαση 2: Δυαδικό Σύστημα / Αναπαραστάσεις

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

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

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

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

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

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΗΜΕΡΗΣΙΩΝ

Δομές Δεδομένων και Αλγόριθμοι

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Πληροφορική Ι. Μάθημα 10 ο Ασφάλεια. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Γκόγκος Χρήστος

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

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

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

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

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

Παράρτημα Α Περισσότερα για την Ασφάλεια στο Διαδίκτυο

Κεφάλαιο 2. Κρυπτογραφικά εργαλεία

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

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr

project RSA και Rabin-Williams

ΨΗΦΙΑΚΑ ΠΙΣΤΟΠΟΙΗΤΙΚΑ ΓΙΑ ΑΣΦΑΛΗ ΚΑΙ ΠΙΣΤΟΠΟΙΗΜΕΝΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗΝ ΤΡΑΠΕΖΑ ΤΗΣ ΕΛΛΑΔΟΣ. Οδηγίες προς τις Συνεργαζόμενες Τράπεζες

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

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

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

ΚΡΥΠΤΟΓΡΑΦΙΑ Α. ΑΠΟ ΤΟ ΒΙΒΛΙΟ «Η ΦΥΣΗ ΚΑΙ Η ΔΥΝΑΜΗ ΤΩΝ ΜΑΘΗΜΑΤΙΚΩΝ»

Κρυπτογραφία και Ηλεκτρονικοί Υπολογιστές. ΣΥΝΤΕΛΕΣΤΕΣ: Κραβαρίτης Αλέξανδρος Μαργώνη Αγγελική Χαλιμούρδα Κων/να

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

Transcript:

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

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

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

Η κρυπτογραφία χρησιμοποιείται όταν δύο άτομα θέλουν να ανταλλάξουν μηνύματα με ασφάλεια, χωρίς να μπορεί κάποιος τρίτος να τα διαβάσει, ακόμη και αν αποκτήσει πρόσβαση σε αυτά. Για να γίνει εφικτό κάτι τέτοιο, το μήνυμα κρυπτογραφείται, δηλαδή μετασχηματίζεται, και ο αποστολέας στέλνει στον παραλήπτη το κρυπτογραφημένο μήνυμα. Η ανάκτηση του αρχικού μηνύματος από το κρυπτογρφημένο απαιτεί μία πρόσθετη πληροφορία που είναι γνωστή στον παραλήπτη, ενδεχομένως και στον αποστολέα, αλλά δεν είναι γνωστοί σε τρίτους. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 4 / 27

Οι πιο διαδεδομένες μέθοδοι κρυπτογράφησης βασίζονται στη θεωρία αριθμών. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 5 / 27

Στην κρυπτογραφία ιδιωτικού κλειδιού, δύο άτομα τα οποιά θέλουν να επικοινωνούν με ασφάλεια, μοιράζονται ένα μυστικό κλειδί. Το μυστικό κλειδί χρησιμοποιειται για την κρυπτογράφηση και την αποκρυπτογράφηση των μηνυμάτων. Αν υπάρχουν n άτομα που θέλουν ανά δύο να επικοινωνούν με ασφάλεια, τότε το κάθε ζεύγος θα πρέπει να έχει ένα ξεχωριστό μυστικό κλειδί. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 6 / 27

Στην κρυπτογραφία δημόσιου κλειδιού, κάθε άτομο διαθέτει δύο κλειδιά. Το ένα κλειδί το ανακοινώνει σε όλα τα υπόλοιπα άτομα και ονομάζεται δημόσιο κλειδί. Το άλλο το γνωρίζει μόνο το συγκεκριμένο άτομο και ονομάζεται ιδωτικό κλειδί. Η κρυπτογράφηση ενός μηνήματος γίνεται με χρήση του δημόσιου κλειδιού. Ωστόσο η αποκρυπτογράφηση απαιτεί τη γνώση του ιδιωτικού κλειδιού. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 7 / 27

Αν ο B θέλει να στείλει ένα μήνυμα στον A, τότε το κωδικοποιεί χρησιμοποιώντας το δημόσιο κλειδί του A. Η αποκωδικοποίηση του μηνήματος μπορεί να γίνει γρήγορα μόνο από τον A, οποίος είναι ο μόνος που γνωρίζει το ιδιωτικό κλειδί του A. Οποιοδήποτε άλλο άτομο, ακόμη και αν αποκτήσει πρόσβαση στο κωδικοποιημένο μήνυμα δεν θα μπορέσει να το αποκωδικοποιήσει σε αποδεκτά μικρό χρονικό διάστημα. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 8 / 27

Στο σύστημα κρυπτογράφησης RSA το δημόσιο κλειδί είναι ένα ζεύγος ακεραίων αριθμών (n, e) όπου ο n είναι το γινόμενο δύο μεγάλων πρώτων αριθμών p και q. ο e είναι ένας θετικός ακέραιος αριθμός, τέτοιος ώστε gcd(e, (p 1) (q 1)) = 1. Το ιδιωτικό κλειδί είναι το ζεύγος ακεραίων ακεραίων αριθμών (n, d) όπου ο n είναι ο ίδιος αριθμός όπως στο δημόσιο κλειδί. ο d είναι ο αντίστροφος του e modulo (p 1) (q 1). Σημειώνεται ότι ο αντίστροφος του e modulo (p 1) (q 1) υπάρχει επειδή gcd(e, (p 1) (q 1)) = 1. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 9 / 27

Ας υποθέσουμε αρχικά ότι το μήνυμα M που θέλουμε να κρυπτογραφήσουμε είναι ένας αριθμός μικρότερος του n. Το κρυπτογραφημένο μήνυμα είναι ο αριθμός C = M e mod n. Το C να υπολογιστεί γρήγορα, εφαρμόζοντας τον αλγόριθμο για γρήγορη ύψωση σε εκθέτη mod n. Το αρχικό μήνυμα προκύπτει από το κρυπτογραφημένο μήνυμα, όπως θα αποδείξουμε στο επόμενο θεώρημα, θέτοντας M = C d mod n. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 10 / 27

Δεν υπάρχει αποδοτικός τρόπος για να ανακτηθεί το μήνυμα M από το C χωρίς να γνωρίζουμε το d. Επίσης δεν υπάρχει αποδοτικός τρόπος να βρούμε το d χωρίς να γνωρίζουμε τους πρώτους αριθμούς p και q. Τέλος δεν υπάρχει αποδοτικός αλγόριθμος για παραγοντοποίηση, έτσι ώστε να μπορέσουμε να βρούμε τους αριθμούς p και q γνωρίζοντας το n. Από τα παραπάνω προκύπτει ότι μόνο ο κάτοχος του ιδιωτικού κλειδιού (n, d) μπορεί να αποκρυπτογραφήσει γρήγορα το κρυπτογραφημένο μήνυμα C. Χωρίς τη γνώση του ιδωτικού κλειδιού ο χρόνος που απαιτείται για την αποκρυπτογράφηση είναι απαγορυτικά μεγάλος. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 11 / 27

Θεώρημα Εστω p, q πρώτοι αριθμοί, n = p q, e ένας θετικός ακέραιος αριθμός τέτοιος ώστε gcd(e, (p 1) (q 1)) = 1, d ο αντίστροφος του e modulo (p 1) (q 1), M ένας μη αρνητικός ακέραιος μικρότερος του n και C = M e mod n. Τότε ισχύει M = C d mod n. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 12 / 27

Απόδειξη Ισχύει e d 1 (mod (p 1) (q 1)). Συνεπώς e d = 1 + k (p 1) (q 1), για κάποιον ακέραιο k. Θέτοντας k = k (q 1), έχουμε e d = 1 + k (p 1) Άρα (M e ) d = M e d = M 1+k (p 1) = M M k (p 1) = M (M p 1 ) k. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 13 / 27

Απόδειξη Αν p M, τότε C d (M e ) d M (M p 1 ) k M 1 k M (mod p) όπου το ότι M p 1 1 (mod p) προκύπτει από το μικρο θεώρημα του Fermat. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 14 / 27

Απόδειξη Αν p M, τότε p (M e ) d επειδή e και d είναι θετικοί αριθμοί. Άρα M 0 (mod p) και (M e ) d 0 (mod p). Η δεύτερη σχέδη συνεπάγεται ότι C d 0 (mod p). Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 15 / 27

Απόδειξη Συνεπώς και στις δύο περιπτώσεις έχουμε C d M (mod p). Ακριβώς με τον ίδιο τρόπο προκύτει ότι C d M (mod q). Από το Κινέζικο Θεώρημα Υπολοίπων προκύπτει ότι C d M (mod p q). Επειδή n = p q και M < n, η τελευταία σχέση συνεπάγεται ότι C d mod n = M. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 16 / 27

Το σύστημα RSA εκτός από την αποστολή κρυπτογραφημένων μηνημάτων, μπορεί να χρησιμοποιηθεί και για την ψηφιακή υπογραφή σε μηνήματα. Εστω ότι ένας αποστολέας θέλει να στείλει ένα μήνημα σε πολλούς παραλήπτες. Δεν τον ενδιαφέρει να κρυπτογραφήσει το μήνημα, θέλει ωστόσο οι παραλήπτες να μπορούν να αναγνωρίσουν τη γνησιότητα του μηνήματος. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 17 / 27

Για να υπογράψει ψηφιακά ένα μήνυμα M, ο αποστολέας A αρκεί να κωδικοποιήσει το μήνυμα χρησιμοποιώντας το δικό του ιδιωτικό κλειδί. Στη συνέχεια στέλνει στους παραλήπτες το M και το S = M d mod n. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 18 / 27

Ο κάθε παραλήπτης, όταν λάβει τα M και S, για να βεβαιωθεί ότι ο αποστολέας είναι πράγματι ο A, αποκωδικοποιεί το S χρησιμοποιώντας το κλειδί του A και το συγκρίνει με το M. Αν ο αποστολέας είναι πράγματι ο A, τότε το μήνυμα που θα προκύψει από την αποκωδικοποίηση είναι το S e mod n = (M d ) e mod n = (M e ) d mod n = M σύμφωνα με το προηγούμενο θεώρημα. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 19 / 27

Αν το μήνυμα που πρόκειται να κρυπτογραφηθεί δεν είναι αριθμός αλλά κείμενο που σχηματίζεται από ένα αλφάβητο Σ με b = Σ σύμβολα τότε μπορούμε να θεωρήσουμε ότι τα σύμβολα του Σ αναπαριστούν τους αριθμούς 0, 1,..., b 1 και να θεωρήσουμε μία οποιαδήποτε ακολουθία συμβόλων ως την αναπαράσταση ενός αριθμού στο b-αδικό σύστημα αρίθμησης. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 20 / 27

Για να κρυπτογραφήσουμε το κείμενο, το χωρίζουμε σε τμήματα μήκους k, όπου το k επιλέγεται έτσι ώστε ο μεγαλύτερος αριθμός μήκους k στο b-αδικό σύστημα να είναι μικρότερος του n και το k να είναι το μέγιστο με αυτή την ιδιότητα. Συγκεκριμένα θέλουμε: b k 1 < n b k+1 1 b k n < b k+1 k log b n < k + 1 k = log b n Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 21 / 27

Αν το μήκος του μηνύματος δεν είναι πολλαπλάσιο του k τότε συμπληρώνουμε το τέλος του μηνύματος με ένα κατάλληλο πλήθος εμφανίσεων κάποιου χαρακτήρα (π.χ. κενό ή εναλλάκτικά κάποιον ειδικό χαρακτήρα που έχουμε συμπεριλάβει στο αλφάβητο για αυτό το σκοπό). Με την παραπάνω διαδικασία έχουμε χωρίσει το αρχικό μήνυμα κειμένου T σε μία ακολουθία συμβολοσειρών t 1, t 2,..., t l, όπου το κάθε t i έχει μήκος k. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 22 / 27

Στη συνέχεια ερμηνεύουμε το κάθε t i ως αριθμό στο b-δικό σύστημα αρίθμησης, θέτοντας m i = (t i ) b. Με αυτό τον τρόπο σχηματίζεται μία ακολουθία αριθμών m 1, m 2,..., m l. Λόγω του τρόπου επιλογής του k, κάθε αριθμός της ακολουθίας είναι μικρότερος του n. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 23 / 27

Το κωδικοποιημένο μήνυμα αποτλείται από την ακολουθία m e 1 mod n, me 2 mod n,..., me l mod n Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 24 / 27

Ο παραλήπτης όταν λάβει μία ακολουθία αριθμών c 1, c 2,..., c l, πρώτα ανακτά την αρχική ακολουθία m 1, m 2,..., m l, θέτοντας m i = c d i mod n. Στη συνέχεια μετατρέπει τον κάθε αριθμό στο b-άδικό σύστημα αρίθμησης, ανακτώντας έτσι την ακολουθία t 1, t 2,..., t l. Τέλος συνενώσει τα t 1, t 2,..., t l για να ανακτήσει το αρχικό κείμενο Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 25 / 27

Δύο άτομα A και B μπορούν να συμφωνήσουν σε ένα κοινό μυστικό κλειδί χρησιμοποιώντας το παρακάτω πρωτόκολλο επικοινωνίας: Ο A και ο B επιλέγουν με κάποιον τρόπο (που δεν χρειάζεται να είναι μυστικός) έναν πρώτο αριθμό p και μία πρωταρχική ρίζα r modulo p. Ο A επιλέγει έναν μυστικό αριθμό a και στέλνει στον B το r a mod p. Ο B επιλέγει έναν μυστικό αριθμό b και στέλνει στον A το r b mod p. Ο A όταν λάβει το r b mod p υπολογίζει το (r b ) a mod p, το οποίο είναι το μυστικό κλειδί Ο B όταν λάβει το r a mod p υπολογίζει το (r a ) b mod p, το οποίο είναι το μυστικό κλειδί Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 26 / 27

Παρατηρούμε ότι Ο A και ο B έχουν υπολογίσει το ίδιο μυστικό κλειδί, επειδή (r b ) a = r b a = r a b = (r a ) b. Οποιοσδήποτε τρίτος, ακόμη και αν γνωρίζει τα p, r, r a mod p, r b mod p δεν μπορεί να υπολογίσει σε εύλογο χρονικό διάστημα το (r a ) b mod p, καθώς δεν υπάρχει γνωστός τρόπος για να γίνει αυτός ο υπολογισμός χωρίς να είναι γνωστά τα a και b και ο υπολογισμός των a και b ισοδυναμεί με την εύρεση διακριτών λογαρίθμων, πρόβλημα για το οποίο επίσης δεν είναι γνωστός κάποιος αποδοτικός αλγόριθμος. Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) 2018 27 / 27