Το έργο υλοποιείται στο πλαίσιο του υποέργου 2 με τίτλο «Ανάπτυξη έντυπου εκπαιδευτικού υλικού για τα νέα Προγράμματα Σπουδών» της Πράξης «Ελληνικό Ανοικτό Πανεπιστήμιο», η οποία έχει ενταχθεί στο Επιχειρησιακό Πρόγραμμα «Εκπαίδευση και Διά Βίου Μάθηση» (ΕΠΕΔΒΜ) του ΕΣΠΑ (2007-2013), Άξονας Προτεραιότητας 7: «Ενίσχυση της Διά Βίου Εκπαίδευσης Ενηλίκων στις 8 Περιφέρειες Σύγκλισης» με κωδικό MIS 296121 και η οποία συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο ΕΚΤ) και από εθνικούς πόρους, μέσω του Προγράμματος Δημοσίων Επενδύσεων (ΠΔΕ) του Υ.ΠΑΙ.Θ. Κρυπτογραφία και Ασφάλεια Δικτύων Σημείωση Το ΕΑΠ είναι υπεύθυνο για την επιμέλεια έκδοσης και την ανάπτυξη των κειμένων σύμφωνα με τη Μεθοδολογία της εξ Αποστάσεως Εκπαίδευσης. Για την επιστημονική αρτιότητα και πληρότητα των συγγραμμάτων την αποκλειστική ευθύνη φέρουν οι συγγραφείς, κριτικοί αναγνώστες και ακαδη μα ϊ κοί υπεύθυνοι που ανέλαβαν το έργο αυτό.
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Σχολή Θετικών Επιστημών και Τεχνολογίας Πρόγραμμα Σπουδών ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΞΕΙΔΙΚΕΥΣΗ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΉΜΑΤΑ ΣΥΣΤΗΜΑΤΑ Θεματική Ενότητα ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΛΟΓΙΣΜΙΚΟΥ Τόμος Γ Κρυπτογραφία και Ασφάλεια Δικτύων Συγγραφή ΕΜΜΑΝΟΥΗΛ ΜΑΓΚΟΣ Επίκουρος Καθηγητής Ιονίου Πανεπιστημίου Κριτική Ανάγνωση ΠΑΝΑΓΙΩΤΗΣ ΝΑΣΤΟΥ Επίκουρος Καθηγητής Πανεπιστημίου Αιγαίου Ακαδημαϊκός Υπεύθυνος για την ανάπτυξη του έντυπου διδακτικού υλικού του Π.Σ. ΒΑΣΙΛΕΙΟΣ ΒΕΡΥΚΙΟΣ Καθηγητής Ελληνικού Ανοικτού Πανεπιστημίου Συντονιστής για την ανάπτυξη του έντυπου διδακτικού υλικού της Θ.Ε. ΕΥΣΤΑΘΙΟΣ ΧΑΤΖΗΕΥΘΥΜΙΑΔΗΣ Αναπληρωτής Καθηγητής Εθνικού και Καποδιστριακού Πανεπιστημίου Αθηνών Ειδικός στη Μεθοδολογία της Ανοικτής και εξ Αποστάσεως Εκπαίδευσης ΑΔΑΜΑΝΤΙΑ ΣΠΑΝΑΚΑ Γλωσσική Επιμέλεια ΦΩΤΕΙΝΗ ΣΟΥΛΙΩΤΗ Τεχνική Επιμέλεια Καλλιτεχνική Επιμέλεια Σελιδοποίηση ΙΩΑΝΝΗΣ ΚΑΛΕΜΗΣ ISBN: 978-960-611-005-4 Κωδικός Έκδοσης: ΠΛΣ 62/Γ Copyright 2016 για την Ελλάδα και όλο τον κόσμο ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Πάροδος Αριστοτέλους 18, 26335 Περιβόλα Πατρών Τηλ.: 2610 367300, Φαξ: 2610 367650 To παρόν έργο πνευματικής ιδιοκτησίας προστατεύεται κατά τις διατάξεις του Ελληνικού Νόμου (Ν. 2121/1993 όπως έχει τροποποιηθεί και ισχύει σήμερα) και τις διεθνείς συμβάσεις περί πνευματικής ιδιοκτησίας. Απαγορεύεται απολύτως η άνευ γραπτής αδείας του εκδότη, κατά οποιονδήποτε τρόπο ή μέσο, αντιγραφή, φωτοανατύπωση και εν γένει αναπαραγωγή, εκμίσθωση ή δανεισμός, μετάφραση, διασκευή, αναμετάδοση στο κοινό σε οποιαδήποτε μορφή (ηλεκτρονική, μηχανική κ.λπ.) και η εν γένει εκμετάλλευση του συνόλου ή μέρους του έργου.
Σχολή Θετικών Επιστημών και Τεχνολογίας Πρόγραμμα Σπουδών ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΞΕΙΔΙΚΕΥΣΗ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Θεματική Ενότητα ΕΞΕΙΔΙΚΕΥΣΕΙΣ ΔΙΚΤΥΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ Τόμος Γ Κρυπτογραφία και Ασφάλεια Δικτύων ΕΜΜΑΝΟΥΗΛ ΜΑΓΚΟΣ Επίκουρος Καθηγητής Ιονίου Πανεπιστημίου ΠΑΤΡΑ 2016
Βιογραφικό Ο Εμμανουήλ Μάγκος είναι Επίκουρος Καθηγητής στο Τμήμα Πληροφορικής του Ιονίου Πανεπιστημίου, στο γνωστικό αντικείμενο «Κρυπτογραφία και Ασφάλεια Υπολογιστικών Συστημάτων». Είναι κάτοχος πτυχίου Πληροφορικής από το Τμήμα Πληροφορικής του Πανεπιστημίου Πειραιώς (1997), καθώς και κάτοχος διδακτορικού διπλώματος (2003) από το ίδιο τμήμα. Από το 2001 έως το 2007 διετέλεσε καθηγητής πληροφορικής στη Δευτεροβάθμια Εκπαίδευση. Από το 2003 έως το 2007 δίδαξε στο Τμήμα Αρχειονομίας Βιβλιοθηκονομίας του Ιονίου Πανεπιστημίου, ενώ από το 2005 διδάσκει στο Τμήμα Πληροφορικής του Ιονίου Πανεπιστημίου. Τα τρέχοντα ερευνητικά του ενδιαφέροντα επικεντρώνονται στη χρήση κρυπτογραφικών τεχνικών για την ασφάλεια Η/Υ και δικτύων, καθώς και για την ασφάλεια και ιδιωτικότητα στο Διαδίκτυο.
Περιεχόμενα ΚΕΦΑΛΑΙΟ 1 Εισαγωγή και κλασικά κρυπτοσυστήματα Εισαγωγικές Παρατηρήσεις...15 1.1 Ασφάλεια πληροφοριών και δικτύων...18 1.1.1 Υπηρεσίες και στόχοι ασφάλειας...18 1.1.2 Κρυπτοσύστημα: μια «κλασική» θεώρηση...24 1.1.3 Κλασική κρυπτογραφία...26 1.2 Μονοαλφαβητικοί Αλγόριθμοι Αντικατάστασης...28 1.2.1 Ο Αλγόριθμος Ολίσθησης...28 1.2.2 Ο Γενικευμένος Αλγόριθμος Αντικατάστασης...36 1.2.3 Ο Αλγόριθμος Affine...40 1.3 Πολυαλφαβητικοί Αλγόριθμοι Αντικατάστασης...46 1.3.1 Ο Αλγόριθμος Vigenere...46 1.3.2 Ο Αλγόριθμος Hill...52 1.4 Αλγόριθμοι Αναδιάταξης...58 1.4.1 Ο Αλγόριθμος Μετάθεσης...58 Σύνοψη...62 Λίστα Ελέγχου Γνώσεων...63 Ευρετήριο Όρων...64 Βιβλιογραφία...66 Οδηγός για Περαιτέρω Μελέτη...68 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...72 Απαντήσεις Δραστηριοτήτων...78 Κατάλογος σχημάτων...82 Κατάλογος πινάκων...83
8 ΚΡΥΠΤΟΓΡΑΦΙ Α ΚΑΙ ΑΣΦΑ ΛΕΙΑ ΔΙΚΤΥ ΩΝ ΚΕΦΑΛΑΙΟ 2 Απόλυτη και πρακτική ασφάλεια Εισαγωγικές Παρατηρήσεις...85 2.1 Απόλυτη ασφάλεια κρυπτοσυστήματος...87 2.1.1 Ορισμοί απόλυτης ασφάλειας...87 2.1.2 Ο Αλγόριθμος «Σημειωματάριο Μιας Χρήσης» (One-Time Pad)...91 2.1.3 Το Θεώρημα Shannon...93 2.1.4 Προβλήματα στην εφαρμογή της απόλυτης ασφάλειας...95 2.2 Υπολογιστική ασφάλεια...97 2.2.1 Πολυωνυμικοί εχθροί...97 2.2.2 Υπολογιστική ασφάλεια: παραδοχές και ελάχιστες απαιτήσεις...100 2.2.3 Υπολογιστική ασφάλεια: δύσκολα προβλήματα...103 2.3 Εντροπία και ασφάλεια κρυπτοσυστήματος...105 2.3.1 Η εντροπία ως ποσότητα πληροφορίας και αβεβαιότητας...105 2.3.2 Εντροπία κρυπτοσυστήματος...107 2.3.3 Πλεονασμός φυσικής γλώσσας και απόσταση μοναδικότητας...110 Σύνοψη...114 Λίστα Ελέγχου Γνώσεων...115 Ευρετήριο Όρων...116 Βιβλιογραφία...117 Οδηγός για Περαιτέρω Μελέτη...119 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...120 Απαντήσεις Δραστηριοτήτων...124 Κατάλογος σχημάτων...126
ΠΕΡΙΕΧΟΜΕΝΑ 9 ΚΕΦΑΛΑΙΟ 3 Μαθηματικά προαπαιτούμενα Εισαγωγικές Παρατηρήσεις...127 3.1 Διαιρετότητα...130 3.1.1 Πρώτοι και σύνθετοι αριθμοί...131 3.1.2 Μέγιστος Κοινός Διαιρέτης...133 3.1.3 Αλγόριθμος Ευκλείδη...135 3.1.4 Επεκταμένος Αλγόριθμος Ευκλείδη...138 3.2 Αριθμητική ακεραίων Modulo...140 3.2.1 Εισαγωγικά...140 3.2.2 Ισότιμοι αριθμοί και κλάσεις ισοτιμίας...142 3.2.3 Εύρεση πολλαπλασιαστικού αντιστρόφου στο Z n...148 3.2.4 Υπολογισμός δυνάμεων ακεραίων στο Z n...151 3.2.5 Τα σύνολα Z * και n Z*...155 p 3.2.6 Κινεζικό Θεώρημα Υπολοίπων...169 3.2.7 Τετραγωνικά υπόλοιπα modulo...175 3.2.8 Αφηρημένες αλγεβρικές δομές...187 Σύνοψη...191 Λίστα Ελέγχου Γνώσεων...192 Ευρετήριο Όρων...193 Βιβλιογραφία...195 Οδηγός για Περαιτέρω Μελέτη...197 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...198 Απαντήσεις Δραστηριοτήτων...204 Κατάλογος σχημάτων...209
10 ΚΡΥΠΤΟΓΡΑΦΙ Α ΚΑΙ ΑΣΦΑ ΛΕΙΑ ΔΙΚΤΥ ΩΝ ΚΕΦΑΛΑΙΟ 4 Συμμετρικά κρυπτοσυστήματα Εισαγωγικές Παρατηρήσεις...211 4.1 Συμμετρικά κρυπτογραφικά συστήματα...214 4.1.1 Ορισμός και μοντέλο επικοινωνίας...214 4.1.2 Υπολογιστική ασφάλεια συμμετρικών κρυπτογραφικών αλγορίθμων...217 4.2 Συμμετρικοί Αλγόριθμοι Κρυπτογράφησης...228 4.2.1 Αλγόριθμοι τμήματος και αλγόριθμοι ροής...228 4.2.2 Ο Αλγόριθμος DES...229 4.2.3 Ασφάλεια του DES...235 4.2.4 Ο Αλγόριθμος S-DES...236 4.2.5 Ο Aλγόριθμος Triple-DES...238 4.3 Τρόποι λειτουργίας συμμετρικών Αλγορίθμων Κρυπτογράφησης...241 4.3.1 ECB (Electronic CodeBook)...241 4.3.2 CBC (Cipher Block Chaining)...242 4.3.3 OFB (Output Feedback)...244 4.3.4 CFB (Counter Feedback)...244 4.3.5 CTR (Counter)...245 4.4 Συμμετρικοί Αλγόριθμοι Προστασίας Ακεραιότητας...246 4.4.1 Κρυπτογραφικές συναρτήσεις Hash...246 4.4.2 Κατασκευή συναρτήσεων Ηash...250 4.4.3 Ασφάλεια συναρτήσεων Hash...253 4.4.4 Ακεραιότητα μηνύματος με συναρτήσεις Hash...260 4.4.5 Άλλες εφαρμογές των συναρτήσεων Hash...262 4.5 Συμμετρικοί Αλγόριθμοι Προστασίας Αυθεντικότητας...265
ΠΕΡΙΕΧΟΜΕΝΑ 11 4.5.1 Συναρτήσεις MAC (Message Authentication Code)...266 4.5.2 Κατασκευή συναρτήσεων MAC...267 4.5.3 Ασφάλεια συναρτήσεων MAC...269 4.5.4 Αυθεντικοποίηση μηνύματος με συναρτήσεις MAC...273 4.5.5 Αυθεντικότητα μηνύματος και οντότητας...274 4.6 Συνδυασμός υπηρεσιών εμπιστευτικότητας/αυθεντικότητας...276 4.7 To πρόβλημα της διαχείρισης κλειδιού...279 Σύνοψη...281 Λίστα Ελέγχου Γνώσεων...282 Ευρετήριο Όρων...283 Βιβλιογραφία...285 Οδηγός για Περαιτέρω Μελέτη...291 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...293 Απαντήσεις Δραστηριοτήτων...299 Κατάλογος σχημάτων...305 ΚΕΦΑΛΑΙΟ 5 Κρυπτοσυστήματα Δημόσιου Κλειδιού Εισαγωγικές Παρατηρήσεις...307 5.1 Κρυπτοσυστήματα Δημόσιου Κλειδιού...310 5.1.1 Ορισμός και μοντέλο επικοινωνίας...310 5.1.2 Ασφάλεια κρυπτογραφικών συστημάτων ΔΚ...314 5.1.3 Υπολογιστική ασφάλεια αλγορίθμων κρυπτογράφησης...316 5.1.4 Υπολογιστική ασφάλεια αλγορίθμων ψηφιακής υπογραφής...318 5.2 Ντετερμινιστικά συστήματα κρυπτογράφησης ΔΚ...320
12 ΚΡΥΠΤΟΓΡΑΦΙ Α ΚΑΙ ΑΣΦΑ ΛΕΙΑ ΔΙΚΤΥ ΩΝ 5.2.1 O Αλγόριθμος κρυπτογράφησης RSA...320 5.2.2 Ο Αλγόριθμος κρυπτογράφησης Rabin...326 5.3 Πιθανοτικά συστήματα κρυπτογράφησης ΔΚ...331 5.3.1 O Αλγόριθμος κρυπτογράφησης ElGamal...331 5.3.2 O Αλγόριθμος κρυπτογράφησης Goldwasser-Micali (GM)...337 5.4 Συστήματα ψηφιακής υπογραφής...342 5.4.1 O Αλγόριθμος ψηφιακής υπογραφής RSA...342 5.5 Εμπιστευτικότητα και αυθεντικότητα με συστήματα ΔΚ...349 5.5.1 Συνδυασμός υπηρεσιών με κρυπτοσυστήματα ΔΚ...349 5.6 Διαχείριση Δημόσιου Κλειδιού...351 5.6.1 Πιστοποιητικά Δημόσιου Κλειδιού...353 5.6.2 Πολλαπλοί τομείς ασφάλειας...360 5.6.3 Το μοντέλο εμπιστοσύνης PGP...366 Σύνοψη...370 Λίστα Ελέγχου Γνώσεων...371 Ευρετήριο Όρων...372 Βιβλιογραφία...374 Οδηγός για Περαιτέρω Μελέτη...380 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...383 Απαντήσεις Δραστηριοτήτων...389 Κατάλογος σχημάτων...394 ΚΕΦΑΛΑΙΟ 6 Ταυτοποίηση απομακρυσμένης οντότητας Εισαγωγικές Παρατηρήσεις...397
ΠΕΡΙΕΧΟΜΕΝΑ 13 6.1 Μοντέλο συστήματος και απειλών...400 6.1.1 Ταυτοποίηση και αυθεντικότητα...402 6.2 Ταυτοποίηση απομακρυσμένου χρήστη...405 6.2.1 Ταυτοποίηση χρήστη vs συσκευής...405 6.2.2 Ταυτοποίηση με κωδικούς πρόσβασης...408 6.3 Κρυπτογραφική ταυτοποίηση οντότητας...414 6.3.1 Ταυτοποίηση με πρόκληση-απάντηση...414 6.3.2 Ταυτοποίηση με χρονοσφραγίδες...427 6.3.3 Αποδείξεις Μηδενικής Γνώσης...433 6.4 Γιατί η ταυτοποίηση οντότητας δεν είναι αρκετή...441 Σύνοψη...443 Λίστα Ελέγχου Γνώσεων...444 Ευρετήριο Όρων...445 Βιβλιογραφία...447 Οδηγός για Περαιτέρω Μελέτη...450 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...451 Απαντήσεις Δραστηριοτήτων...453 Κατάλογος σχημάτων...456 ΚΕΦΑΛΑΙΟ 7 Αυθεντικοποιημένη εδραίωση κλειδιού Εισαγωγικές Παρατηρήσεις...459 7.1 Μοντέλο συστήματος και απειλών...461 7.2 Πρωτόκολλα Διανομής Κλειδιού...467 7.3 Πρωτόκολλα Μεταφοράς Κλειδιού...479 7.3.1 Συμμετρικά πρωτόκολλα μεταφοράς...479
14 ΚΡΥΠΤΟΓΡΑΦΙ Α ΚΑΙ ΑΣΦΑ ΛΕΙΑ ΔΙΚΤΥ ΩΝ 7.3.2 Πρωτόκολλα μεταφοράς με Δημόσιο Κλειδί...485 7.4 Πρωτόκολλα συμφωνίας κλειδιού...491 7.4.1 Συμμετρικά πρωτόκολλα συμφωνίας κλειδιού...491 7.4.2 Πρωτόκολλα συμφωνίας κλειδιού με Δημόσιο Κλειδί...492 Σύνοψη...506 Λίστα Ελέγχου Γνώσεων...507 Ευρετήριο Όρων...508 Βιβλιογραφία...510 Οδηγός για Περαιτέρω Μελέτη...513 Απαντήσεις σε Ασκήσεις Αυτοαξιολόγησης...514 Απαντήσεις Δραστηριοτήτων...518 Κατάλογος σχημάτων...521