Κρυπτογραφία Συμμετρικοί Κρυπτογραφικοί Αλγόριθμοι (Αλγόριθμοι Μυστικού Κλειδιού) Κέρκυρα, 2012 Δρ. Ε. Μάγκος Syllabus 1. Μοντέλο Επικοινωνίας Συμμετρικών Αλγορίθμων 2. Συμμετρικοί Αλγόριθμοι Ομάδας 3. Σύγχυση και Διάχυση 4. Αλγόριθμοι Τύπου Feistel 5. O αλγόριθμος DES (Data Encryption Algorithm) 6. Επεκτάσεις: Αλγόριθμοι S-DES (Simplified DES) & Triple DES (3DES) 7. Τρόποι λειτουργίας (Modes) Αλγορίθμων Ομάδας: ECB, OFB, CTR Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) 1. Η Alice και ο Bob συμφωνούν σε ένα αλγόριθμο (π.χ. AES) 5. Κρυπτοσύστημα = αλγ/θμος κρυπτογράφησης + αλγ/θμος αποκρυπτογράφησης + κλειδί 2. Η Alice και o Bob εδραιώνουν ένα κλειδί 3. H Alice κρυπτογραφεί το μήνυμα M με τον αλγόριθμο κρυπτογράφησης και το κλειδί 4. Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Η Alice στέλνει το κρυπτογραφημένο μήνυμα στον Bob Ο Bob αποκρυπτογραφεί το μήνυμα με τον αλγόριθμο αποκρυπτογράφησης και το ίδιο κλειδί Ανάγκη για μυστικότητα και αυθεντικοποίηση !! Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. 1- κοινή θέα 2 4- κοινή θέα 3 5 Ποια από τα παραπάνω βήματα μπορούν να γίνουν σε «κοινή» θέα; Τι μπορεί να κάνει η Eve ? (παθητικός) 1. Na «κρυφακούσει» στο βήμα 1 2. Να «κρυφακούσει» στο βήμα 2 3. 4. Ώστε να μάθει το κλειδί ! Να «κρυφακούσει» στο βήμα 4 Eve Ώστε να μάθει τον αλγόριθμο… … Known-text ή ciphertext-only attack Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. 1- κοινή θέα 2 4- κοινή θέα 3 5 Ποια από τα παραπάνω βήματα To βήμα 2 πρέπει να περιβάλλεται από Μυστικότητα και Αυθεντικότητα μπορούν να γίνουν σε «κοινή» θέα; Διαχείριση Κλειδιού σε συμμετρικά συστήματα Εναλλακτικά, H Alice και o Bob μπορούν να χρησιμοποιήσουν ένα κρυπτοσύστημα Δημόσιου κλειδιού… Eve Ανάγκη μόνο για αυθεντικοποίηση! Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) 1. Na διακόψει την επικοινωνία 2. Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. (π.χ. Βήματα 1, 2 ή 4) Να εισάγει «πλαστά» μηνύματα (Βήμα 2): Εδραιώνει κλειδί με Alice (υποκρινόμενος τον Bob) ή τούμπαλιν Τι μπορεί να κάνει o Mallory? (ενεργητικός εχθρός) (Βήματα 2 & 4): Aν μάθει το κλειδί (κρυφακούοντας ή κρυπταναλύοντας), να υποκριθεί ότι είναι η Alice ή ο Bob (Βήμα 4): Στέλνει τυχαίο μήνυμα, υποκρινόμενος την Alice, το οποίο ο Bob θα αποκρυπτογραφήσει ως «σκουπίδια» (garbage). Mallory Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Alice Εύλογα, στα συμμετρικά πρωτόκολλα υποθέτουμε ότι υπάρχει αμοιβαία εμπιστοσύνη μεταξύ Alice και Bob Τι μπορεί να κάνει η Alice? 1. Μπορεί να δώσει ένα αντίγραφο του κλειδιού της στην Eve ή στον Mallory 2. Μπορεί (?) νa αρνηθεί ότι έστειλε το μήνυμα Μ Non-Repudiation Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. π.χ. σε περίπτωση όπου ο Bob δείξει σε κάποιον τρίτο το μήνυμα, ισχυριζόμενος ότι το «έγραψε» η Alice J. Katz, Y. Lindell. Introduction to Modern A. Young, M. Yung. Malicious Cryptography – Schneier, Bruce. Applied Cryptography. Cryptography. Chapman & Hall/CRC, 2008. Exploring CryptoVirology. Wiley, 2004 John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) Tα συμμετρικά κρυπτοσυστήματα εμφανίζουν προβλήματα: 1. Τo αρχικό κλειδί πρέπει να ανταλλάσσεται με μυστικότητα Ασφαλές κανάλι (secure channel) στο βήμα 2 Δύσκολο σε «ανοικτά» περιβάλλοντα (π.χ. Internet) Εφικτό σε «κλειστά» περιβάλλοντα (π.χ. τοπικά & εταιρικά δίκτυα μικρού μεγέθους) Περίπτωση: Ο IT administrator δίνει/εισάγει τα κλειδιά στους χρήστες του δικτύου Περίπτωση: Συνάντηση κατ’ ιδίαν, αποστολή courier,… J. Katz, Y. Lindell. Introduction to Modern A. Young, M. Yung. Malicious Cryptography – Schneier, Bruce. Applied Cryptography. Cryptography. Chapman & Hall/CRC, 2008. Exploring CryptoVirology. Wiley, 2004 John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) 2. Εάν ένα κλειδί «σπάσει», τότε: a) Η Eve θα διαβάζει όλα τα μηνύματα που έχουν κρυπτογραφηθεί με το κλειδί b) Ο Mallory θα εξαπολύσει επιθέσεις πλαστοπροσωπίας (impersonate, spoofing) J. Katz, Y. Lindell. Introduction to Modern A. Young, M. Yung. Malicious Cryptography – Schneier, Bruce. Applied Cryptography. Cryptography. Chapman & Hall/CRC, 2008. Exploring CryptoVirology. Wiley, 2004 John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) 3. Κάθε δυάδα χρηστών σε ένα δίκτυο πρέπει να έχει ξεχωριστό κλειδί Αποθήκευση (Storage) Scalability Σημείωση: Οι χρήστες “μιλούν” & με αποκρυσμένους πόρους (π.χ. ΒΔ, servers υπηρεσίες κλπ) που αποτελούν ξεχωριστές οντότητες Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Υπολογιστική Ασφάλεια Έστω ότι ο αλγόριθμος κρυπτογράφησης είναι «ασφαλής» Ας διευκολύνουμε την Eve… Επίθεση «Known-Plaintext» 1. H Eve διαθέτει ένα ή περισσότερα κρυπτογραφημένα μηνύματα, και τα αντίστοιχα αρχικά μηνύματα ! 2. Ασφάλεια του κρυπτοσυστήματος Στόχος: Ο μόνος τρόπος για να παραβιαστεί, είναι η δοκιμή όλων των πιθανών κλειδιών Υπολογιστική Ασφάλεια Στη συνέχεια η Eve δοκιμάζει όλα τα πιθανά κλειδιά (brute force) Πολυπλοκότητα της επίθεσης; Ανάλογη με το μήκος του κλεδιού 128 bit: Τρέχον standard για συμμετρική κρυπτογράφηση Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Ασφάλεια Αλγορίθμων AES Cryptanalysis “… Actually you have 2^127*(time for AES operation) time, the 127 is in place of the 128 because on average you will only need to work through half the key space. So assuming you can perform 2^56 AES operations per second (and this itself an exceedingly fast rate) it would take 2^127/2^56 seconds, this works out to 75,000,000,000,000 years. I do not consider the project to have an achievable timeframe for success. This is the best cryptoanalysts know how to do with AES right now; for security this is a good thing, for your project it is a bad thing.. “ Joe Ashwood Μία Ταξινομία των Κρυπτοσυστημάτων http://en.wikipedia.org/wiki/Image:Cipher-taxonomy.png Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Συμμετρικοί Αλγόριθμοι Αλγόριθμοι Ροής (Stream Ciphers) & Ομάδας (Block Ciphers) Αλγόριθμοι Ροής Οι αλγόριθμοι ροής κρυπτογραφούν μια ψηφιακή ροή δεδομένων 1 bit ή 1 byte τη φορά Χρήση αλγόριθμου παραγωγής ψευδοτυχαιότητας & από τα 2 μέρη Αλγόριθμοι Ομάδας Κρυπτογράφηση ομάδων χαρακτήρων σταθερού μεγέθους. Στην πράξη το μέγεθος της ομάδας ισούται με το μέγεθος του κλειδιού (π.χ 128 bit) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Σύγχυση (Confusion) Αποκρύπτουμε τη σχέση μεταξύ κρυπτογραφημένου κειμένου και κλειδιού π.χ. επαναλαμβανόμενες τεχνικές αντικατάστασης & αναδιάταξης Διάχυση (Diffusion) O πλεονασμός του αρχικού κειμένου κατανέμεται «ομοιόμορφα» στο κρυπτογραφημένο κείμενο Φαινόμενο Χιονοστιβάδας & αλγόριθμοι ομάδας (DES, AES) Από μόνες τους, οι τεχνικές αντικατάστασης και αναδιάταξης εμφανίζουν αδυναμίες. Ωστόσο, αν συνδυαστούν, μπορούν υπό προϋποθέσεις να οδηγήσουν στη δημιουργία «ισχυρών» αλγορίθμων !!! J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Στόχος: H συμπεριφορά σαν μία τυχαία αντιμετάθεση (random permutation) Σύμφωνα με τον Shannon, για να το πετύχουμε χρησιμοποιούμε τεχνικές: 1. Σύγχυσης (Confusion) … και επαναλαμβάνουμε τόσες φορές ώστε να προσομοιώσουμε τη λειτουργία μιας τυχαίας αντιμετάθεσης, δηλαδή: 2. Διάχυση (Diffusion): Κάθε (έστω μικρή) αλλαγή θα επηρεάσει όλα τα bit εξόδου (φαινόμενο χιονοστιβάδας) A substitution-permutation network (SPΝ) Stinson, D. Cryptography: Schneier, Bruce. Applied Theory and Practice. Third Edition, CRC, 2005 Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Ο Shannon πρότεινε το συνδυασμό τεχνικών σύγχυσης και διάχυσης Aναφέρονται και ως SubstitutionPermutation Networks (SPNs) π.χ. DES, AES (σήμερα),… Product Ciphers Επαναλαμβανόμενοι αλγόριθμοι ομάδας (Iterated block Ciphers) Για κάθε block, ο αλγόριθμος εκτελείται περισσότερες από μια φορές (Γύροι – Rounds). π.χ. AES (128bit): 10 rounds DES (56 bit): 16 rounds Συνδυασμός («γινόμενο») δύο ή περισσότερων κρυπτοσυστημάτων Παράδειγμα product cipher: Affine Multiplicative cipher Shift cipher J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Συμμετρικοί Αλγόριθμοι Επαναλαμβανόμενοι Αλγόριθμοι Ομάδας – Δίκτυα SPN J. Katz, Y. Lindell. Introduction to Modern Stinson, D. Cryptography: Theory and Cryptography. Chapman & Hall/CRC, 2008. Practice. Third Edition, CRC, 2005 Συμμετρικοί Αλγόριθμοι Επαναλαμβανόμενοι Αλγόριθμοι Ομάδας – Δίκτυα SPN Για να ισχύει το φαινόμενο της χιονοστιβάδας, θα πρέπει: 1. Κάθε S-box σχεδιάζεται ώστε αλλάζοντας 1 bit εισόδου επηρεάζει τουλάχιστον 2 bit εξόδου του S-box 2. Οι αναδιατάξεις (mixes) σχεδιάζονται ώστε τα bit εξόδου κάθε S-box διαχέονται σε διαφορετικά S-box κατά τον επόμενο γύρο. Επιπλέον, θέλω όλα τα bit κλειδιού να επηρεάζουν όλα τα bit εξόδου !!! Για 128-bit blocks λοιπόν, τυπικά πρέπει να εκτελούνται τουλάχιστον 7 γύροι ! DES: Ο αλγόριθμος που «άντεξε» 20 (και πλέον) χρόνια Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 David. Kahn. The Codebreakers. Scribner, 1996. Συμμετρικοί Αλγόριθμοι Ιστορικά Στοιχεία: Οι αλγόριθμοι DES και AES H. Feistel Ιστορικά Στοιχεία… 1971: Horst Feistel (ΙΒΜ) Αλγόριθμος Dataseal ή Lucifer 1997: H NIST απευθύνει κάλεσμα για δημιουργία ενός νέου προτύπου δημιουργία προτύπου κρυπτογράφησης Rijndael Serpent Πριν την υποβολή, η NSA περιορίζει Twofish το μήκος κλειδιού (112 bit 56 bit) RC6 MARS έναν αλγόριθμο βασισμένο στο Lucifer 1975: Η NIST δημοσιεύει τον Lucifer ως προτεινόμενο standard 15 υποψηφιότητες, εκ των οποίων: 1974: Η IBM υποβάλλει ως πρόταση Data Encryption Standard υποβολή προτάσεων, με σκοπό τη 1973: H NIST απευθύνει κάλεσμα για υποβολή προτάσεων, με σκοπό τη 1977: Πρότυπο FIPS PUB 46 1976: Το πρώτο Workshop 2000: H NIST επιλέγει τον Rijndael Advanced Encryption Standard 2001: FIPS PUB 197 Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES 1. Για κάθε block, και με βάση το κλειδί Κ, ο αλγόριθμος Εκτελεί ένα συνδυασμό μετασχηματισμών αντικατάστασης και αναδιάταξης 2. … και επαναλαμβάνει τη διαδικασία 16 φορές (rounds) Όλοι οι μετασχηματισμοί που εκτελούνται είναι γνωστοί Η ασφάλεια βασίζεται στη μυστικότητα του κλειδιού Κ Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – (Τύπου Feistel) H. Feistel Αρχικά, το 64-bit block χωρίζεται σε δύο 32-bit half-blocks L και R. Αλγόριθμος τύπου Feistel 1. H συνάρτηση f δέχεται στην είσοδο το block R και ένα κλειδί K, και εκτελεί μετασχηματισμούς σύγχυσης και διάχυσης… 2. Η έξοδος της συνάρτησης f γίνεται XOR με το block L, και το αποτέλεσμα γίνεται το R του επόμενου γύρου 3. Το R κάθε γύρου, γίνεται το L του επόμενου γύρου ki Αλγόριθμοι τύπου Feistel DES, Lucifer, FEAL, Khufu, Khafre, LOKI, GOST, CAST, Blowfish, MARS, MAGENTA, MISTY1, RC5, TEA, Twofish, XTEA, CAST-256, Camellia, MacGuffin, RC2, RC6, Skipjack,… http://en.wikipedia.org/wiki/Image:Feistel.png Αλγόριθμοι Τύπου Feistel Ο αλγόριθμος αντιστρέφεται εύκολα (χωρίς ανάγκη να αντιστραφεί η f) Αποκρυπτογράφηση: Ίδιος κώδικας, με χρήση των κλειδιών με αντίθετη σειρά Stinson, D. Cryptography: http://en.wikipedia.org/wiki/Image:Data_Encryption_Standard_InfoBox_Diagram.png Theory and Practice. Third Edition, CRC, 2005 ki Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Συνάρτηση f : Δύο αντικαταστάσεις (ΧΟR (1 γύρος) R= με K, χρήση των S-box) και 1. Δύο αναδιατάξεις (Ε και P) Επέκταση του R σε 48 bit Συνάρτηση επέκτασης E (Expansion function) Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 ki Αλγόριθμοι Μυστικού Κλειδιού DES – Συνάρτηση Επέκτασης Ε (1 γύρος) R= (Expansion function) Αν έχουμε ένα bitstring μήκους 32 π.χ. Α = ( α1,α2,…α32 ) θα επεκταθεί στο μήκους 48 string: E(A) = (a32, a1, a2, a3, a4, a5, a4, …, a31, a32, a1) Stinson, D. Cryptography: http://en.wikipedia.org/wiki/Image:Data_Encryption_Standard_InfoBox_Diagram.png Theory and Practice. Third Edition, CRC, 2005 ki Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Συνάρτηση f : (1 γύρος) Δύο αντικαταστάσεις (ΧΟR R= με K, χρήση των S-box) και 1. Επέκταση του R σε 48 bit 2. Δύο αναδιατάξεις (Ε και P) Συνάρτηση επέκτασης E Υπολογισμός του E(R) Κ Γράφουμε το αποτέλεσμα ως 8 ακολουθίες των 6-bit B = B1B2B3B4B6Β7Β8 3. Για κάθε Bj, χρησιμοποιείται το αντίστοιχο Sj-box (Expansion function) Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Τα S-box Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 ki Αλγόριθμοι Μυστικού Κλειδιού DES – Κάνοντας χρήση των S-box Έστω η ακολουθία Υπολογίζουμε το ως εξής: Τα δύο bit καθορίζουν το δείκτη της γραμμής του Sj που θα χρησιμοποιηθεί για την αντικατάσταση Ta τέσσερα bit καθορίζουν το δείκτη της στήλης του Sj που θα χρησιμοποιηθεί για την αντικατάσταση Παράδειγμα: Έστω η είσοδος στο S1 είναι το: 101000. Σε αυτήν την περίπτωση, η έξοδος του S1 θα είναι: 1101 (1 γύρος) R= (Expansion function) Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 ki Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Αναδιάταξη P 4. Ta bit εξόδου όλων των S-box αναδιατάσσονται σύμφωνα με την P. (1 γύρος) R= (Expansion function) π.χ. το bitstring C = ( c1,c2,…c32 ) θα αναδιαταχθεί ως εξής: P(C) = (c16, c7, c20, c21, c29, …, c11, c4, c25) Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Key Schedule Πώς χρησιμοποιείται τo 64-bit κλειδί K 1. Αρχικά, μετατρέπεται σε 56-bit χρησιμοποιώντας την αναδιάταξη PC-1 2. Για κάθε γύρο i, δημιουργείται μια «παράλλαγή» του K, με βάση τη σχέση: .. όπου LSi σημαίνει ολίσθηση προς αριστερά 3. .. κατά μία θέση (για i = 1, 2, 9, 16) .. κατά δύο θέσεις (για τα υπόλοιπα i). Πριν χρησιμοποιηθεί, το κλειδί «μειώνεται» σε 48-bit σύμφωνα με την αναδιάταξη PC-2: ki F. Bauer. Decrypted Secrets–Methods and Maxims of Cryptology,4th Edition. Springer, 2007. Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES - Συνοπτικά * (1 γύρος) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 * Simplified DES (S-DES) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 * Simplified DES (S-DES) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 * Simplified DES (S-DES) Michael J. Wiener. Efficient DES key search. Technical Report TR-244, School of Computer Science, Carleton University, Ottawa, Canada, May 1994. Presented at Rump Session of Crypto '93 Stinson, D. Cryptography: Ασφάλεια του DES Theory and Practice. Third Edition, CRC, 2005 Μήκος κλειδιού 1993: Ο Michael Wiener πρότεινε συνολικός χρόνος μπορεί να μειωθεί τη δημιουργία ενός VLSI chip που στα 2 λεπτά ! θα δοκιμάζει 50.000.000 κλειδιά DES το δευτερόλεπτο. Κόστος 10.50 $ ανά chip … Επενδύοντας $100.000.000, ο To chip δεν σχεδιάστηκε ποτέ… 1998: H EFF (Electronic Frontier Foundation) δημιουργεί έναν Η/Υ Συνδυάζοντας 57.000 chip, με (Deep Crack) αξίας 250.000 $ κόστος 1.000.000 $, το σύστημα 1536 chip: 88 δισ. Κλειδιά /sec θα μπορούσε να δοκιμάσει όλα τα Το κλειδί DES «έσπασε» σε 56 ώρες κλειδιά σε χρόνο 7 ώρες Kατά μέσο όρο 3.5 ώρες για την εύρεση του σωστού κλειδιού 1999: Deep Crack σε συνεργασία με distributed.net project (100K Η/Υ) 245 δισ. Κλειδιά /sec Το κλειδί DES «έσπασε» σε 22 ώρες J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. DES Προηγμένες Κρυπταναλυτικές Επιθέσεις 1. Differential Cryptanalysis (Biham and Shamir, 1991) Κρυπτανάλυση του DES με (χρονική) πολυπλοκότητα 237 2. Linear Cryptanalysis (Matsui, 1994) Απαιτεί 243 known plaintexts Απαιτεί 247 chosen plaintexts Έστω τυχαία inputs x1 , x2 . Αν x1 x2 x και k είναι τυχαίο κλειδί, τότε ποια η πιθανότητα p να ισχύει Fk ( x1 ) Fk ( x2 ) y Η επιθεσεις αυτές δεν έχουν μεγάλη πρακτική αξία Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Ασφάλεια του DES Μήκος κλειδιού & Triple Des Η βασική «αδυναμία» του DES περισσότερες από μία φορές, με που υποστηρίζει περισσότερα από ένα κλειδιά Κλειδί 56-bit Ευπαθής σε επιθέσεις εξαντλητικής αναζήτησης Λύση: Εκτέλεση του αλγορίθμου είναι το μικρό μήκος κλειδιών Cascade Ciphers Παράδειγμα: 3DES brute force attacks Η κρυπτογράφηση μπορεί να περιγραφεί από τη σχέση: Υπάρχει τρόπος να ξεπεραστεί το πρόβλημα με το μήκος κλειδιού; Η αποκρυπτογράφηση μπορεί να περιγραφεί από τη σχέση: J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Meet-in-the-middle attack Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) Τι συμβαίνει όταν το μήκος του αρχικού μηνύματος είναι Προβλήματα 1. μεγαλύτερο των 64 bit; Μία λύση: «τεμαχίζουμε» το μήνυμα σε blocks 64-bit και κρυπτογραφούμε κάθε block ECB mode Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Δυο ίδια blocks αρχικού κειμένου αντιστοιχούν σε ίδια blocks κρυπτογραφημένου κειμένου … βλέποντας το κρυπτογράφημα η Eve «κερδίζει» σε γνώση 2. Αν το αρχικό κείμενο εμφανίζει πλεονασμό, τότε: a) Η Eve μπορεί να εξαπολύσει στατιστικές επιθέσεις b) O Mallory μπορεί να παίξει ξανά (replay) ένα block, να αλλάξει τη σειρά των blocks η να τροποποιήσει τα blocks, προς όφελος του Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB Τράπεζα Α Τράπεζα Β 1. Ο Mallory, που είναι πελάτης της Α και της Β, εξαπολύει την εξής επίθεση: 2. Μεταφέρει διάφορα ποσά (π.χ. 1$, 10$, 100$) από την τράπεζα Α στην τράπεζα Β, όσες φορές χρειαστεί, μέχρι να εντοπίσει τα blocks που εξουσιοδοτούν τη μεταφορά του (όποιου) ποσού στον λογαριασμό του… Παθητική επίθεση (υποκλοπή) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB … ο Mallory δε γνωρίζει το κλειδί Κ που χρησιμοποιούν οι δύο τράπεζες για την επικοινωνία τους Τράπεζα Α 3. Τράπεζα Β Σε “μελλοντικές” μεταφορές χρημάτων της Alice (ή, οποιουδήποτε άλλου), μπορεί να εισάγει στην θέση των blocks 5-13, τα blocks που είχε υποκλέψει και που εξουσιοδοτούν τη μεταφορά ποσού στο λογαριασμό του… Ενεργητική επίθεση στην ακεραιότητα του συστήματος C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public World. 2002 Τρόποι λειτουργίας (Cipher Modes) CBC mode - encryption CBC Mode (Cipher Block Chaining) Κάθε block αρχικού κειμένου γίνεται XOR με το προηγούμενο block κρυπτογραφημένου κειμένου, και στη συνέχεια κρυπτογραφείται Κάθε block κρυπτογραφημένου κειμένου δεν εξαρτάται μόνον από το αντίστοιχο block αρχικού κειμένου, αλλά και από όλα τα προηγούμενα… C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public World. 2002 Τρόποι λειτουργίας (Cipher Modes) CBC mode - decryption Η τιμή IV στέλνεται στον παραλήπτη (in the clear) – αλλιώς, δεν μπορεί να γίνει αποκρυπτογράφηση ! J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) Άλλα modes (π.χ. OFB, CFB) μπορούν να χρησιμοποιηθούν Ακολουθία PRNG: ri Fk ( IV i), i 0 Κρυπτογράφηση: ci mi ri ως Γεννήτορες PRNG Ακολουθία PRNG: ri Fk (ri 1 ), r0 IV Κρυπτογράφηση: ci mi ri Ένας αλγόριθμος ομάδας δηλαδή, μπορεί να χρησιμοποιηθεί και ως αλγόριθμος ροής (stream cipher) C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public Συμμετρικοί αλγόριθμοι World. 2002 Ακεραιότητα με CBC MAC Τα modes λειτουργίας παρέχουν προστασία έναντι της Eve, αλλά όχι έναντι του Mallory. Για προστασία έναντι της ακεραιότητας, ένας αλγόριθμος σε CBC mode μπορεί να χρησιμοποιηθεί και ως αλγόριθμος MAC, όπου η τιμή ΜΑC ισούται με το n-οστό κρυπτογραφημένο block N. Ferguson, B. Schneier. Practical Cryptography. Wiley, 2003. Ο αλγόριθμος AES Υποστήριξη κλειδιών μήκους: 128, 192, ή 256-bit animation: http://www.conxx.net/rijndael_anim_conxx.html