Σύγχρονη Κρυπτογραφία: Μήπως Κινδυνεύουμε; Παναγιώτης Ριζομυλιώτης 1,2 1 ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ,ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ 2 ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ,ΕΘΝΙΚΟ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Email: prizomil@aegean.gr, rizop@di.uoa.gr 1
Εφαρμοσμένη Κρυπτογραφία Military secrets Governmental secrets E-banking E-health E-commerce E-voting E-???? 2
Εφαρμοσμένη Κρυπτογραφία 3
4
Ασφαλείς Επικοινωνίες ή όταν η Alice γνώρισε το Bob Alice Bob 5
Ασφαλείς Επικοινωνίες ή όταν η Alice γνώρισε το Bob Alice Bob Eve 6
Εμπιστευτικότητα (confidentiality) Τι έστειλε η Alice στο Bob; Alice Bob Eve 7
Αυθεντικοποίηση (authentication) Ειμαι η Alice Alice Bob Eve 8
Ακεραιότητα (integrity) Alice Bob Έλαβα ό,τι μου έστειλε Alice; Eve 9
Μη-αποποίηση (non-repudiation) Σου έστειλα τα χρήματα Δεν τα έλαβα ποτέ! Alice Bob Eve 10
Συμμετρική Κρυπτογραφία Alice Bob Eve ΤΟ ΙΔΙΟ ΚΛΕΙΔΙ 11
Ασύμμετρη Κρυπτογραφία Alice Bob Eve ΔΙΑΦΟΡΕΤΙΚΟ ΚΛΕΙΔΙ 12
Ιστορική Αναδρομή Μέχρι το 1930: Κυρίως αλγόριθμοι οι οποίοι μπορούσαν να εφαρμοστούν στο χαρτί (π.χ. Κρυπτογραφικός Αλγόριθμος του Καίσαρα, Vigenere) 1930-1950: 1950: Ηλεκτρομηχανικά Συστήματα (π.χ. οι μηχανές Enigma, Purple) Δεκαετία του 70: Public Key Cryptography: Diffie and Hellman: New Directions in Cryptography (1978) and Rivest,, Shamir, Adleman: A A Method for Obtaining Digital Signatures and Public-Key Cryptosystems (1978) Block Cipher DES (NSA-IBM) 13
Τα μαθηματικά εργαλεία της Κρυπτογραφίας Finite Fields (συνήθως( για Galois Fields με χαρακτηριστική 2) Groups Zp, Zp* Algorithms for Modular Arithmetic gcd Extended Euclid (inverse mod p) Chinese Remainder Theorem (CRT) Exponentiation Rabin-Miller prime testing Error Correction Coding Theory and Information Theory (Reed- Muller codes, Turbo codes, Convolutional codes, MDC) Chaos Theory Quantum Theory 14
Τρία Παραδείγματα (Κακής) Ο κακός Block Ciphers Keeloq O αφελής Steam Ciphers RC4 WEP Κι ο άσχημος Hash functions MD5, collisions Digital signatures Κρυπτογραφίας 15
Οι αρχές του C. Shannon «Communication Theory of Secrecy Systems», Bell System Technical Journal, vol.28(4), page 656 715, 1949. Confusion: Ένας κρυπτογραφικός αλγόριθμος πρέπει να «καταστρέφει» τα στατιστικά χαρακτηριστικά του μη-κρυπτογραφημένου μηνύματος Substitution (a -> > b, b πχ Caesar s s cipher) Diffusion: Ένας κρυπτογραφικός αλγόριθμος πρέπει να διαχέει την επίδραση κάθε στοιχείου του μη-κρυπτογραφημένου μηνύματος και του κλειδιού όσο το δυνατόν περισσότερο. Transposition or Permutation (abcd -> dacb) (30/4/1916 24/2/ 2001) 16
Οι αρχές του C. Shannon 17
Block Ciphers Το προς κρυπτογράφηση κείμενο χωρίζεται σε μπλοκ των n bits. 18
Block Ciphers Key Plaintext E Ciphertext D Plaintext Des: Το παλιό στάνταρντ AES (Rijndeal): Το νέο στάνταρντ 3-DES Mars RC6 Serpent Blowfish IDEA 19
Block Ciphers Key Key Expansion Plaintext Round 1 Round 2 Round 3 Round n Ciphertext 20
Shannon s Confusion Ένας γύρος του AES 1. S-box, S(x)= x -1 in GF(2 8 ) 2. Rotation Shannon s Diffusion 3. Linear transformation: MDC 4. Modulo 2 addition 21
KeeLoq (ο κακός ) 22
KeeLoq Ασύρματο Σύστημα για ξεκλείδωμα και εκκίνηση αυτοκινήτων 23
KeeLoq 24
KeeLoq Επίθεση αποκάλυψης του μυστικού κλειδιού (EUROCRYPT 2008) Βασίζεται σε Slide attack Meet-in-the-Middle Χρειάζεται 16 2 44 2 Στην πράξη known plaintext KeeLoq encryptions Σε 65 λεπτά τα απαραίτητα δεδομένα Σε περίπου 7 μέρες σε AMD Athlon 64 X2 Dual Core το μυστικό κλειδί του αυτοκινήτου 25
KeeLoq - Επιθέσεις 1. Andrey Bogdanov, «Cryptanalysis of the KeeLoq block cipher», Cryptology eprint Archive, Report 2007/055, http://eprint.iacr.org/2007/055/ 2. Andrey Bogdanov, «Attacks on the KeeLoq Block Cipher and Authentication Systems», 3rd Conference on RFID Security 2007, RFIDSec 2007 3. Nicolas T. Courtois and Gregory V. Bard, «Algebraic and Slide Attacks on KeeLoq», Cryptology eprint Archive, Report 2007/062, http://eprint.iacr.org/2007/062/ 4. S. Indesteege, N. Keller, E. Biham, O. Dunkelman, and B. Preneel, "A Practical Attack on KeeLoq," In Advances in Cryptology - EUROCRYPT 2008, Lecture Notes in Computer Science 4965, N. Smart (ed.), Springer-Verlag, pp. 1-18, 2008 5. Thomas Eisenbarth and Timo Kasper and Amir Moradi and Christof Paar and Mahmoud Salmasizadeh and Mohammad T. Manzuri Shalmani, «Physical Cryptanalysis of KeeLoq Code Hopping Applications», Cryptology eprint Archive, Report 2008/058, http://eprint.iacr.org/2008/058 26
KeeLoq Υπολογισμός του μυστικού κλειδιού αυτοκινήτου KA = KE 1 SN 1 Μετά από κρυπτανάλυση KA 1 Αλλά το SN 1 είναι δημόσια γνωστή πληροφορία!!!! Άρα, υπολογίζω το κλειδί της εταιρίας KE = KA 1 SN 1 και από αυτό όλα τα κλειδιά των αυτοκινήτων!!!! KA i = KE SN, i >1 i 27
Συμπεράσματα - 1 Μη χρησιμοποιείτε αλγορίθμους που δεν έχουν αξιολογηθεί με ανοιχτή διαδικασία Το μυστικό πρέπει να είναι μόνο το κλειδί κι όχι ο αλγόριθμος (Αρχή του Kerckhoff) Αν θέλετε να χρησιμοποιήσετε κρυπτογραφία ρωτείστε (πολλούς) ειδικούς 28
Stream Ciphers Κρυπτογράφηση του κείμενο ανά bit. Alice Μη κωδικοποιημένο μήνυμα Μ + Κωδικοποιημένο μήνυμα C + Μη κωδικοποιημένο μήνυμα Μ Bob Γεννήτρια Ψευδοτυχαίας Ακολουθίας Γεννήτρια Ψευδοτυχαίας Ακολουθίας Ιδιωτικό κλειδί Κ και IV Ιδιωτικό κλειδί Κ και IV Κωδικοποίηση: C(t)=M(t)+y(t) Αποκωδικοποίηση: M(t)=C(t)+y(t) Βασίζονται στο one-time pad Θεωρούνται πιο γρήγοροι από τους Block ciphers! Σχεδιασμός για συσκευές με περιορισμό στο hardware και στην κατανάλωση ενέργειας (RFID tags) 29
Stream Ciphers Παράδειγμα E0 (Bluetooth) A5 (GSM) RC4 (WEP) SNOW (3G) MUGI (3G) OFB mode των Block ciphers Διαγωνισμός Estream (ECRYPT, NoE) Trivium,, Grain (hardware oriented) Salsa, HC (software oriented) 30
RC4 RSA, 1987 (εταιρικό μυστικό) Ron Rivest Cypherpunks mailing list,, 1994 (1947- ) MIT, EECS RSA Key Schedule for i from 0 to 255 S[i] := i j := 0 for i from 0 to 255 j := (j + S[i] + key[i mod keylength]) mod 256 swap(s[i],s[j]) Keystream Generation i := 0, j := 0 while GeneratingOutput: i := (i + 1) mod 256 j := (j + S[i]) mod 256 swap(s[i],s[j]) output S[(S[i] + S[j]) mod 256] 31
RC4 32
Wired Equivalent Privacy, WEP (o αφελής ) 802.11 standard (1999) Στόχοι του WEP Αυθεντικοποίηση Ακεραιότητα Εμπιστευτικότητα 33
WEP 34
WEP IV original unencrypted packet checksum key RC4 IV encrypted packet 35
Ακεραιότητα Οι στόχοι του WEP (P, CRC(P)) RC4(K) (P, CRC(P)) RC4(K) (Δ, CRC(Δ)) Αυθενικοποίηση Εμπιστευτικότητα (λίγα IVs, κακή χρήση του RC4) 36
Επιθέσεις Andrea Bittau, Mark Handley,, and Joshua Lackey. The final nail in WEP's cofi fin. In IEEE Symposium on Security and Privacy, pages 386-400. IEEE Computer Society,, 2006. 2. Nikita Borisov, Ian Goldberg,, and David Wagner. Intercepting mobile communications: the insecurity of 802.11. In ACM MobiCom 2001, pages 180-189. 189. ACM Press,, 2001. 3. Rafik Chaabouni. Break WEP faster with statistical analysis. Technical report, EPFL, LASEC, June 2006. http://lasecwww.epfl.ch/pub/lasec/doc/cha06.pdf. Scott R. Fluhrer, Itsik Mantin,, and Adi Shamir. Weaknesses in the key scheduling algorithm of RC4. In Serge Vaudenay and Amr M. Youssef, editors, Selected Areas in Cryptography 2001, volume 2259 of Lecture Notes in Computer Science, pages 1-24. Springer,, 2001. Andreas Klein. Attacks on the RC4 stream cipher. submitted to Designs, Codes and Cryptography,, 2007. KoreK. chopchop (experimental WEP attacks). http://www.netstumbler.org/showthread.php?t=12489, 2004. KoreK. Next generation of WEP attacks?? http://www.netstumbler.org/showpost.php?p=93942&postcount=35, 2004. Subhamoy Maitra and Goutam Paul. Many keystream bytes of RC4 leak secret key information. Cryptology eprint Archive, Report 2007/261, 2007. http:// //eprint.iacr.org/. Toshihiro Ohigashi, Hidenori Kuwakado,, and Masakatu Morii.. A key recovery attack on WEP with less packets. to be published,, 2007. Yuko Ozasa, Yoshiaki Fujikawa, Toshihiro Ohigashi, Hidenori Kuwakado,, and Masakatu Morii.. A study on the Tews, Weinmann, Pyshkin attack against WEP. In IEICE Tech. Rep., volume 107 of ISEC2007-47, pages 17{21, Hokkaido, July 2007. Thu, Jul 19, 2007 - Fri, Jul 20 : Future University-Hakodate (ISEC, SITE, IPSJ-CSEC). Adam Stubblefield, John Ioannidis, and Aviel D. Rubin. A key recovery attack on the 802.11b wired equivalent privacy protocol (WEP). ACM Transactions on Information and System em Security, 7(2):319{332, May 2004. Erik Tews, Ralf-Philipp Weinmann,, and Andrei Pyshkin, Breaking 104 bit WEP in less than 60 seconds, Cryptology eprint Archive, Report 2007/120 120,, 2007. http:// //eprint.iacr.org/. 37
WEP Κι όμως χρησιμοποιείται (2006) Γερμανία 38
Συμπεράσματα - 2 Μη χρησιμοποιείτε το WEP!!! - Υπάρχει το WAP Είναι σημαντικό η σχεδίαση να είναι ανοιχτή διαδικασία. Το WEP είναι η ζωντανή απόδειξη: - Όλες οι πιο πάνω αδυναμίες ήταν εύκολο να εντοπιστούν. Μη σχεδιάζετε ΠΟΤΕ το δικό σας πρωτόκολλο (είναι πιο δύσκολο από όσο νομίζετε) 39
Ηash functions Αρχικό Μήνυμα Μεταβλητού μήκους «Μονόδρομη συνάρτηση μεταβλητού μεγέθους εισόδου και εξόδου σταθερού μήκους» MD4, MD5 Hash Function Digest SHA-1, SHA-256, SHA-512 RIMPEMD Tiger, Whirlpool Block cipher based 40
Ιδιότητες των Hash functions 41
Hash Functions 42
MD5 Παράγει 128-bit hash. 1991 (R. Rivest ) Το μήνυμα χωρίζεται σε τμήματα των 512 bits. M 1 M 2 M n H 0 =IV 0 fixed f f f H 1 H 2 H n = H M i H i 512 bits 128 bits 43
Βασικό βήμα του MD5 Το βασικό βήμα επαναλαμβάνεται 4 φορές για κάθε round Εύρεση collisions μέσα σε λίγα λεπτά!! Δοκιμάστε το και μόνοι σας 44
Collision Attacks είναι τόσο σημαντικές; Ψηφιακή υπογραφή: Message Sender Message Receiver Message Message Hash function Digest Public Key Hash function Private Key Encryption Decryption Signature Expected Digest Digest 45
Αδυναμία του MD5 (σενάριο Σενάριο της Επίθεσης 1. Έστω ότι Alice επίθεσης) δουλεύει για τον Ιούλιο Καίσαρα στη Ρώμη 2. Η Alice ζητάει μια συστατική επιστολή και ο Καίσαρας συμφωνεί να της τη δώσει 3. Η Alice ετοιμάζει την επιστολή και ο Καίσαρας την υπογράφει ψηφιακά 4. Ύστερα από μερικές μέρες παρουσιάζεται πρόβλημα στην ασφάλεια των μυστικών εγγράφων του Καίσαρα.. 46
Σενάριο επίθεσης 1. Ο Καίσαρας χρησιμοποιεί MD5 και η Alice είναι σε θέση να βρει collisions για το MD5 Έστω Χ1 και Χ2 τέτοια ώστε MD5(X1)=MD5(X2) 2. Κατασκευάζει δυο κείμενα χρησιμοποιώντας postscript 47
Σενάριο επίθεσης Έστω ότι Χ1= 1=preamble;R1 Χ2=preamble;R2 Αν το R1=R1, να εμφανίζεται το κείμενο Τ1 Αν το R2 R1, να εμφανίζεται το κείμενο Τ2 48
Σενάριο επίθεσης Από κατασκευής MD5(Χ1)= MD5(Χ2) Αλλά γνωρίζω ότι MD5(Χ1 1 S) S)= MD5(Χ2 S) Άρα, MD5(Υ1)= MD5(Υ2) 49
Σενάριο επίθεσης Κείμενο με την υπογραφή του Καίσαρα Κείμενο με την ίδια τιμή hash Ίδιο Digest!!!!! 50
Collision Attacks είναι τόσο σημαντικές; Ναι, ανάλογα με την εφαρμογή!! Message Sender Message 1 Message 2 Hash function Digest Hash function Private Key Encryption Signature 51
Collision Attacks είναι τόσο σημαντικές; ΝΑΙ Ψηφιακή υπογραφή: Message Sender Message Receiver Message Message Hash function Digest Public Key Hash function Private Key Encryption Decryption Signature Expected Digest Digest 52
Συμπεράσματα - 3 Διαγωνισμός για το νέο στάνταρντ Ξεκινάει τέλη του 2008 Αναμένεται να κρατήσει μέχρι το τέλος του 2012 http://csrc.nist.gov/groups/st/hash/timeline.ht ml Μέχρι τότε SHA-1 1 (μέχρι( το 2010) και μετά SHA-256! Whirlpool (μοιάζει( να είναι ασφαλής λύση) 53
Ευχαριστώ για την προσοχή σας Ερωτήσεις; Βιβλιογραφία (γενικά για Κρυπτογραφία) Practical Cryptography, Ferguron & Schneier A practical approach to building secure systems. Cryptography, Theory and Practice, Stinson Mathematics of cryptography and cryptanalysis. Handbook of Applied Cryptography, Menezes Free online reference, very theoretical. 54
Key Round Key S S S S P One Round Schedule S S S S P... S S S S P 55