Συμμετρικοί Κρυπτογραφικοί Αλγόριθμοι (Αλγόριθμοι Μυστικού Κλειδιού) Κρυπτογραφία Συμμετρικοί Κρυπτογραφικοί Αλγόριθμοι (Αλγόριθμοι Μυστικού Κλειδιού) Κέρκυρα, 2012 Δρ. Ε. Μάγκος
Syllabus Μοντέλο Επικοινωνίας Συμμετρικών Αλγορίθμων Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Αλγόριθμοι Τύπου Feistel O αλγόριθμος DES (Data Encryption Algorithm) Επεκτάσεις: Αλγόριθμοι S-DES (Simplified DES) & Triple DES (3DES) Τρόποι λειτουργίας (Modes) Αλγορίθμων Ομάδας: ECB, OFB, CTR
Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Η Alice και ο Bob συμφωνούν σε ένα αλγόριθμο (π.χ. AES) Η Alice και o Bob εδραιώνουν ένα κλειδί H Alice κρυπτογραφεί το μήνυμα M με τον αλγόριθμο κρυπτογράφησης και το κλειδί Η Alice στέλνει το κρυπτογρα-φημένο μήνυμα στον Bob Ο Bob αποκρυπτογραφεί το μήνυμα με τον αλγόριθμο αποκρυπτογράφησης και το ίδιο κλειδί Κρυπτοσύστημα = αλγ/θμος κρυπτογράφησης + αλγ/θμος αποκρυπτογράφησης + κλειδί Ανάγκη για μυστικότητα και αυθεντικοποίηση !!
Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) 1- κοινή θέα 2 3 4- κοινή θέα 5 Τι μπορεί να κάνει η Eve ? (παθητικός) Na «κρυφακούσει» στο βήμα 1 Ώστε να μάθει τον αλγόριθμο… Να «κρυφακούσει» στο βήμα 2 Ώστε να μάθει το κλειδί ! Να «κρυφακούσει» στο βήμα 4 Known-text ή ciphertext-only attack … Ποια από τα παραπάνω βήματα μπορούν να γίνουν σε «κοινή» θέα; Eve
Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) 1- κοινή θέα 2 3 4- κοινή θέα 5 To βήμα 2 πρέπει να περιβάλλεται από Μυστικότητα και Αυθεντικότητα Διαχείριση Κλειδιού σε συμμετρικά συστήματα Εναλλακτικά, H Alice και o Bob μπορούν να χρησιμοποιήσουν ένα κρυπτοσύστημα Δημόσιου κλειδιού… Ανάγκη μόνο για αυθεντικοποίηση! Ποια από τα παραπάνω βήματα μπορούν να γίνουν σε «κοινή» θέα; Eve
Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Na διακόψει την επικοινωνία (π.χ. Βήματα 1, 2 ή 4) Να εισάγει «πλαστά» μηνύματα (Βήμα 2): Εδραιώνει κλειδί με Alice (υποκρινόμενος τον Bob) ή τούμπαλιν (Βήματα 2 & 4): Aν μάθει το κλειδί (κρυφακούοντας ή κρυπταναλύοντας), να υποκριθεί ότι είναι η Alice ή ο Bob (Βήμα 4): Στέλνει τυχαίο μήνυμα, υποκρινόμενος την Alice, το οποίο ο Bob θα αποκρυπτογραφήσει ως «σκουπίδια» (garbage). Τι μπορεί να κάνει o Mallory? (ενεργητικός εχθρός) Mallory
Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού (Συμμετρικοί) Εύλογα, στα συμμετρικά πρωτόκολλα υποθέτουμε ότι υπάρχει αμοιβαία εμπιστοσύνη μεταξύ Alice και Bob Τι μπορεί να κάνει η Alice? Μπορεί να δώσει ένα αντίγραφο του κλειδιού της στην Eve ή στον Mallory Μπορεί (?) νa αρνηθεί ότι έστειλε το μήνυμα Μ Non-Repudiation π.χ. σε περίπτωση όπου ο Bob δείξει σε κάποιον τρίτο το μήνυμα, ισχυριζόμενος ότι το «έγραψε» η Alice Alice
Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) Tα συμμετρικά κρυπτοσυστήματα εμφανίζουν προβλήματα: Τo αρχικό κλειδί πρέπει να ανταλλάσσεται με μυστικότητα Ασφαλές κανάλι (secure channel) στο βήμα 2 Δύσκολο σε «ανοικτά» περιβάλλοντα (π.χ. Internet) Εφικτό σε «κλειστά» περιβάλλοντα (π.χ. τοπικά & εταιρικά δίκτυα μικρού μεγέθους) Περίπτωση: Συνάντηση κατ’ ιδίαν, αποστολή courier,… Περίπτωση: Ο IT administrator δίνει/εισάγει τα κλειδιά στους χρήστες του δικτύου
Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) Εάν ένα κλειδί «σπάσει», τότε: Η Eve θα διαβάζει όλα τα μηνύματα που έχουν κρυπτογραφηθεί με το κλειδί Ο Mallory θα εξαπολύσει επιθέσεις πλαστοπροσωπίας (impersonate, spoofing)
Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. A. Young, M. Yung. Malicious Cryptography – Exploring CryptoVirology. Wiley, 2004 Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Προβλήματα (Διαχείριση Κλειδιού) Κάθε δυάδα χρηστών σε ένα δίκτυο πρέπει να έχει ξεχωριστό κλειδί Αποθήκευση (Storage) Scalability Σημείωση: Οι χρήστες “μιλούν” & με αποκρυσμένους πόρους (π.χ. ΒΔ, servers υπηρεσίες κλπ) που αποτελούν ξεχωριστές οντότητες
Αλγόριθμοι μυστικού κλειδιού Υπολογιστική Ασφάλεια Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Αλγόριθμοι μυστικού κλειδιού Υπολογιστική Ασφάλεια Έστω ότι ο αλγόριθμος κρυπτογράφησης είναι «ασφαλής» Ασφάλεια του κρυπτοσυστήματος Στόχος: Ο μόνος τρόπος για να παραβιαστεί, είναι η δοκιμή όλων των πιθανών κλειδιών Υπολογιστική Ασφάλεια Ας διευκολύνουμε την Eve… Επίθεση «Known-Plaintext» H Eve διαθέτει ένα ή περισσότερα κρυπτογραφημένα μηνύματα, και τα αντίστοιχα αρχικά μηνύματα ! Στη συνέχεια η 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
W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Συμμετρικοί Αλγόριθμοι Αλγόριθμοι Ροής (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, για να το πετύχουμε χρησιμοποιούμε τεχνικές: Σύγχυσης (Confusion) … και επαναλαμβάνουμε τόσες φορές ώστε να προσομοιώσουμε τη λειτουργία μιας τυχαίας αντιμετάθεσης, δηλαδή: Διάχυση (Diffusion): Κάθε (έστω μικρή) αλλαγή θα επηρεάσει όλα τα bit εξόδου (φαινόμενο χιονοστιβάδας) A substitution-permutation network (SPΝ)
Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Συμμετρικοί Αλγόριθμοι Ομάδας Σύγχυση και Διάχυση Επαναλαμβανόμενοι αλγόριθμοι ομάδας (Iterated block Ciphers) Για κάθε block, ο αλγόριθμος εκτελείται περισσότερες από μια φορές (Γύροι – Rounds). π.χ. AES (128bit): 10 rounds DES (56 bit): 16 rounds Ο Shannon πρότεινε το συνδυασμό τεχνικών σύγχυσης και διάχυσης Aναφέρονται και ως Substitution-Permutation Networks (SPNs) π.χ. DES, AES (σήμερα),… Product Ciphers Συνδυασμός («γινόμενο») δύο ή περισσότερων κρυπτοσυστημάτων Παράδειγμα product cipher: Affine Multiplicative cipher Shift cipher
J. Katz, Y. Lindell. Introduction to Modern Cryptography J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Συμμετρικοί Αλγόριθμοι Επαναλαμβανόμενοι Αλγόριθμοι Ομάδας – Δίκτυα SPN
J. Katz, Y. Lindell. Introduction to Modern Cryptography J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Συμμετρικοί Αλγόριθμοι Επαναλαμβανόμενοι Αλγόριθμοι Ομάδας – Δίκτυα SPN Για να ισχύει το φαινόμενο της χιονοστιβάδας, θα πρέπει: Κάθε S-box σχεδιάζεται ώστε αλλάζοντας 1 bit εισόδου επηρεάζει τουλάχιστον 2 bit εξόδου του S-box Οι αναδιατάξεις (mixes) σχεδιάζονται ώστε τα bit εξόδου κάθε S-box διαχέονται σε διαφορετικά S-box κατά τον επόμενο γύρο. Επιπλέον, θέλω όλα τα bit κλειδιού να επηρεάζουν όλα τα bit εξόδου !!! Για 128-bit blocks λοιπόν, τυπικά πρέπει να εκτελούνται τουλάχιστον 7 γύροι !
Συμμετρικοί Αλγόριθμοι Ιστορικά Στοιχεία: Οι αλγόριθμοι DES και AES Η. Mel, D. Baker. Cryptography Decrypted. Addison-Wesley, 2001 Συμμετρικοί Αλγόριθμοι Ιστορικά Στοιχεία: Οι αλγόριθμοι DES και AES David. Kahn. The Codebreakers. Scribner, 1996. H. Feistel Ιστορικά Στοιχεία… 1971: Horst Feistel (ΙΒΜ) Αλγόριθμος Dataseal ή Lucifer 1973: H NIST απευθύνει κάλεσμα για υποβολή προτάσεων, με σκοπό τη δημιουργία προτύπου κρυπτογράφησης 1974: Η IBM υποβάλλει ως πρόταση έναν αλγόριθμο βασισμένο στο Lucifer Πριν την υποβολή, η NSA περιορίζει το μήκος κλειδιού (112 bit 56 bit) 1975: Η NIST δημοσιεύει τον Lucifer ως προτεινόμενο standard 1976: Το πρώτο Workshop 1977: Πρότυπο FIPS PUB 46 Data Encryption Standard 1997: H NIST απευθύνει κάλεσμα για υποβολή προτάσεων, με σκοπό τη δημιουργία ενός νέου προτύπου 15 υποψηφιότητες, εκ των οποίων: Rijndael Serpent Twofish RC6 MARS 2000: H NIST επιλέγει τον Rijndael Advanced Encryption Standard 2001: FIPS PUB 197
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Menezes, Oorschot, Vanstone, Handbook of Applied Cryptography, CRC, 2001 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Για κάθε block, και με βάση το κλειδί Κ, ο αλγόριθμος Εκτελεί ένα συνδυασμό μετασχηματισμών αντικατάστασης και αναδιάταξης … και επαναλαμβάνει τη διαδικασία 16 φορές (rounds) Όλοι οι μετασχηματισμοί που εκτελούνται είναι γνωστοί Η ασφάλεια βασίζεται στη μυστικότητα του κλειδιού Κ
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – (Τύπου Feistel) Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – (Τύπου Feistel) H. Feistel Αρχικά, το 64-bit block χωρίζεται σε δύο 32-bit half-blocks L και R. Αλγόριθμος τύπου Feistel H συνάρτηση f δέχεται στην είσοδο το block R και ένα κλειδί K, και εκτελεί μετασχηματισμούς σύγχυσης και διάχυσης… Η έξοδος της συνάρτησης f γίνεται XOR με το block L, και το αποτέλεσμα γίνεται το R του επόμενου γύρου Το R κάθε γύρου, γίνεται το L του επόμενου γύρου Αλγόριθμοι τύπου Feistel DES, Lucifer, FEAL, Khufu, Khafre, LOKI, GOST, CAST, Blowfish, MARS, MAGENTA, MISTY1, RC5, TEA, Twofish, XTEA, CAST-256, Camellia, MacGuffin, RC2, RC6, Skipjack,…
Αλγόριθμοι Τύπου Feistel http://en.wikipedia.org/wiki/Image:Feistel.png Αλγόριθμοι Τύπου Feistel Ο αλγόριθμος αντιστρέφεται εύκολα (χωρίς ανάγκη να αντιστραφεί η f) Αποκρυπτογράφηση: Ίδιος κώδικας, με χρήση των κλειδιών με αντίθετη σειρά
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 http://en.wikipedia.org/wiki/Image:Data_Encryption_Standard_InfoBox_Diagram.png Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Συνάρτηση f : Δύο αντικαταστάσεις (ΧΟR με K, χρήση των S-box) και Δύο αναδιατάξεις (Ε και P) Επέκταση του R σε 48 bit Συνάρτηση επέκτασης E (1 γύρος) H Συνάρτηση f R= (Expansion function)
Αλγόριθμοι Μυστικού Κλειδιού DES – Συνάρτηση Επέκτασης Ε Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού DES – Συνάρτηση Επέκτασης Ε Αν έχουμε ένα bitstring μήκους 32 π.χ. Α = ( α1,α2,…α32 ) θα επεκταθεί στο μήκους 48 string: (1 γύρος) H Συνάρτηση f R= (Expansion function) E(A) = (a32, a1, a2, a3, a4, a5, a4, …, a31, a32, a1)
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 http://en.wikipedia.org/wiki/Image:Data_Encryption_Standard_InfoBox_Diagram.png Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES Συνάρτηση f : Δύο αντικαταστάσεις (ΧΟR με K, χρήση των S-box) και Δύο αναδιατάξεις (Ε και P) Επέκταση του R σε 48 bit Συνάρτηση επέκτασης E Υπολογισμός του E(R) Κ Γράφουμε το αποτέλεσμα ως 8 ακολουθίες των 6-bit B = B1B2B3B4B6Β7Β8 Για κάθε Bj, χρησιμοποιείται το αντίστοιχο Sj-box (1 γύρος) H Συνάρτηση f R= (Expansion function)
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Τα S-box Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Τα S-box
Αλγόριθμοι Μυστικού Κλειδιού DES – Κάνοντας χρήση των S-box Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού DES – Κάνοντας χρήση των S-box Έστω η ακολουθία Υπολογίζουμε το ως εξής: Τα δύο bit καθορίζουν το δείκτη της γραμμής του Sj που θα χρησιμοποιηθεί για την αντικατάσταση Ta τέσσερα bit καθορίζουν το δείκτη της στήλης του Sj που θα χρησιμοποιηθεί για την αντικατάσταση (1 γύρος) H Συνάρτηση f R= (Expansion function) Παράδειγμα: Έστω η είσοδος στο S1 είναι το: 101000. Σε αυτήν την περίπτωση, η έξοδος του S1 θα είναι: 1101
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Αναδιάταξη P Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Αναδιάταξη P Ta bit εξόδου όλων των S-box αναδιατάσσονται σύμφωνα με την P. π.χ. το bitstring C = ( c1,c2,…c32 ) θα αναδιαταχθεί ως εξής: (1 γύρος) H Συνάρτηση f R= (Expansion function) P(C) = (c16, c7, c20, c21, c29, …, c11, c4, c25)
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Key Schedule Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES – Key Schedule Πώς χρησιμοποιείται τo 64-bit κλειδί K Αρχικά, μετατρέπεται σε 56-bit χρησιμοποιώντας την αναδιάταξη PC-1 Για κάθε γύρο i, δημιουργείται μια «παράλλαγή» του K, με βάση τη σχέση: .. όπου LSi σημαίνει ολίσθηση προς αριστερά .. κατά μία θέση (για i = 1, 2, 9, 16) .. κατά δύο θέσεις (για τα υπόλοιπα i). Πριν χρησιμοποιηθεί, το κλειδί «μειώνεται» σε 48-bit σύμφωνα με την αναδιάταξη PC-2:
Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES - Συνοπτικά F. Bauer. Decrypted Secrets–Methods and Maxims of Cryptology,4th Edition. Springer, 2007. Αλγόριθμοι Μυστικού Κλειδιού Ο Αλγόριθμος DES - Συνοπτικά * (1 γύρος) H Συνάρτηση f
Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα
Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα
Αλγόριθμος DES Παράδειγμα W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Αλγόριθμος DES Παράδειγμα
Simplified DES (S-DES) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Simplified DES (S-DES) *
Simplified DES (S-DES) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Simplified DES (S-DES) *
Simplified DES (S-DES) W. Stallings. Cryptography and Network Security – Principles and Practice, 5th Edition. Pearson, 2011 Simplified DES (S-DES) *
Ασφάλεια του 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 Ασφάλεια του DES Μήκος κλειδιού Stinson, D. Cryptography: Theory and Practice. Third Edition, CRC, 2005 1993: Ο Michael Wiener πρότεινε τη δημιουργία ενός VLSI chip που θα δοκιμάζει 50.000.000 κλειδιά DES το δευτερόλεπτο. Κόστος 10.50 $ ανά chip Συνδυάζοντας 57.000 chip, με κόστος 1.000.000 $, το σύστημα θα μπορούσε να δοκιμάσει όλα τα κλειδιά σε χρόνο 7 ώρες Kατά μέσο όρο 3.5 ώρες για την εύρεση του σωστού κλειδιού … Επενδύοντας $100.000.000, ο συνολικός χρόνος μπορεί να μειωθεί στα 2 λεπτά ! To chip δεν σχεδιάστηκε ποτέ… 1998: H EFF (Electronic Frontier Foundation) δημιουργεί έναν Η/Υ (Deep Crack) αξίας 250.000 $ 1536 chip: 88 δισ. Κλειδιά /sec Το κλειδί DES «έσπασε» σε 56 ώρες 1999: Deep Crack σε συνεργασία με distributed.net project (100K Η/Υ) 245 δισ. Κλειδιά /sec Το κλειδί DES «έσπασε» σε 22 ώρες
DES Προηγμένες Κρυπταναλυτικές Επιθέσεις J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. DES Προηγμένες Κρυπταναλυτικές Επιθέσεις Differential Cryptanalysis (Biham and Shamir, 1991) Κρυπτανάλυση του DES με (χρονική) πολυπλοκότητα 237 Απαιτεί 247 chosen plaintexts Linear Cryptanalysis (Matsui, 1994) Απαιτεί 243 known plaintexts Η επιθεσεις αυτές δεν έχουν μεγάλη πρακτική αξία Έστω τυχαία inputs . Αν και είναι τυχαίο κλειδί, τότε ποια η πιθανότητα να ισχύει
Ασφάλεια του DES Μήκος κλειδιού & Triple Des Mao, W. Modern Cryptography: Theory and Practice. Prentice Hall, 2003 Ασφάλεια του DES Μήκος κλειδιού & Triple Des Η βασική «αδυναμία» του DES είναι το μικρό μήκος κλειδιών που υποστηρίζει Κλειδί 56-bit Ευπαθής σε επιθέσεις εξαντλητικής αναζήτησης brute force attacks Υπάρχει τρόπος να ξεπεραστεί το πρόβλημα με το μήκος κλειδιού; Λύση: Εκτέλεση του αλγορίθμου περισσότερες από μία φορές, με περισσότερα από ένα κλειδιά Cascade Ciphers Παράδειγμα: 3DES Η κρυπτογράφηση μπορεί να περιγραφεί από τη σχέση: Η αποκρυπτογράφηση μπορεί να περιγραφεί από τη σχέση:
Meet-in-the-middle attack J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Meet-in-the-middle attack
Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) Τι συμβαίνει όταν το μήκος του αρχικού μηνύματος είναι μεγαλύτερο των 64 bit; Μία λύση: «τεμαχίζουμε» το μήνυμα σε blocks 64-bit και κρυπτογραφούμε κάθε block ECB mode Προβλήματα Δυο ίδια blocks αρχικού κειμένου αντιστοιχούν σε ίδια blocks κρυπτογραφημένου κειμένου … βλέποντας το κρυπτογράφημα η Eve «κερδίζει» σε γνώση Αν το αρχικό κείμενο εμφανίζει πλεονασμό, τότε: Η Eve μπορεί να εξαπολύσει στατιστικές επιθέσεις O Mallory μπορεί να παίξει ξανά (replay) ένα block, να αλλάξει τη σειρά των blocks η να τροποποι-ήσει τα blocks, προς όφελος του
Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB Τράπεζα Α Τράπεζα Β Ο Mallory, που είναι πελάτης της Α και της Β, εξαπολύει την εξής επίθεση: Μεταφέρει διάφορα ποσά (π.χ. 1$, 10$, 100$) από την τράπεζα Α στην τράπεζα Β, όσες φορές χρειαστεί, μέχρι να εντοπίσει τα blocks που εξουσιοδοτούν τη μεταφορά του (όποιου) ποσού στον λογαριασμό του… Παθητική επίθεση (υποκλοπή)
Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB Schneier, Bruce. Applied Cryptography. John Wiley & Sons, Inc., 2nd edition, 1996. Τρόποι λειτουργίας (Cipher Modes) Προβλήματα Ασφάλειας με το ECB … ο Mallory δε γνωρίζει το κλειδί Κ που χρησιμοποιούν οι δύο τράπεζες για την επικοινωνία τους Τράπεζα Α Τράπεζα Β Σε “μελλοντικές” μεταφορές χρημάτων της Alice (ή, οποιουδήποτε άλλου), μπορεί να εισάγει στην θέση των blocks 5-13, τα blocks που είχε υποκλέψει και που εξουσιοδοτούν τη μεταφορά ποσού στο λογαριασμό του… Ενεργητική επίθεση στην ακεραιότητα του συστήματος
Τρόποι λειτουργίας (Cipher Modes) CBC mode - encryption 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 αρχικού κειμένου, αλλά και από όλα τα προηγούμενα…
Τρόποι λειτουργίας (Cipher Modes) CBC mode - decryption C. Kaufman, R. Perlman, M. Speciner. Network Security – Private Communication in a Public World. 2002 Τρόποι λειτουργίας (Cipher Modes) CBC mode - decryption Η τιμή IV στέλνεται στον παραλήπτη (in the clear) – αλλιώς, δεν μπορεί να γίνει αποκρυπτογράφηση !
Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) J. Katz, Y. Lindell. Introduction to Modern Cryptography. Chapman & Hall/CRC, 2008. Συμμετρικοί αλγόριθμοι Τρόποι λειτουργίας (Cipher Modes) Ακολουθία PRNG: Κρυπτογράφηση: Άλλα modes (π.χ. OFB, CFB) μπορούν να χρησιμοποιηθούν ως Γεννήτορες PRNG Ένας αλγόριθμος ομάδας δηλαδή, μπορεί να χρησιμοποιηθεί και ως αλγόριθμος ροής (stream cipher) Ακολουθία PRNG: Κρυπτογράφηση:
Συμμετρικοί αλγόριθμοι Ακεραιότητα με CBC MAC 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
Ο αλγόριθμος AES Υποστήριξη κλειδιών μήκους: 128, 192, ή 256-bit N. Ferguson, B. Schneier. Practical Cryptography. Wiley, 2003. Ο αλγόριθμος AES Υποστήριξη κλειδιών μήκους: 128, 192, ή 256-bit animation: http://www.conxx.net/rijndael_anim_conxx.html