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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 10 : Ασφάλεια. Δρ. Γκόγκος Χρήστος

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

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

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

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

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

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

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

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

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

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

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

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

Ασφάλεια στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης

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

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

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

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

Από τις υπηρεσίες Πληροφόρησης στο «Ηλεκτρονικό Επιχειρείν»

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

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

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

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

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

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

Ασφάλεια Ασύρματων & Κινητών Επικοινωνιών

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

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

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

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

Συμμετρικά κρυπτοσυστήματα

Διδάσκουσα: Χάλκου Χαρά,

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

8.3 Ασφάλεια ικτύων. Ερωτήσεις

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

Δ Εξάμηνο. Κρυπτογραφία: Συμμετρική Κρυπτογράφηση

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

Κρυπτογραφία. Κεφάλαιο 3 Αλγόριθμοι τμήματος Block ciphers

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

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

Ασφάλεια ικτύων (Computer Security)

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Βασικές Έννοιες Κρυπτογραφίας

Κρυπτογραφία και Ασφάλεια Υπολογιστών

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

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

Τετάρτη 20 Ιουνίου, Κρυπτογράφηση Ανωνυμοποίηση Ψευδωνυμοποίηση

Συμμετρική Κρυπτογραφία

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

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

Μελέτη απόδοσης αλγορίθμων κρυπρογράϕησης σε CUDA

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

;-το αβαπ/ιπ^ίσζγ^κχο ι δ & υ ϊο α. ί / Μ Ο Λ Ο / 7 Τ Ο

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Κρυπτογραφία. Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

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

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

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

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

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

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

ΕΠΑΝΑΛΗΠΤΙΚΟ ΤΕΣΤ ΣΤΗΝ ΕΝΟΤΗΤΑ

1.1. Ορισμοί και ορολογία

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

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

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

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

Symmetric Cryptography. Dimitris Mitropoulos

ΕΠΑΝΑΛΗΠΤΙΚΟ ΤΕΣΤ ΣΤΗΝ ΕΝΟΤΗΤΑ

Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Κρήτης

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

Α.ΤΕΙ ΚΡΗΤΗΣ ΠΑΡΑΡΤΗΜΑ ΧΑΝΙΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝIΚΩΝ ΜΗΧΑΝΙΚΩΝ

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

Transcript:

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

Βασικοί όροι Με τον όρο κρυπτογραφία εννοούμε τη μελέτη μαθηματικών τεχνικών που στοχεύουν στην εξασφάλιση θεμάτων που άπτονται της ασφάλειας μετάδοσης της πληροφορίας, όπως εμπιστευτικότητα, πιστοποίηση ταυτότητας του αποστολέα και διασφάλιση του αδιάβλητου της πληροφορίας. Ορολογία: Plaintext : Το αρχικό κομμάτι πληροφορίας Κρυπτόγραμμα (ciphertext): Το κρυπτογραφημένο μήνυμα Encryption: Η διαδικασία της κρυπτογράφησης ενός μηνύματος Decryption: η διαδικασία αποκρυπτογράφησής του Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 2

Στόχοι της κρυπτογραφίας Τα μηνύματα πρέπει να φτάνουν στο σωστό προορισμό Εμπιστευτικότητα: Μόνο ο παραλήπτης τους να μπορεί να τα λάβει και να τα δει (confidentiality) Πιστοποίηση της ταυτότητας του αποστολέα (authentication) Το μήνυμα δεν πρέπει να αλλοιωθεί κατά τη μεταφορά από μη εξουσιοδοτημένη οντότητα (data integrity) Όποια ενέργεια κάνει κάποιος (π.χ. πιστοποίηση ταυτότητας) δενπρέπειαργότεραναμπορείνατην αρνηθεί (Non-repudiation) Προσοχή! Η κρυπτογραφία δεν λύνει τα παραπάνω, απλά προσπαθεί να τα ικανοποιήσει Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 3

Αλγόριθμοι βασισμένοι σε κλειδιά Οι αλγόριθμοι κρυπτογράφησης χρησιμοποιούν ένα ή περισσότερα κλειδιά (keys). Encryption Key Υποκλοπέας Decryption Key Α Plaintext Encryption Ciphertext Decryption Original plaintext Β Η ασφάλεια έγκειται στο ότι δεν είναι γνωστό το κλειδί οι αλγόριθμοι κρυπτογράφησης και αποκρυπτογράφησης μπορούν να είναι ευρέως γνωστοί (αρχή του Kerchoff) Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 4

Ένας απλός αλγόριθμος βασισμένος σε κλειδί Κρυπτογράφηση Πολλαπλασίασε το αρχικό μήνυμα επί 2 και πρόσθεσε το κλειδί Αποκρυπτογράφηση Αφαίρεσε το κλειδί και διαίρεσε το κρυπτόγραμμα διά 2 plaintext = SECRET = 19 5 3 18 5 20 Key = 3 Ciphertext = 41 13 9 39 13 43 Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 5

Κατηγορίες αλγορίθμων ως προς το είδος του κλειδιού Αλγόριθμοι συμμετρικού (ή κρυφού) κλειδιού (symmetric key algorithms) Χρησιμοποιείται το ίδιο κλειδί τόσο για την κρυπτογράφηση όσο και για την αποκρυπτογράφηση Αλγόριθμοι ασύμμετρου (ή δημοσίου) κλειδιού (Asymmetric (or public key) algorithms) Χρησιμοποιούνται διαφορετικά κλειδιά για την κρυπτογράφηση και την αποκρυπτογράφηση Το κλειδί κρυπτογράφησης δεν μπορεί να εξαχθεί από το κλειδί αποκρυπτογράφησης Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 6

Μαθηματικός φορμαλισμός Αν E και D συμβολίζουν τις συναρτήσεις κρυπτογράφησης και αποκρυπτογράφησης αντίστοιχα, τότε: E K1 (m) = c D K2 (c) = m όπου M και C υποδηλώνουν το αρχικό και το κρυπτογραφημένο μήνυμα αντίστοιχα. Οι δείκτες Ki υποδηλώνουν την εξάρτηση των συναρτήσεων από το κλειδί. Οι συναρτήσεις έχουν την ιδιότητα: D K2 (E K1 (m)) = m Σε αλγόριθμους συμμετρικού κλειδιού, ισχύει K1 = K2 Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 7

Αλγόριθμοι συμμετρικού κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Ασφαλής μετάδοση του κλειδιού Ο αποστολέας και ο παραλήπτης πρέπει από την αρχή να συμφωνήσουν στη χρήση ενός κοινού κλειδιού. Ένα «ασφαλές κανάλι επικοινωνίας» πρέπει να υπάρχει για την επικοινωνία τους προκειμένου να ενημερώσει ο ένας τον άλλον για τον κλειδί. Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 8

Ιστορική αναδρομή Αλγόριθμοι αντικατάστασης και μετάθεσης Πριν την εμφάνιση των υπολογιστών, η κρυπτογραφία εφαρμοζόταν σε μηνύματα αποτελούμενα από γράμματα της αλφαβήτου Αλγόριθμοι αντικατάστασης (substitution ciphers): κάθε γράμμα του αρχικού μηνύματος αντικαθίσταται από κάποιο άλλο γράμμα του αλφαβήτου του κρυπτογράμματος. Αλγόριθμοι μετάθεσης ή αναδιάταξης (transposition (permutation) ciphers): το κρυπτόγραμμα είναι αναγραμματισμός του αρχικού μηνύματος. Είναι αλγόριθμοι συμμετρικού κλειδιού Αυτέςοιτεχνικέςείναιπαρούσεςσχεδόνσεόλουςτους σύγχρονους αλγορίθμους κρυπτογράφησης. Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 9

Ειδική περίπτωση αλγορίθμων αντικατάστασης: αλγόριθμοι μετατόπισης Κάθε γράμμα μετατοπίζεται κατά k θέσεις δεξιά τους (όπου k το κλειδί του αλγορίθμου) Παράδειγμα αλγόριθμου μετατόπισης: Caesar cipher Κάθε γράμμα αντικαθίσταται από εκείνο που βρίσκεται 3 θέσεις (modulo 26 για το αγγλικό αλφάβητο) δεξιά του. Η ασφάλεια των αλγορίθμων μετατόπισης είναι μικρή (π.χ. για το αγγλικό αλφάβητο, τα πιθανά κλειδιά είναι μόλις 25). Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 10

Caesar Cipher - Παραδείγματα Παράδειγμα 1 Plaintext: ABCXYZ Ciphertext: DEFABC Παράδειγμα 2 Plaintext: This is not secure Ciphertext: Wklv lv qrw vhfxuh Στη γενική περίπτωση, ένας αλγόριθμος μετατόπισης ολισθαίνει κάθε γράμμα κατά k θέσεις όπου το k μπορεί να πάρει οποιαδήποτε τιμή. Μη ασφαλείς αλγόριθμοι το πλήθος των δυνατών κλειδιών είναι πολύ μικρό!!! Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 11

Μονοαλφαβητικοί αλγόριθμοι αντικατάστασης Κάθε σύμβολο του μηνύματος αντιστοιχίζεται σε ένα συγκεκριμένο σύμβολο του αλφαβήτου του κρυπτογράμματος, με μία «1-1» και επί συνάρτηση. Παράδειγμα: Α -> Λ, Β -> Ω, Γ -> Δ κ.ο.κ. Το πλήθος των κλειδιών είναι πολύ μεγάλο!! (ίσο με το πλήθος των δυνατών αντιστοιχίσεων που μπορούν να υπάρξουν) Για το ελληνικό αλφάβητο που έχει 24 γράμματα, οι πιθανές αντιστοιχίσεις είναι 23! Ένας μονοαλφαβητικός αλγόριθμος αντικατάστασης είναι εύκολο να σπάσει, με ελέγχους της συχνότητας εμφάνισης των γραμμάτων Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 12

Συχνότητες εμφάνισης γραμμάτων της ελληνικής γλώσσας Γράμμα Συχνότητα Εμφάνισης (%) Γράμμα Συχνότητα Εμφάνισης (%) Α 12 Λ 3,3 Ο 9,8 Η 2,9 Τ 9,1 Γ 2 Ε 8 Δ 1,7 Ν 7,9 Ω 1,6 Ι 7,8 Χ 1,4 Π 5,024 Θ 1,3 Ρ 5,009 Φ 1,2 Σ 4,9 Β 0,8 Μ 4,4 Ξ 0,6 Υ 4,3 Ζ 0,5 Κ 4,2 Ψ 0,2 Πρέπει το κείμενο να είναι μεγάλο, ώστε οι συχνότητες εμφάνισης των γραμμάτων στο κείμενο να ταυτίζονται με αυτές του πίνακα. Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 13

Ευρύτερη περίπτωση: Πολυαλφαβητικοί αλγόριθμοι αντικατάστασης Κάθε γράμμα του αρχικού μηνύματος δεν αντικαθίσταται από κάποιο συγκεκριμένο, αλλά το από ποιο θα αντικατασταθεί καθορίζεται από κάποιο κλειδί Αν και δείχνει πιο ασφαλής από έναν απλό αλγόριθμο αντικατάστασης, εν τούτοις αν βρεθεί το μήκος του κλειδιού υπόκειται στις ίδιες μεθόδους κρυπτανάλυσης, βασισμένες στις συχνότητες εμφάνισης των γραμμάτων Παράδειγμα: Vigenere Cipher Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 14

Vigenere Cipher Aνακαλύφτηκε από τον Γάλλο κρυπτογράφο Blaise de Vigenere Χρησιμοποιεί μία φράση-κλειδί για να κρυπτογραφήσει ένα μήνυμα Κάθε χαρακτήρας του κλειδιού αποφασίζει το πόσες θέσεις θα ολισθήσει ο αντίστοιχος χαρακτήρας του αρχικού κειμένου. Για παράδειγμα: A: ολίσθηση 0 θέσεων δεξιά B: ολίσθηση 1 θέσης δεξιά C: ολίσθηση 2 θέσεων δεξιά Αν η φράση-κλειδί έχει μικρότερο μήκος από το αρχικό μήνυμα, η φράση-κλειδί επαναλαμβάνεται. Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 15

Παράδειγμα Κλειδί: lucky Αρχικό μήνυμα: simple message Κλειδί μετά την επανάληψη: luckyl uckyluc Πλήθος θέσεων ολίσθησης: 11 (l), 20(u), 2(c), 10(k), 24 (y), 11(l), 20(u), 2(c), 10(k), 24(y), 11(l), 20(u), 2(c). Αυτό το πλήθος θέσεων ολίσθησης εξαρτάται από τη θέση του αντίστοιχου γράμματος του κλειδιού στο αγγλικό αλφάβητο. Για παράδειγμα, το l είναι το 12 ο γράμμα, άρα η μετατόπιση του αντίστοιχου γράμματος του αρχικού μηνύματος είναι κατά 11 θέσεις δεξιά κ.ο.κ. Ολίσθηση των χαρακτήρων: s d, i c, m o, p z, l j, Κρυπτόγραμμα: dcozjpggcqlag Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 16

Σχόλια για τον αλγόριθμο Vigenere Το κλειδί πρέπει να είναι μεγάλο, όχι μόνο για αποφυγή της δυνατότητας εξαντλητικής αναζήτησης αλλά και για την απόκρυψη της συχνότητας των γραμμάτων. Μέθοδος κρυπτανάλυσης: αναζήτηση του μεγέθους του κλειδιού (αν υπολογιστεί το μήκος του κλειδιού, το πρόβλημα ανάγεται σε αλγόριθμο απλής αντικατάστασης). Έλεγχος του Kasiski: με δεδομένο ότι στο αρχικό κείμενο υπάρχουν λογικά πολλά τμήματα που επαναλαμβάνονται (π.χ. στην ελληνική γλώσσα λέξεις όπως «το», «οι», «σε», «με», «του», «από» κτλ εμφανίζονται πολλές φορές σε ένα κείμενο), τότε αν στο κρυπτόγραμμα εμφανιστούν δύο τέτοια τμήματα, πιθανότατα αυτά αντιστοιχούν σε ίδιο μήνυμα, στο οποίο έχει εφαρμοστεί το ίδιο κλειδί. Έτσι είναι πιθανό να υπολογιστεί το μήκος του κλειδιού. Παράδειγμα: Έστω το κρυπτόγραμμα ΑΚΨΟΜΙΗΗΙΛΟΗΗΙΞΑΚΨΝΔΚ το ΑΚΨ επανεμφανίζεται σε απόσταση 15 χαρακτήρων, ενώ το ΗΗΙ σε απόσταση 5 χαρακτήρων. Άρα, πιθανά μήκη κλειδιού ως προς την επανεμφάνιση του ΑΚΨ είναι τα 3,5,15 (οι διαιρέτες του 15), ενώωςπροςτο ΗΗΙ είναι 5 (μια που το 5 δεν έχει διαιρέτες). Άρα, το πιο πιθανό μήκος κλειδιού είναι το 5 («ικανοποιεί» και την επανεμφάνιση του ΑΚΨ και την επανεμφάνιση του HHI). Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 17

Αλγόριθμοι μετάθεσης «Ανακάτωμα» των bits ή των χαρακτήρων του μηνύματος, με βάση κάποια συνάρτηση 1-1 και επί πάνω στο αλφάβητο (συνάρτηση αναδιάταξης). (Η συνάρτηση αυτή αποτελεί και το κλειδί) INFORMATION TECHNIQUES FOR IPR I R I T N E R N O M T O E H I U S O I R F A N C Q F P IRITNERNOMTOEHIUSOIRFANCQFP Επίσης όχι ασφαλείς. Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 18

Το κλειδί στους αλγορίθμους μετάθεσης Αλλάζουνε οι θέσεις των γραμμάτων του μηνύματος, με βάση κάποια αναδιάταξη που ορίζεται από το κλειδί. Παράδειγμα: έστω η λέξη ΜΑΘΗΜΑ και κλειδί το [421653]. Αυτό σημαίνει ότι το τέταρτο γράμμα θα γίνει 1 ο, το δεύτερο θα παραμείνει δεύτερο, το πρώτο θα γίνει 3 ο κ.ο.κ. Άρα, το κρυπτόγραμμα θα είναι ΗΑΜΑΜΘ. Για μήνυμα μήκους N, όλα τα πιθανά κλειδιά είναι N! (όσες δηλαδή και οι αναδιατάξεις N στοιχείων). Κώστας Λιμνιώτης Εργαστηριακό μάθημα 1 19