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

Σχετικά έγγραφα
ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

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

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

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

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

3 ΟΙ ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΟΙ ΙΔΙΟΤΗΤΕΣ ΤΟΥΣ

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

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

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

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

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

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

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

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

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

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

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

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

Κρυπτογραφία. Ψευδοτυχαιότητα - Κρυπτοσυστήματα ροής. Άρης Παγουρτζής - Πέτρος Ποτίκας

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

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

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

Κρυπτογραφία. Ψευδοτυχαιότητα - Κρυπτοσυστήματα ροής. Άρης Παγουρτζής - Πέτρος Ποτίκας

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

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

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

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

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

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

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

Κρυπτογραφία. Ψευδοτυχαιότητα - Κρυπτοσυστήματα ροής. Άρης Παγουρτζής - Πέτρος Ποτίκας

Επισκόπηση Κρυπτογραφίας: privacy. Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία. Επισκόπηση Κρυπτογραφίας: authentication, integrity

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

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

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

Κρυπτογραφία. Ψευδοτυχαιότητα - Κρυπτοσυστήματα ροής. Άρης Παγουρτζής - Πέτρος Ποτίκας

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ

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

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

Κρυπτογραφία. Κρυπτοσυστήματα ροής. Πέτρος Ποτίκας. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

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

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

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

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

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

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

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

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

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

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

Υπολογιστική Κρυπτογραφία

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

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

Υπολογιστική Κρυπτογραφία

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

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

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

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

Υπολογιστική Κρυπτογραφία

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

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

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

Κεφάλαιο 6. Κρυπταλγόριθμοι Ροής. 6.1 Εισαγωγή. Πίνακας Περιεχομένων

Διπλωματική Εργασία. Τίτλος:

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

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

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

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

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

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

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

Δ4. Θεωρία Πληροφορίας, Εντροπία και Πολυπλοκότητα. Κρυπτογραφία

UP class. & DES και AES

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

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

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

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

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

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

Symmetric Cryptography. Dimitris Mitropoulos

Π Ο Λ Ι Τ Ι Κ Α Κ Α Ι Σ Τ Ρ Α Τ Ι Ω Τ Ι Κ Α Γ Ε Γ Ο Ν Ο Τ Α

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

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

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

Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία

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

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

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

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

Ψευδο-τυχαιότητα. Αριθµοί και String. Μονόδροµες Συναρτήσεις 30/05/2013

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

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

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

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

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

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

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

Μελέτη και υλοποίηση σε γλώσσα C++ του κρυπτογραφικού αλγορίθμου AES

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

Transcript:

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Οι Αλγόριθμοι Κρυπτογραφίας και οι Ιδιότητές τους Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο 2018

ΠΕΡΙΕΧΟΜΕΝΑ Αρχές Μέτρησης Κρυπτογραφικής Δύναμης Επιθέσεις σε ένα κρυπτοσύστημα Τα μέτρα του Shannon Μοντέλα αξιολόγησης ασφάλειας Κρυπταλγόριθμοι Ροής και Τμήματος Κατηγορίες Κρυπτογραφικών Πράξεων

ΠΕΡΙΣΣΕΙΑ ΓΛΩΣΣΑΣ Ο απόλυτος ρυθμός (Absolute rate) μιας γλώσσας ονομάζεται η ποσότητα όπου n είναι το πλήθος των γραμμάτων του αλφαβήτου. Το ελληνικό αλφάβητο αποτελείται από 24 γράμματα. Ο ελάχιστος αριθμός των bits που απαιτούνται για να αναπαραστήσουμε τα 24 γράμματα είναι Ο αριθμός μηνυμάτων μήκους m γραμμάτων είναι 2 Am Ο αριθμός των έγκυρων μηνυμάτων ( R ) μήκους m γραμμάτων είναι 2 Rm Ως Περίσσεια (Redundancy) μιας γλώσσας εννοούμε το ποσοστό των συνδυασμών των γραμμάτων της γλώσσας αυτής που δεν οδηγούν σε μηνύματα τα οποία ανήκουν στη γλώσσα αυτή. Σε bits είναι ίση με D=A-R.

UNICITY DISTANCE Unicity Distance ονομάζεται η ποσότητα του κρυπτοκειμένου που απαιτείται για την ανάκτηση του απλού κειμένου. Θα πρέπει να θυμόμαστε ότι όσο μικρότερη είναι η περίσσεια της γλώσσας τόσο περισσότερο κρυπτοκείμενο απαιτείται για να εντοπιστεί το κλειδί

ΜΟΝΤΕΛΑ ΑΞΙΟΛΟΓΗΣΗΣ ΑΣΦΑΛΕΙΑΣ Ασφάλεια άνευ όρων (Unconditionally secure): Ένα σύστημα είναι άνευ όρων είναι ασφαλές όταν το κρυπτοκείμενο δεν δίνει καμιά πληροφορία στον αντίπαλο σχετικά με το απλό κείμενο. Υπολογιστική ασφάλεια (Computationally secure): Ένα κρυπτοσύστημα είναι υπολογιστικά ασφαλές όταν προκειμένου να το παραβιάσει ο αντίπαλος απαιτείται υπολογιστική ισχύ πέραν των δυνατοτήτων του. Χρησιμοποιεί την εξαντλητική αναζήτηση (Exhaustive search) όπου ο αντίπαλος δοκιμάζει ένα προς ένα τα κλειδιά έως ότου ανακαλύψει το σωστό. Ο αναμενόμενος χρόνος ανακάλυψης του σωστού κλειδιού είναι ανάλογος του μισού του συνολικού αριθμού του κλειδιού. Ασφάλεια θεωρητικής πολυπλοκότητας (Complexity theoretic): Θεωρείται ότι ο αντίπαλος μπορεί να πραγματοποιήσει επίθεση στο κρυπτοσύστημα η οποία απαιτεί πολυωνυμική υπολογιστική ισχύ. Δηλαδή, οι παράμετροι ασφάλειας του κρυπτοσυστήματος μπορούν να εκφραστούν πολυωνυμικά ως προς το χρόνο και το χώρο. Αποδείξιμη ασφάλεια (Provable security): Ένα κρυπτοσύστημα είναι αποδείξιμα ασφαλές όταν μπορούμε να αποδείξουμε ότι η ασφάλεια του είναι ισοδύναμη κάποιου γνωστού και καλά μελετημένου προβλήματος που θεωρείται «δύσκολο».

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (1/6) Επίθεση στο κρυπτοκείμενο (Ciphertextonly attack): Ο αντίπαλος έχει πρόσβαση μόνο σε ορισμένα τμήματα του κρυπτοκειμένου και ο σκοπός του είναι να αποκρυπτογραφήσει το κρυπτοκείμενο αυτό, ή να ανακαλύψει το αντίστοιχο κλειδί

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (2/6) Επίθεση με γνωστό απλό κείμενο (Known-plaintext attack): Ο αντίπαλος γνωρίζει αντιστοιχίες κρυπτοκειμένου με απλό κείμενο και ο σκοπός του είναι η ανακάλυψη του αντίστοιχου κλειδιού

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (3/6) Επίθεση με επιλεγμένο απλό κείμενο (Chosen-plaintext attack): Ο αντίπαλος έχει τη δυνατότητα πρόσβασης στο κρυπτοσύστημα όπου δεν γνωρίζει το κλειδί και μπορεί να ζητά την κρυπτογράφηση μηνυμάτων. Με αυτό τον τρόπο μπορεί να ανακαλύψει την αντιστοιχία του απλού κειμένου με το άγνωστο κρυπτοκείμενο

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (4/6) Επίθεση προσαρμόσιμου επιλεγμένου απλού κειμένου (Adaptive chosen-plaintext attack): Ο αντίπαλος πραγματοποιεί επίθεση με επιλεγμένο απλό κείμενο. Επιπλέον εφαρμόζει μεθοδολογία σύμφωνα με την οποία η επόμενη επιλογή του απλού κειμένου εξαρτάται από τις προηγούμενες, προκειμένου να ανακαλύψει γρηγορότερα το κλειδί από μια εξαντλητική αναζήτηση (Exhaustive search)

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (5/6) Επίθεση με επιλεγμένο κρυπτοκείμενο (Chosen-ciphertext attack): Ο αντίπαλος έχει πρόσβαση στον αλγόριθμο αποκρυπτογράφησης. Ο σκοπός του είναι να ανακαλύψει το κλειδί αποκρυπτογράφησης ώστε στο μέλλον να αποκρυπτογραφεί τα νέα κρυπτοκείμενα όταν δεν θα έχει πρόσβαση στον αλγόριθμο αποκρυπτογράφησης

ΕΠΙΘΕΣΕΙΣ ΣΕ ΕΝΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑ (6/6) Επίθεση προσαρμόσιμου επιλεγμένου κρυπτοκειμένου (Adaptive chosenciphertext attack): Η επίθεση αυτή είναι αντίστοιχη του προσαρμόσιμου επιλεγμένου απλού κειμένου με την διαφορά ότι ο αντίπαλος έχει πρόσβαση στον αλγόριθμο αποκρυπτογράφησης

ΕΞΑΝΤΛΗΤΙΚΗ ΑΝΑΖΗΤΗΣΗ

ΣΥΓΧΥΧΗ και ΔΙΑΧΥΣΗ Σύγχυση (Confusion) είναι η ικανότητα του αλγορίθμου κρυπτογράφησης όπου ο αντίπαλος δεν είναι σε θέση να προβλέψει ποιες μεταβολές θα συμβούν στο κρυπτοκείμενο, δεδομένης μιας μεταβολής στο απλό κείμενο Δηλαδή ένας αλγόριθμος έχει υψηλή σύγχυση όταν οι σχέσεις μεταξύ του απλού κειμένου και του κρυπτοκειμένου είναι αρκετά πολύπλοκες, ώστε να χρειάζεται ο αντίπαλος να ξοδέψει σημαντικό χρόνο προκειμένου να τις προσδιορίσει Διάχυση (Diffusion) είναι η ικανότητα του αλγορίθμου κρυπτογράφησης όπου ένα τμήμα του απλού κειμένου έχει την ευκαιρία να επηρεάζει όσο το δυνατόν περισσότερα τμήματα του κρυπτοκειμένου Ένας αλγόριθμος έχει υψηλή διάχυση όταν ένα στοιχειώδεις τμήμα του απλού κειμένου έχει την δυνατότητα να επηρεάσει όλα τα τμήματα του κρυπτοκειμένου, ανεξάρτητα της τοποθεσίας του τμήματος αυτού στο απλό κείμενο

ΟΡΟΛΟΓΙΑ Έστω F είναι το σύνολο των συμβόλων που απαρτίζουν το απλό κείμενο P, δηλαδή P=[p 1 p 2...] όπου p i F για i=1, 2,...Όμοια έστω G το σύνολο των συμβόλων που απαρτίζουν το κτυπτοκείμενο C, όπου C=[c 1 c 2...], με c i G για i=1, 2,... Τότε το σύνολο όλων των δυνατών απλών κειμένων ονομάζεται χώρος των απλών κειμένων και συμβολίζεται με F* ενώ το σύνολο όλων των δυνατών κρυπτοκειμένων ονομάζεται χώρος των κρυπτοκειμένων και συμβολίζεται με G*. Κατά αντιστοιχία ορίζουμε σαν F n το σύνολο των απλών κειμένων μήκους n, και σαν G m το σύνολο των κρυπτοκειμένων μήκους m.

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΙ ΡΟΗΣ Απλό Κείμενο Κλειδί Γεννήτρια κλειδοροής k 1 k 2 k 3... Κρυπτοκείμενο p 1 p 2 p 3... c 1 c 2 c 3... Κλειδί Γεννήτρια κλειδοροής k 1 k 2 k 3... p 1 p 2 p 3... Απλό Κείμενο Οι κρυπταλγόριθμοι ροής (stream ciphers) ενεργούν σε ένα σύμβολο (bit) απλού κειμένου Βασικό συστατικό του κρυπταλγορίθμου ροής είναι η γεννήτρια της κλειδοροής Η κλειδοροή (keystream) είναι μια περιοδική ακολουθία κλειδιών Η γεννήτρια κλειδοροής θα πρέπει να παράγει την ίδια ακολουθία σε δύο διαφορετικές τοποθεσίες την ίδια χρονική στιγμή

ΒΑΣΙΣΜΕΝΟΙ ΣΕ LFSRs (Ι) Γεννήτρια Geffe Το κλειδί της γεννήτριας αποτελείται από τα τρία επιμέρους κλειδιά των LFSRs LFSR-1 LFSR-2 Πολυπλέκτης 2 σε 1 Κλειδοροή k(t) LFSR-3

ΒΑΣΙΣΜΕΝΟΙ ΣΕ LFSRs (ΙΙ) Γεννήτρια εναλλασσόμενου βήματος C(t) LFSR-1 Κλειδοροή k(t) LFSR-c LFSR-2

ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΜΕΙΟΝΕΚΤΗΜΑΤΑ Πλεονέκτημα: Μεγάλη ταχύτητα κρυπτογράφησης. Το κάθε σύμβολο του απλού κειμένου δεν εξαρτάται από τα υπόλοιπα και μπορεί όταν κρυπτογραφηθεί και να σταλεί την στιγμή που θα εισαχθεί στο κρυπτοσύστημα Μειονέκτημα: Ο συγχρονισμός των δύο γεννητριών κλειδοροής. Ένας αντίπαλος μπορεί να αποσυγχρονίσει το κρυπτοσύστημα παρεμβάλλοντας επιπλέον σύμβολα στο κρυπτοκείμενο, οπότε η αποκρυπτογράφηση θα οδηγεί σε απλό κείμενο διαφορετικό από το αρχικό

O RC4 ΑΛΓΟΡΙΘΜΟΣ ΡΟΗΣ Αποτελείται από δύο πίνακες, τον S[0,1,.., 255] και τον T[0,1,.., 255] Κάθε στοιχείο των πινάκων είναι 1 byte Γίνεται η αρχικοποίηση S[i]=i για 0<=i<=255 και T[i]=K[i mod k] για 0<=i<=255 με K[j] το j-οστο byte του κλειδιού και k το μέγεθος του κλειδιού Αντιμετάθεση των στοιχείων του πίνακα S με τον πίνακα του κλειδιού Τ j 0: αρχική τιμή j j+s[i]+t[i] mod 256 και S[i] S[j] για 0<=i<=255

O RC4 ΑΛΓΟΡΙΘΜΟΣ ΡΟΗΣ H κλειδοροή παράγεται από την παρακάτω διαδικασία ς φορ θεση αντιµετ έ n t S k j S i S t j S i S ά i S j j i i j i = + + + ] [ ]mod 256 [ ] [ ] [ ] [ : ]mod 256 [ 1mod 256 0 0,

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΙ ΤΜΗΜΑΤΟΣ Απλό Κείμενο Κρυπτοκείμενο m m Κλειδί n Aλγόριθμος Τμήματος Κλειδί n Aλγόριθμος Τμήματος m m Κρυπτοκείμενο Απλό Κείμενο Οι κρυπταλγόριθμοι τμήματος (block ciphers) ενεργούν σε μια ομάδα συμβόλων απλού κειμένου και παράγουν μια ομάδα συμβόλων κρυπτοκειμένου. Το απλό κείμενο έχει συνήθως αρκετά μεγάλο μήκος, χωρίζεται σε τμήματα όπου το κάθε τμήμα είναι η ομάδα που θα διοχετευθεί στον αλγόριθμο κρυπτογράφησης Το μήκος του τμήματος είναι σταθερό και συγκεκριμένο (m). Οπότε υπάρχει το ενδεχόμενο το τελευταίο τμήμα του απλού κειμένου να συμπληρωθεί από μηδενικά ώστε να έχει το απαιτούμενο μήκος

ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΜΕΙΟΝΕΚΤΗΜΑΤΑ Πλεονέκτημα: Έχουν υψηλή διάχυση λόγω του ομαδικού χειρισμού των συμβόλων του απλού κειμένου κατά την κρυπτογράφηση Ο αντίπαλος δεν μπορεί να παρεμβάλει επιπλέον σύμβολα στο κρυπτοκείμενο Μειονέκτημα: Πολύπλοκη η υλοποίησή τους.

ΜΕΓΙΣΤΗ ΔΙΑΧΥΣΗ και ΣΥΓΧΥΣΗ ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΥ ΤΜΗΜΑΤΟΣ Έστω το κρυπτοσύστημα F (n) G (n) με F=G={0, 1} με κλειδοχώρο Κ και Ε, D που ορίζονται από κρυπταλγόριθμο τμήματος μήκους n-bit. Έστω P=[p 1 p 2...p n ] το τμήμα του απλού κειμένου και C=[c 1 c 2...c n ] το αντίστοιχο τμήμα του κρυπτοκειμένου. Για να υπάρχει μέγιστη διάχυση θα πρέπει να υπάρχει σχέση μεταξύ του κάθε συμβόλου του απλού κειμένου με όλα τα σύμβολα του κρυπτοκειμένου για οποιαδήποτε κλειδί. Για να υπάρχει μέγιστη σύγχυση θα πρέπει η πιθανότητα αντιστροφής ενός συμβόλου του κρυπτοκειμένου c i να είναι 0,5 εφόσον υπάρξει αντιστροφή του συμβόλου p j για όλα τα i, j.

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΙ ΡΟΗΣ με ΧΡΗΣΗ ΚΡΥΠΤΑΛΓΟΡΙΘΜΩΝ ΤΜΗΜΑΤΟΣ (1/2) Κλειδί Aλγόριθμος Τμήματος c 1 c 2 c 3... Επιλογή συμβόλου c i Απλό Κείμενο Κρυπτοκείμενο Εκμεταλλευόμαστε την υψηλή διάχυση και σύγχυση των κρυπταλγορίθμων τμήματος Κρυπτογράφηση ενός αρχικού απλού κειμένου, π.χ το [000...0]. Ανατροφοδότηση του κρυπτοκειμένου σαν απλό κείμενο Επιλογή του π.χ. πρώτου συμβόλου του κρυπτοκειμένου

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΙ ΡΟΗΣ με ΧΡΗΣΗ ΚΡΥΠΤΑΛΓΟΡΙΘΜΩΝ ΤΜΗΜΑΤΟΣ (2/2) Καταχωρητής Ολίσθησης n Καταχωρητής Ολίσθησης n Κλειδί Aλγόριθμος Τμήματος Κλειδί Aλγόριθμος Τμήματος c 1 c 2 c 3... c 1 c 2 c 3... Επιλογή συμβόλου c i Επιλογή συμβόλου c i Απλό Κείμενο Κρυπτοκείμενο Απλό Κείμενο Αυτοσυγχρονιζόμενος (Self-synchronizing) αλγόριθμος ροής Στην περίπτωση που υπάρξει κάποιο σφάλμα ή αυθαίρετη εισαγωγή κρυπτοκειμένου κατά την μετάδοση, η διαδικασία αποκρυπτογράφησης θα επανέλθει στη σωστή λειτουργία μετά από n αποκρυπτογραφήσεις από το τελευταίο σφάλμα.

QUIZ Mosquito: Selfsynchronizing stream cipher Moustique: Selfsynchronizing stream cipher

ΚΡΥΠΤΟΓΡΑΦΙΚΕΣ ΠΡΑΞΕΙΣ Αναδιάταξη (Transposition): Επιδρά αποκλειστικά στη θέση των συμβόλων του απλού κειμένου Αντικατάσταση (Substitution): Επιδρά στα σύμβολα του απλού κειμένου Μονοαλφαβητική Αντικατάσταση Πολυαλφαβητική Αντικατάσταση Κωδικοποιητής από n σε 2 n Αποκωδικοποιητής από 2 n σε n

ΑΝΑΔΙΑΤΑΞΗ Στην αναδιάταξη ισχύει F=G, δηλαδή τα σύμβολα του κρυπτοκειμένου είναι ίδια με τα σύμβολα του απλού κειμένου αφού η κρυπτογράφηση αναδιάταξης επιδρά μόνο στις θέσεις των συμβόλων του απλού κειμένου Παράδειγμα: Έστω τα σύνολα του απλού κειμένου και του κρυπτοκειμένου, F=G={α, β, γ, δ, ε, ζ, η, θ, ι, κ, λ, μ, ν, ξ, ο, π, ρ, σ, τ, υ, φ, χ, ψ, ω} Έστω το απλό κείμενο [αλλαγη] Έστω το κλειδί [261453]. Αυτό σημαίνει ότι το πρώτο γράμμα του απλού κειμένου θα εμφανιστεί στη δεύτερη θέση, το δεύτερο γράμμα στη έκτη, κ.ο.κ. Η κρυπτογράφηση του απλού κειμένου θα δώσει [λαηαγλ] Το κρυπτοκείμενο είναι αναγραμματισμός του απλού κειμένου

ΜΟΝΟΑΛΦΑΒΗΤΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ Μονοαλφαβητική αντικατάσταση είναι η κρυπτογραφική πράξη e i : F (n) G (m), όπου η e i παραμένει σταθερή σε όλη τη διάρκεια της κρυπτογραφηση ενός απλού κειμένου. Στην περίπτωση που έχουμε F (1) G ονομάζεται απλή αντικατάσταση όπου η κρυπτογραφική πράξη αντιστοιχίζει ένα σύμβολο του απλού κειμένου σε ένα σύμβολο του κρυπτοκειμένου. Κρυπταλγόριθμος μετατόπισης του Καίσαρα (The Shift (Caesar) Cipher) Γραμμικός Κρυπταλγόριθμος (The Affine Cipher)

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΣ ΜΕΤΑΤΟΠΙΣΗΣ του ΚΑΙΣΑΡΑ Ο κρυπταλγόριθμος μετατόπισης ορίζει το κρυπτοσύστημα F=G=K=Z n και με e k E, d k D, τέτοια ώστε c= e k (p)=p+k mod n και p= d k (c)=c-k mod n, για p F, c G και k K. Στο ελληνικό αλφάβητο έχουμε n=24 με α,α=0, β,β=1,...,ω,ω=23

ΓΡΑΜΜΙΚΟΣ ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΣ Ο γραμμικός κρυπταλγόριθμος ορίζει το κρυπτοσύστημα F=G=K=Z n, Κ={(a, b) Z n xz n : gcd(a, n)=1} και με e k E, d k D, τέτοια ώστε c= e k (p)=ap+b mod n και p= d k (c)=a -1 (c-b) mod n, για p F, c G και k = (α, β) K. Για a=1 ο αλγόριθμος εκφυλίζεται στην περίπτωση του κρυπταλγορίθμου μετατόπισης.

ΠΟΛΥΑΛΦΑΒΗΤΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ Πολυαλφαβητική αντικατάσταση είναι η κρυπτογραφική πράξη e i : F (n) G (m), όπου το i παίρνει τουλάχιστον δύο διαφορετικές τιμές κατά την κρυπτογραφηση ενός απλού κειμένου. Σύνολο Αλφαβήτων V (m) Σύνολο Αλφαβήτων W (n) Σύνολο Αλφαβήτων V (m) Σύνολο Αλφαβήτων W (n) p 1 c 1 p 1 c 1 p 2 e k1 c 2 p 2 e k c 2 p 3 e k2 c 3 p 3 c 3.. e k3...... Απλό Κείμενο Κρυπτοκείμενο Απλό Κείμενο Κρυπτοκείμενο Πολυαλφαβητική Αντικατάσταση Μονοαλφαβητική Αντικατάσταση Κρυπταλγόριθμος Vigenere Κρυπταλγόριθμος του Hill

ΚΡΥΠΤΑΛΓΟΡΙΘΜΟΣ VIGENERE Ο κρυπταλγόριθμος Vigerere ορίζει το κρυπτοσύστημα F=G=K=Z n1 και με e k E 1, d k D 1 τέτοια ώστε c=e k (p)=(e k1 (p 1 ), e k2 (p 2 ),..., e kl (p l )) και p=d k (c)=(d k1 (c 1 ), d k2 (c 2 ),..., d kl (d l )) για p F, c G και k=(k 1, k 2,...k l ) K και όπου e k (p)=p+k mod n και d k (p)=p-k mod n Η κρυπτογραφική πράξη e k είναι αυτή του κρυπταλγορίθμου μετάθεσης. Η ποσότητα l προσδιορίζει το μήκος του κλειδιού καθώς και τον αριθμό των αλφάβητων που συμμετέχουν στην κρυπτογράφηση. Αν l=1 τότε εκφυλίζεται στο μονοαλφαβητικό κρυπταλγόριθμο μετάθεσης.

ΚΡΥΠΤΟΓΡΑΦΗΣΗ ΓΙΝΟΜΕΝΟΥ Περιγράφει την σύνθεση δύο η περισσοτέρων κρυπτογραφικών πράξεων για την δημιουργία ενός κρυπταλγορίθμου ο οποίος είναι κρυπτογραφικά δυνατότερος από τις δύο πράξεις. Έχει σαν αποτέλεσμα την σημαντική ενίσχυση των χαρακτηριστικών της σύγχυσης και της διάχυσης. Κρυπτογραφικό γινόμενο μπορεί να προκύψει και από ένα μόνο κρυπτοσύστημα όταν το απλό κείμενο κρυπτογραφείται και το αποτέλεσμα (κρυπτοκείμενο) επανακρυπτογραφείται με την ίδια πράξη. Σε αυτή την περίπτωση δεν θα πρέπει το κρυπτοσύστημα να αποτελεί ομάδα. Ένα κρυπτοσύστημα {F, G, E, D, K} αποτελεί ομάδα όταν: Υπάρχει κλειδί k K τέτοιο ώστε: e k (p)=e k1 (e k2 (p)), για κάθε k 1, k 2 K.

ΓΥΡΟΣ ΚΡΥΠΤΟΓΡΑΦΗΣΗΣ / ΓΕΝΝΗΤΡΙΑ ΚΛΕΙΔΙΩΝ Ένα κρυπτοσύστημα γινομένου του οποίου η πράξη κρυπτογράφησης επαναλαμβάνεται στη σειρά t φορές, λέμε ότι αποτελείται από t γύρους κρυπτογράφησης Σε κάθε γύρο κρυπτογράφησης το κλειδί είναι διαφορετικό. Η ακολουθία των κλειδιών {k 1, k 2,..., k 3 } ονομάζεται «πρόγραμμα» κλειδιών (key schedule) Η γεννήτρια προγράμματος κλειδιού (key schedule generator) αντιστοιχεί ένα κλειδί k K στο σύνολο των κλειδιών του γινομένου: s k :K K t. Ουσιαστικά παράγει το πρόγραμμα κλειδιού από το αρχικό κλειδί.