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



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

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

Κρυπτογραφία. Εργαστηριακό μάθημα 2-3-4

Κρυπτογραφία. Εργαστηριακό μάθημα 1

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου

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

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

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

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

KEΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ

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

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

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

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

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

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

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

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

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

project RSA και Rabin-Williams

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

Κρυπτογραφία. Εργαστηριακό μάθημα 5 Stream ciphers Κρυπτανάλυση με τον αλγόριθμο Berlekamp-Massey

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

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

Κατάλογος Σχηµάτων. Κατάλογος Πινάκων. I Θεµέλια 27

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας

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

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

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

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

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

ΚΡΥΠΤΟΓΡΑΦΙΑ. Σκοπός: η δημιουργία ασφαλούς επικοινωνίας. «κρυπτός» + «γράφω» τρόπος απόκρυψης περιεχομένου των μηνυμάτων

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

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

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

Πρώτοι αριθμοί και κρυπτογραφικός αλγόριθμος RSA. Άριστος Χαραλάμπους, Δημήτρης Χαραλάμπους, Νικόλας Παρασκευάς

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

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

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

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

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

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

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

Κρυπτογραφία και Ασφάλεια Δικτύων

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

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

Χρήση του μαθηματικού λογισμικού ανοιχτού κώδικα Sage στο πεδίο της κρυπτογραφίας. Φωτεινή Γιάντσιου

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

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

ΕΥΡΕΣΗ ΜΕΓΙΣΤΟΥ ΚΟΙΝΟΥ ΔΙΑΙΡΕΤΗ

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

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

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

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

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

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

Αριθµοθεωρητικοί Αλγόριθµοι και το. To Κρυπτοσύστηµα RSA

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

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

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

ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής. Συμμετρική Κρυπτογραφία

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

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

Κρυπτογράφηση με χρήση Δημοσίου Κλειδιού (Public Key Cryptography PKC)

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

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

! ΘΕΜΑ A Α2. ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΛΥΚΕΙΟΥ. Ονοµατεπώνυµο:

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

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

Τα μαθηματικά των αρχαίων Ελλήνων στις πιο σύγχρονες μεθόδους κρυπτογράφησης

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

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

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

ιαιρετότητα Στοιχεία Θεωρίας Αριθµών «Ο Αλγόριθµος της ιαίρεσης» Αριθµητική Υπολοίπων 0 r < d και a = d q +r

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

Freedom of Speech. Κρυπτογραφία και ασφαλής ανταλλαγή πληροφοριών στο Internet

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης

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

Ιδιάζουσες τιμές πίνακα. y έχουμε αντίστοιχα τις σχέσεις : Αυτές οι παρατηρήσεις συμβάλλουν στην παραγοντοποίηση ενός πίνακα

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

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

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

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

ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ C ΣΕΙΡΑ 1 η

Σύγχρονη Κρυπτογραφία

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

Transcript:

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

Εύρεση αντίστροφου αριθμού Mod n Έχουμε ήδη δει ότι πολύ συχνά συναντάμε την ανάγκη να βρούμε τον αντίστροφο ενός αριθμού a modulo n, δηλαδή έναν αριθμό a με την ιδιότητα aa 1 mod n (όπου, γιαναμπορούμεναβρούμεπάνταέναντέτοιονμοναδικόαριθμό a, πρέπει gcd(a,n)=1) Το πρόβλημα εύρεσης αντιστρόφου το συναντήσαμε: Στον γραμμικό αλγόριθμο αλλά και στον αλγόριθμο Hill για την αποκρυπτογράφηση Στον RSA για τον υπολογισμό του ιδιωτικού κλειδιού d (θυμίζουμε ότι το d είναι τέτοιο ώστε ed 1 mod φ(n)) Στον El Gamal, για την αποκρυπτογράφηση (όπου χρειάζεται ο υπολογισμός του γ -a, δηλαδή η εύρεση του αντίστροφου του γ a ). Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 2

Πώς βρίσκουμε τον αντίστροφο??? Πρώτος τρόπος: αν τα νούμερα είναι σχετικά μικρά, μπορούμε να τον βρούμε με δοκιμές, δοκιμάζοντας όλαταπιθανάνούμερα. Παράδειγμα: έστω ότι θέλουμε τον αντίστροφο του 5 mod 11. Οιπιθανοίαντίστροφοιείναιπροφανώς οι 1,2,,10 (όλοι οι αριθμοί από 1 μέχρι 11-1=10). Δοκιμάζουμε λοιπόν για αυτούς τους 10 αριθμούς ποιος ικανοποιεί τη σχέση 5x 1mod 11. Μπορούμε να δούμε λοιπόν ότι 5-1 9 mod 11. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 3

Υπάρχει πιο συστηματικός τρόπος?? Ο επεκταμένος αλγόριθμος του Ευκλείδη (τον αναλύσαμε κατά την περιγραφή του RSA). Παράδειγμα RSA Ένας χρήστης θέλει να δημιουργήσει ζευγάρι δημόσιου και ιδιωτικού κλειδιού. Κάνει λοιπόν τα εξής: Επιλέγει p=19, q=29. Τότε N=pq=551. φ(ν)=18 28 = 504 Επιλογή e που να μην έχει κοινούς διαιρέτες με το 504. Έστω e=25. Υπολογισμός του ιδιωτικού κλειδιού d. Έχουμε λοιπόν: 504 = 20 25 + 4 25 = 6 4 + 1 4 = 4 1 + 0 Σταματάμε (όπου πράγματι επιβεβαιώσαμε ότι gcd(504,25)=1) Πώς βρίσκουμε λοιπόν το d??? Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 4

Αλγόριθμος του Ευκλείδη (συνέχεια) Διαβάζουμε τις προηγούμενες σχέσεις ανάποδα ως εξής: 1 = 25 6 4 = 25 6 (504 20 25) = = 25 6 504 + 120 25 => 1 = 6 504 + 121 25 Άρα 25-1 121 mod 504 (επαλήθευση: 121 25 = 3025, το οποίο αν το διαιρέσουμεμετο504 δίνει υπόλοιπο 1). Άρα d=121. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 5

Κρυπτογράφηση Αποκρυπτογράφηση RSA Αν m το μήνυμα που θέλουμε να στείλουμε, τότε το κρυπτογραφούμε με την πράξη c = m e mod Ν. Ο παραλήπτης (κάτοχος του ιδιωτικού κλειδιού d) το αποκρυπτογραφεί με την πράξη c d mod Ν. Στη συγκεκριμένη περίπτωση, ισχύει το εξής: Αν m 25 mod 551 = c, τότε c 121 mod 551 = m για όλα τα m (η απόδειξη αυτού έγινε στο μάθημα του RSA). Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 6

μεθόδων: Ας κρυπτογραφήσουμε τη λέξη HELLO με όσους αλγορίθμους έχουμε δει μέχρι τώρα: Αλγόριθμος του Καίσαρα: KHOOR (κάθε γράμμα μετατοπίζεται κατά 3 θέσεις δεξιά). Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 7

Αλγόριθμος του Vigenere: χρειαζόμαστε μια λέξη-κλειδί. Έστω σαν κλειδί η λέξη CRYPTOGRAPHY. Τότε το κρυπτόγραμμα για τη λέξη HELLO είναι JVJAH. Υλοποίηση στο MATLAB: http://mathdemos.gcsu.edu/vigenere/vigenere.html (το αρχείο ventable.zip) Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 8

Γραμμικός αλγόριθμος: έστω a=3, b=1 (θα μπορούσαμε να είχαμε επιλέξει π.χ. a=4?? Όχι, γιατί πρέπει gcd(a,n)=1, όπου n το πλήθος των γραμμάτων του αλφαβήτου κι αφού είμαστε στο αγγλικό αλφάβητο, n=26). To Η είναιτο8 ο γράμμα, άρα κρυπτογραφείται σε 3 7 + 1 mod 26 = 22. Συνεπώς το H κρυπτογραφείται στο 23 ο γράμμα, που είναι το W. Αντίστοιχα για το E έχουμε: (3 4 + 1) mod 26 = 13, οπότε το E κρυπτογραφείται στο 14 ο γράμμα δηλαδή στο N. Για το L: (3 11 +1) mod 26 = 34 mod 26 = 8, οπότε το L κρυπτογραφείται στο 9 ο γράμμα δηλαδή στο I. Τέλος, για το O: (3 14 + 1) mod 26 = 43 mod 26 = 17. Άρα το O κρυπτογραφείται στο 18 ο γράμμα, που είναι το R. Συνεπώς, το HELLO κρυπτογραφείται σε WNIIR. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 9

Γραμμικός αλγόριθμος (αποκρυπτογράφηση): Κάθε ένα κρυπτογραφημένο γράμμα c αποκρυπτογραφείται με την πράξη a -1 (c-b)mod Ν Ας δούμε πως θα αποκρυπτογραφούσαμε το WNIIR. Καταρχήν πρέπει να βρούμε το 3-1 mod 26. Είτε με αλγόριθμο του Ευκλείδη είτε με δοκιμές μπορούμε να βρούμε ότι ισούται με 9. Συνεπώς: Για το W (23 ο γράμμα) έχουμε: 9(22-1) 189 mod 26 7 Άρα, το W αποκρυπτογραφείται στο 8 ο γράμμα του αλφαβήτου, δηλαδή το H Για το N (14 ο γράμμα) έχουμε 9(13-1) 108 mod 26 4. Άρα, το N αποκρυπτογραφείται στο 5 ο γράμμα του αλφαβήτου, δηλαδή στο E. Ομοίως συνεχίζουμε και για τα υπόλοιπα.. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 10

Αλγόριθμος Hill Έστω ότι κάποιοι προτείνουν σαν πίνακα κρυπτογράφησης τον 2 4 3 7 Μπορούμε να τον χρησιμοποιήσουμε?? Η ορίζουσα του παραπάνω πίνακα ισούται με 2 7 3 4 = 2, και gcd(2,26) = 2. Συνεπώς, αφού η ορίζουσα δεν είναι πρώτη ως προς το 26, ο πίνακας δεν είναι αντιστρέψιμος mod 26 άρα δεν μπορεί να χρησιμοποιηθεί για κρυπτογράφηση. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 11

Αλγόριθμος Hill (συνέχεια) Έστω ότι εξετάζουμε τον πίνακα Η ορίζουσα αυτού είναι 11 άρα, πράγματι είναι ένας πίνακας που μπορεί να χρησιμοποιηθεί για την κρυπτογράφηση Hill. Tο ζευγάρι γραμμάτων HE κρυπτογραφείται με βάση το γινόμενο 2 1 3 7 7 4 = 26 35 = Κ = 0 9 2 1 3 7 mod 26 Άρα, το ζευγάρι HE γίνεται AJ Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 12

Αλγόριθμος Hill (συνέχεια) Tο ζευγάρι γραμμάτων LL κρυπτογραφείται με βάση το γινόμενο 2 1 3 7 11 11 = Άρα, το ζευγάρι LL γίνεται DK 55 88 = 3 10 mod 26 Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 13

Tέλος, το O επειδή μένει μόνο του συμπληρώνεται αυθαίρετα με ένα άλλο γράμμα, κατάλληλο ώστε να μην μπερδεύει τον παραλήπτη να καταλάβει ότι είναι απλά πλεονάζον γράμμα. Συνηθέστερα επιλέγεται το πλεονάζον γράμμα να είναι το Q (χωρίς βέβαια να αποκλείονται και άλλα γράμματα). Έτσι, το ζευγάρι γραμμάτων OQ κρυπτογραφείται με βάση το γινόμενο 2 1 3 7 14 16 = 76 126 = 24 22 mod 26 Άρα, το ζευγάρι LQ γίνεται ΥW Άρα η λέξη HELLO γίνεται AJDKΥW Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 14

Αποκρυπτογράφηση Hill Χρειάζεται να υπολογιστεί ο αντίστροφος του πίνακα κρυπτογράφησης, ο οποίος αντίστροφος είναι ο: 7 3 11 1 1 2 mod 26 Ο 11-1 mod 26 μπορεί να υπολογιστεί με τον αλγόριθμο του Ευκλείδη Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 15

Αποκρυπτογράφηση Hill (συνέχεια) Συνεπώς: 1 = 26 2 11 + 4 11 = 2 4 + 3 4 = 3 = = 1 3 + 1 3 1 + 0 4 1 3 = 4 1 (11 2 4) = 1 11+ 3 4 = 1 11+ 3 (26 2 11) = 3 26 7 11 Άρα 11-1 mod 26 = -7 mod 26 = 19 (το 19 προέκυψε από την πράξη -7 + 26) = Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 16

Αποκρυπτογράφηση Hill (συνέχεια) O πίνακας αποκρυπτογράφησης λοιπόν ισούται με: 7 19 1 3 mod 26 2 133 19 57 38 mod 26 3 7 21 12 Κάθε λοιπόν ζευγάρι από το κρυπτόγραμμα πολλαπλασιάζεται με τον παραπάνω πίνακα K -1 έτσι προκύπτει το αρχικό μήνυμα. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 17

Αποκρυπτογράφηση Hill (συνέχεια) Έστω ότι λαμβάνουμε το κρυπτογραφημένο μήνυμα ML. Ποιο είναι το μήνυμα που λάβαμε?? Θα πολλαπλασιάσουμε τον K -1 με το διάνυσμα (αφού το M είναι το 13 ο γράμμα και το L το 12 ο ). Άρα 3 7 2112 1211 267 216 12 11 7 mod26 8 Συνεπώς, το M αντιστοιχεί στο 8 ο γράμμα του αλφαβήτου, δηλαδή το H, και το L αντιστοιχεί στο 9 ο γράμμα, δηλαδή το I. Άρα, η λέξη που εστάλη είναι HI Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 18

Αλγόριθμος Playfair με κλειδί τη λέξη CRYPTOGRAPHY. Αρχικά, κατασκευάζουμε τον αντίστοιχο πίνακα: (επιλέξαμε την περίπτωση όπου παραλείπουμε το Q από τον πίνακα, που είναι η συνηθέστερη περίπτωση) C R Y P T O G A H B D E F I J K L M N S U V W X Z Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 19

Playfair (συνέχεια) Στη συνέχεια, «σπάμε» το μήνυμα HELLO σε δυάδες, δηλαδή HE, LX, LO (προσέξτε πως δεν πρέπει ένα ζεύγος να αποτελείται από δύο ίδια γράμματα, συνεπώς επειδή θα σχηματιζόταν το ζεύγος LL παρεμβάλλαμε ένα Χ ανάμεσα) ΠΡΟΣΟΧΗ!! Δεν παρεμβάλλουμε το X ανάμεσα σε οποιοδήποτε ζευγάρι διαδοχικών ίδιων γραμμάτων, παρά μόνο αν το ζευγάρι σχηματίζεται κατά την παραπάνω κατάτμηση της λέξης. Για παράδειγμα, για τη λέξη GOOD, θα είχαμε τα ζευγάρια GO και OD χωρίς κανένα πρόβλημα C R Y P T O G A H B D E F I J K L M N S U V W X Z Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 20

Playfair (συνέχεια) Η κρυπτογράφηση γίνεται ως εξής: Τα H,E σχηματίζουν ορθογώνιο στον πίνακα, άρα κρυπτογραφούνται στα G,I. Tα L,X σχηματίζουν επίσης ορθογώνιο, άρα κρυπτογραφούνται στα N,V. Tέλος, τα LO σχηματίζουν ορθογώνιο και αυτά, άρα κρυπτογραφούνται στα K,G Συνεπώς, το HELLO γίνεται GINVKG. C R Y P T O G A H B D E F I J K L M N S U V W X Z Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 21

Playfair (Αποκρυπτογράφηση) Η αποκρυπτογράφηση γίνεται με ακριβώς την αντίστροφη διαδικασία. Έστω ότι λαμβάνουμε το κρυπτογραφημένο μήνυμα GLGMMRAGDK. Tα G,L βρίσκονται στην ίδια στήλη, άρα το καθένα αποκρυπτογραφείται στο γράμμα που βρίσκεται από πάνω του συνεπώς GL->RE Τα G,M σχηματίζουν ορθογώνιο, άρα αποκρυπτογραφούνται σε AL Τα M,R σχηματίζουν ορθογώνιο, άρα αποκρυπτογραφούνται σε L,Y. Tα A,G είναι στην ίδια γραμμή, άρα το καθένα αποκρυπτογραφείται στο αμέσως προηγούμενό του, συνεπώς AG->GO. Tέλος, τα D,K είναι στην ίδια στήλη οπότε το καθένα αποκρυπτογραφείται στο γράμμα που βρίσκεται από πάνω του με άλλα λόγια, DK -> OD. Άρα το αρχικό μήνυμα είναι: REALLY GOOD. C R Y P T O G A H B D E F I J K L M N S U V W X Z Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 22

Σύνοψη Οι αλγόριθμοι μετατόπισης (π.χ. του Καίσαρα) και ο γραμμικός αλγόριθμος είναι απλοί αλγόριθμοι αντικατάστασης ή μονοαλφαβητικοί (κι αυτό γιατί ένα γράμμα πάντοτε κρυπτογραφείται στο ίδιο). Οι αλγόριθμοι Vigenere, Hill, Playfair είναι πολυαλφαβητικοί αλγόριθμοι αντικατάστασης (ένα γράμμα που εμφανίζεται πολλές φορές στο αρχικό μήνυμα μπορεί να κρυπτογραφείται σε διαφορετικό γράμμα στο παραγόμενο κρυπτόγραμμα) Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 9 23