290 likes | 372 Views
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 20 1 2-2013 Εξάμηνο: Δ’. Ασφάλεια Υπολογιστών και Προστασία Δεδομένων Ενότητα 3 : Μια Επισκόπηση των Κρυπτογραφικών Μηχανισμών της Ασφάλειας Η/Υ και Δικτύων. Εμμανουήλ Μάγκος.
E N D
Ιόνιο ΠανεπιστήμιοΤμήμα ΠληροφορικήςΑκαδημαϊκό Έτος 2012-2013Εξάμηνο: Δ’ Ασφάλεια Υπολογιστών και Προστασία Δεδομένων Ενότητα 3: Μια Επισκόπηση των Κρυπτογραφικών Μηχανισμών της Ασφάλειας Η/Υ και Δικτύων Εμμανουήλ Μάγκος
1.2. Μυστικότητα & ΕμπιστευτικότηταΣυμμετρικές Τεχνικές: Kρυπτογράφηση Μυστικότητα (Εμπιστευτικότητα)
Αλγόριθμοι Αντικατάστασης (Μονοαλφαβητικοί)Αλγόριθμος Ολίσθησης (Shift Cipher) Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 * *
Συμμετρική ΚρυπτογράφησηΟ Αλγόριθμος DES - Συνοπτικά F. Bauer. Decrypted Secrets–Methods and Maxims of Cryptology,4th Edition. Springer, 2007. • (1 γύρος) H Συνάρτηση f
1.2. Μυστικότητα & ΕμπιστευτικότηταΤεχνικές Δημόσιου Κλειδιού: Kρυπτογράφηση
Ο αλγόριθμος RSA H Alice επιλέγει τυχαία δύο πρώτους αριθμούς p, q є Ζ *Ν Η Alice υπολογίζει N = p * q H Alice διαλέγει αριθμό e є Ζ*Φ(Ν) Η Alice υπολογίζει αριθμό d є Ζ*Ν, ώστε H Alice διαγράφει τα p και q 1.2. Μυστικότητα & ΕμπιστευτικότηταΑλγόριθμοι Δημόσιου Κλειδιού – Ο αλγόριθμος RSA Κρυπτογράφηση: Αποκρυπτογράφηση: J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 (Υπολογιστική) Ασφάλεια • RSA problem. Ανάγεται στο: • Factoring problem: Πρόβλημα εύρεσης πρώτων παραγόντων μεγάλων αριθμών • Για μεγάλο Ν, (>= 1024 bit), «δύσκολο» να βρεθούν οι πρώτοι παράγοντες p και q • Υπολογιστικά Αδύνατο • Δημόσιο Κλειδί : (e, N) • Ιδιωτικό Κλειδί : d
π.χ. κρυπτογράφηση του αριθμού 19 στο Z*55 (e, d) = (3, 27) n = 55 Κρυπτογράφηση: c = 193 mod 55 = 39 Aποκρυπτογράφηση: m = 3927 mod 55 1.2. Μυστικότητα & ΕμπιστευτικότηταΑλγόριθμοι Δημόσιου Κλειδιού – Ο αλγόριθμος RSA Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001
John Hershey. Cryptography Demystified. McGraw-Hill Professional, 2003 Αλγόριθμοι Δημόσιου Κλειδιού – Ο αλγόριθμος Εδραίωσης (Συμμετρικού) Κλειδιού των Diffie-Hellman (Diffie-Hellman, 1976) Παράμετροι συστήματος p= 101, g=3 a=5 b=6 Όλες οι πράξεις γίνονται mod p g και p: Παράμετροι συστήματος ΓΝΩΣΤΕΣ ΣΕ ΟΛΟΥΣ
N. Ferguson, B. Schneier. Practical Cryptography. Wiley, 2003. Επίθεση Ενδιάμεσης Οντότητας (MITM)στοπρωτόκολλο Diffie-Hellman Λύση: Τεχνικές Αυθεντικοποίησης Μηνύματος και Οντότητας !
Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Ιδιότητες Συναρτήσεων Hash Compression Είσοδος (pre image): Αλφαριθμητικόκάθε μεγέθους. Έξοδος: αλφαριθμητικό μεγέθους Χ (τιμή hash) Ευκολία στον υπολογισμό Δεδομένης μιας τιμής x και της συνάρτησης H, είναι εύκολο να βρείς το H(x) 1.3. Αυθεντικοποίηση ΜηνύματοςΣυμμετρικές Τεχνικές: Συναρτήσεις Hash • http://en.wikipedia.org/wiki/Hash_algorithm • D • R • http://msdn.microsoft.com/library/en-us/dnvs05/html/datastructures_guide2-fig09.gif
Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Κρυπτογραφικές Συναρτήσεις Hash Μονόδρομες Συναρτήσεις Hash με επιπλέον προστασία από συγκρούσεις (collision resistance) 1.3. Αυθεντικοποίηση ΜηνύματοςΣυμμετρικές Τεχνικές: Συναρτήσεις Hash Ιδιότητες Κρυπτογραφικών Συναρτήσεων Hash One way: Εύκολο να υπολογίσεις την τιμή hash δεδομένου του αρχικού μηνύματος, δύσκολο να υπολογίσεις το αρχικό μήνυμα δεδομένης της τιμής hash. Collision-Resistance: Δύσκολο να βρεθεί σύγκρουση Σύγκρουση: δύο μηνύματα που δίνουν την ίδια τιμή hash • Εύκολο • Δύσκολο D R • http://msdn.microsoft.com/library/en-us/dnvs05/html/datastructures_guide2-fig09.gif Σημείωση: Αν |D| > |R| τότε οι συγκρούσεις είναι αναπόφευκτες, ωστόσο, σε μια κρυπτογραφική συνάρτηση hash είναι δύσκολο να βρεθούν
Μονόδρομες συναρτήσεις hashΠαραδείγματα Αλγορίθμων SHA -1 Αλγόριθμοι Hash • Ένας γύρος (round) στον αλγόριθμο SHA-1 • http://en.wikipedia.org/wiki/Cryptographic_hash_function
Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003
Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 1.3. Αυθεντικοποίηση ΜηνύματοςΣυμμετρικές Τεχνικές: ΜΑC ΗΜΑC: Μια συνάρτηση MAC μπορεί να θεωρηθεί παραλλαγή μιας συνάρτησης hash (n-bit) Είσοδος: Το μήνυμα Μ και ένα συμμετρικό κλειδί Κ Έξοδος: τιμή MAC (n–bit) Ασφάλεια Συνάρτησης HMAC Κληρονομείτις ιδιότητες ασφάλειας της συνάρτησης Hash H διαδρομή Μ ΜΑC(M)δεν είναι πλέον εύκολη ..εκτός & αν υπάρχει γνώση του Κ Αν η Hash είναι ασφαλής, η ασφάλεια της συνάρτησης MAC βασίζεται στο μήκος του κλειδιού Μήκος(Κ) = 128 bit Μήκος Hash = 256 bit • HASH
1.3. Αυθεντικοποίηση ΜηνύματοςΣυμμετρικές Τεχνικές: ΜΑC: Μοντέλο Επικοινωνίας Secure Channel M K 1 NAI (OK) OXI 2 M K K Μ M, ΜΑC(Μ) Ακεραιότητα ΚΑΙ Αυθεντικοποίηση Μηνύματος 4 3 5 Αλγόριθμος Hash Αλγόριθμος Hash
1.3. Αυθεντικοποίηση ΜηνύματοςΣυμμετρικές Τεχνικές: ΜΑC Eνας αλγόριθμοςσε CBC modeμπορεί να χρησιμοποιηθεί και ως αλγόριθμος MAC,όπου η τιμή ΜΑC ισούται με το n-οστό κρυπτογραφημένο block C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public World. 2002
1.3. Αυθεντικοποίηση ΜηνύματοςΑλγόριθμοι Δημόσιου Κλειδιού - Ψηφιακή Υπογραφή με RSA Δημιουργία Κλειδιών Επιλογή πρώτων: p = 7927, q =6997 Υπολογισμός: n = p * q = 55465219 Υπολογισμός: Φ(n) = 7926* 6996 = 55450296 Επιλογή e=5και επίλυση της εξίσωσης: 5 * d 1 (mod 55450296) Δημόσιο κλειδί: (n =55465219, e=5) Ιδιωτικό Κλειδί: d = 44360237 Υπογραφή (του μηνύματος Μ = 31229978 C = 31229978 (44360237)mod 55465219 = 30729435 Επαλήθευση Μ = 307294355mod 55465219 = 31229978 Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001
1.3. Αυθεντικοποίηση ΜηνύματοςΨηφιακή Υπογραφή με Αλγόριθμο ΔΚ και Hash Σε συστήματα Αυθεντικοποίησης (MAC, ψηφ. υπογραφή) η ασφάλεια της συνάρτησης Hash έναντι συγκρούσεων (collisionresistance) είναι κρίσιμη ! Έστω ο Mallory βρίσκει δύο Μ1 και Μ2 ώστε Η(Μ1)=Η(Μ2) Ο Mallory πείθει με κάποιον τρόπο την Alice να υπογράψει το Μ1 Ο Mallory ισχυρίζεται ότι η Alice υπέγραψε το Μ2 !!!
1.4. Υποδομή Δημόσιου ΚλειδιούΔιανομή Δημόσιων Κλειδιών Απευθείας παράδοση μέσω ενός «ασφαλούς» καναλιού π.χ. αυτοπροσώπως ή με Courier Δημόσια ανακοίνωση π.χ. Web, USENET, lists,… Παράδοση μέσω μη ασφαλούς (ηλεκτρονικού) καναλιού και επιβεβαίωση αυθεντικότητας μέσω ανεξάρτητου καναλιού Π.χ. Ανάγνωσημέσω τηλεφώνου της τιμής hash του PGP ΔΚ Χρήση ενός onlineκαταλόγουμε δημόσια κλειδιά Το κανάλι παράδοσης θα πρέπει να είναι ασφαλές από επιθέσεις του Mallory π.χ. O server υπογράφει ψηφιακά τις απαντήσεις W. Stallings. Cryptography and Network Security, Principles and Practice. 5th Edition, Pearson, 2010 Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 ΒΔ ΔΚΒ
1.4. Υποδομή Δημόσιου ΚλειδιούΔιανομή Δημόσιων Κλειδιών (Stallings, 2010) (Popek and Kline, 1979)
1.4. Υποδομή Δημόσιου ΚλειδιούΔιανομή Δημόσιων Κλειδιών Κυρίαρχη πρόταση: Χρήση offline server (CA) που εκδίδει (υπογράφει) πιστοποιητικά Κάθε χρήστης εγγράφεται στην CA, υποβάλλει το ΔΚ του, λαμβάνει ένα πιστοποιητικό του ΔΚ του Για να μπορεί ο χρήστης να επαληθεύει πιστοποιητικά άλλων χρηστών θα πρέ-πει να έχει/αποκτήσει το έγκυρο ΔΚCA : Η ισχύς ενός πιστοποιη-τικού θα πρέπει να είναι επαληθεύσιμη Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Πιστοποιητικό: «Δέσιμο» του ονόματος του υποκείμενου με ένα ΔΚ (Kohnfelder 1978) CertΑ (Denning 1983) Το βήμα a) μπορεί να γίνει ηλεκτρονικά. Ωστόσο, το βήμα b) θα πρέπει να γίνει με φυσικό (ή άλλο, ασφαλή) τρόπο ώστε να αποτραπεί επίθεση από τον Mallory !!
1.4. Υποδομή Δημόσιου ΚλειδιούExchange of Public Key Certificates (Stallings, 2010)
1.4. Υποδομή Δημόσιου ΚλειδιούExchange of Public Key Certificates (Stallings, 2010)
1.4. Υποδομή Δημόσιου ΚλειδιούStandard: X.509 Certificates (ITU-T X.509) (Stallings, 2010)
1.4. Υποδομή Δημόσιου ΚλειδιούExchange of Public Key Certificates (Stallings, 2010)
Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 O Σύγχρονος Ρόλος της Κρυπτογραφίας Modern Role of Cryptography: Ensuring Fair Play of Games…
Ας μελετήσουμε το ακόλουθο πρόβλημα… Δύο (ή περισσότερες) οντότητες, διαθέτουν από μία βάση δεδομένων με εμπιστευτικά (ευαίσθητα) δεδομένα, και επιθυμούν την εκτέλεση ενός αλγορίθμου εξόρυξης δεδομένων στην ένωση των βάσεων, χωρίς να αποκαλυφθούν τα επιμέρους δεδομένα… X1 X2 Σημείωση: Οι δύο οντότητεςΔΕΝ ΕΜΠΙΣΤΕΥΟΝΤΑΙη μία την άλλη (Lindell and Pinkas, 2000)
16 Tons Ένα «Ιδανικό» πρωτόκολλο Θα σας βοηθήσω !! Αν με εμπιστεύεστε… Η απάντηση είναι … Μην φοβάστε !! Δεν θα προδώσω τα μυστικά σας … X1 X2 F(X1,X2) F(X1,X2) Στόχος:H υλοποίηση συστημάτων που «μοιάζουν» με το ιδανικό σύστημα… Πώς?Με τη χρήση κρυπτογραφικών τεχνικών και μεθόδων …
ΔΚΒ[ΜΑ + r] ΔΚC[ΜΒ + ΜΑ + r] ΔΚA[MC + MB + ΜΑ + r] Secure Multiparty Computation (SMC)[Yao, 1987] Bob Alice Μπορούμε να υπολογίσουμε το μέσο μισθό μας, χωρίς να μάθουμε ο ένας το μισθό του άλλου; M = (MC + MB + ΜΑ)/3 Carol