Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία - Ανταλλαγή Κλειδιού Diffie Hellman

Σχετικά έγγραφα
Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία - Ανταλλαγή Κλειδιού Diffie Hellman

Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία

Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία - Ανταλλαγή Κλειδιού Diffie Hellman

Επιθέσεις και Ασφάλεια Κρυπτοσυστημάτων

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτοσύστημα RSA (Rivest, Shamir, Adlemann, 1977) Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτογραφία Δημοσίου Κλειδιού

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Εισαγωγή. Χρήστος Ξενάκης

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Το κρυπτοσύστημα RSA

Κρυπτοσυστήματα Διακριτού Λογαρίθμου

Το κρυπτοσύστημα RSA

Κρυπτοσυστήματα Διακριτού Λογαρίθμου

Κρυπτοσυστήματα Διακριτού Λογαρίθμου

Ψευδο-τυχαιότητα. Αριθµοί και String. Μονόδροµες Συναρτήσεις 30/05/2013

Public Key Cryptography. Dimitris Mitropoulos

Κρυπτογραφία. Κρυπτοσυστήματα ροής. Πέτρος Ποτίκας. Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Κεφάλαιο 1. Εισαγωγή. 1.1 Εισαγωγή Ιστορική Αναδρομή

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

1 Diffie-Hellman Key Exchange Protocol

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Το κρυπτοσύστημα RSA. Παναγιώτης Γροντάς - Άρης Παγουρτζής 20/11/2018. ΕΜΠ - Κρυπτογραφία ( ) RSA 1 / 51

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Κρυπτογραφία. MAC - Γνησιότητα/Ακεραιότητα μηνύματος. Πέτρος Ποτίκας

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Ασύμμετρη Κρυπτογραφία. Χρήστος Ξενάκης

Βασικές Έννοιες Κρυπτογραφίας

Κρυπτογραφικά Πρωτόκολλα

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

Εφαρμοσμένη Κρυπτογραφία Ι

ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ

Κρυπτοσυστήματα Δημοσίου Κλειδιού

Threshold Cryptography Algorithms. Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Θεμελιώδη Υπολογιστικά Προβλήματα στην Κρυπτογραφία

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings

Εισαγωγή στην επιστήμη της Πληροφορικής και των. Aσφάλεια

Διαλογικά Συσ τήματα Αποδείξεων Διαλογικά Συστήματα Αποδείξεων Αντώνης Αντωνόπουλος Κρυπτογραφία & Πολυπλοκότητα 17/2/2012

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ

Blum Blum Shub Generator

Κρυπτογραφία. Ψευδοτυχαιότητα - Κρυπτοσυστήματα ροής. Άρης Παγουρτζής - Πέτρος Ποτίκας

Συμμετρικά κρυπτοσυστήματα

Κρυπτογραφία. Κεφάλαιο 1 Γενική επισκόπηση

Ψηφιακές Υπογραφές. Παναγιώτης Γροντάς - Άρης Παγουρτζής. ΕΜΠ - Κρυπτογραφία - ( ) 28/11/2017. Digital Signatures 1 / 57

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 ΕΠΙΜΕΛΕΙΑ :ΣΤΟΥΚΑ ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΜΕΤΑΠΤΥΧΙΑΚΟ:ΜΠΛΑ

ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή 2. Θεωρία αριθμών Αλγεβρικές δομές 3. Οι κρυπταλγόριθμοι και οι ιδιότητές τους

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων. Κρυπτογραφία. Διαχείριση κλειδιών. Χρήστος Ξενάκης

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

κρυπτογραϕία Ψηφιακή ασφάλεια και ιδιωτικότητα Γεώργιος Σπαθούλας Msc Πληροφορική και υπολογιστική βιοιατρική Πανεπιστήμιο Θεσσαλίας

Παύλος Εφραιμίδης. προηγμένα κρυπτογραφικά πρωτόκολλα. Ασφ Υπολ Συστ

8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας

ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής. Συμμετρική Κρυπτογραφία

El Gamal Αλγόριθμος. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 7 2

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 8 η. Βασίλης Στεφανής

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Στοιχεία Θεωρίας Αριθμών

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας

Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές

Εφαρμοσμένη Κρυπτογραφία Ι

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3

Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής ΠΜΣ Κρυπτογραφία και Εφαρμογές

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Αποδείξεις Μηδενικής Γνώσης

Εφαρμοσμένη Κρυπτογραφία Ι

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων.

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Symmetric Cryptography. Dimitris Mitropoulos

Εφαρμοσμένη Κρυπτογραφία Ι

Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. PGP (Pretty Good Privacy)

Κρυπτογραφία και Ηλεκτρονικοί Υπολογιστές. ΣΥΝΤΕΛΕΣΤΕΣ: Κραβαρίτης Αλέξανδρος Μαργώνη Αγγελική Χαλιμούρδα Κων/να

Πληροφορική Ι. Μάθημα 10 ο Ασφάλεια. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Γκόγκος Χρήστος

Αριθμοθεωρητικοί Αλγόριθμοι

Ψηφιακές Υπογραφές. Παναγιώτης Γροντάς - Άρης Παγουρτζής 09/12/2016. ΕΜΠ - Κρυπτογραφία - ( )

1.1. Ορισμοί και ορολογία

UP class. & DES και AES

Κρυπτογραφία. Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Ασφάλεια Πληροφοριακών Συστημάτων

Εφαρμοσμένη Κρυπτογραφία Ι

Κεφάλαιο 2. Κρυπτογραφικά εργαλεία

Transcript:

Μοντέλα και Αποδείξεις Ασφάλειας στην Κρυπτογραφία - Ανταλλαγή Κλειδιού Diffie Hellman Παναγιώτης Γροντάς - Άρης Παγουρτζής ΕΜΠ - Κρυπτογραφία (2017-2018) 07/11/2017 Formal Models - DHKE 1 / 46 Περιεχόμενα Ορισμός Κρυπτοσυστήματος Δυνατότητες Αντιπάλου - Επιθέσεις Εμπειρική Ασφάλεια (Kerckhoffs) - Σημασιολογική Ασφάλεια - Μη Διακρισιμότητα Γενική Μορφή Κρυπτογραφικών Αναγωγών Ανταλλαγή Κλειδιού Diffie Hellman Formal Models - DHKE 2 / 46

Κρυπτοσύστημα I CS = (M, K, C, KeyGen, Encrypt, Decrypt) M: Σύνολο Μηνυμάτων K: Σύνολο Κλειδιών C: Σύνολο Κρυπτοκειμένων KeyGen(1 λ ) = (key enc, key dec ) K 2 Πιθανοτικός Αλγόριθμος Το κλειδί συνήθως επιλέγεται ομοιόμορφα από το K λ : Παράμετρος ασφάλειας - πλήθος bits του κλειδιού Encrypt(key enc, m) = c C Ντετερμινιστικός Αλγόριθμος: Κάθε μήνυμα αντιστοιχεί σε ένα κρυπτοκείμενο Πιθανοτικός Αλγόριθμος: Κάθε μήνυμα αντιστοιχεί σε ένα σύνολο πιθανών κρυπτοκειμένων Decrypt(key dec, c) = m Formal Models - DHKE Ορισμοί 3 / 46 Κρυπτοσύστημα II Παρατηρήσεις: Συμμετρικό Κρυπτοσύστημα key enc = key dec Ασύμμετρο Κρυπτοσύστημα key enc key dec Κρυπτογραφία Δημοσίου Κλειδιού Το key enc μπορεί να δημοσιοποιηθεί για την εύκολη ανταλλαγή μηνυμάτων Ορθότητα σε κάθε περίπτωση: Decrypt(key dec, Encrypt(key enc, m)) = m, m M Formal Models - DHKE Ορισμοί 4 / 46

Ο αντίπαλος A Στόχος: Να σπάσει το κρυπτοσύστημα Δηλαδή, με δεδομένο το c: Να μάθει το κλειδί k; Επίθεση Πυρηνικής Βόμβας Θέλουμε να προστατεύσουμε το μήνυμα Encrypt(k, m) = m παρέχει ασφάλεια αλλά όχι μυστικότητα Να μάθει ολοκληρο το αρχικό μήνυμα m; Αν μάθει το 90%; Να μάθει κάποια συνάρτηση του m; Ναι αλλά ποια; Συμπέρασμα:Χρειάζονται ακριβείς ορισμοί Για το τι σημαίνει σπασιμο Για τις δυνατότητες και τα μέσα του αντιπάλου. Formal Models - DHKE Ορισμοί 5 / 46 Δυνατότητες και Μέσα (Ιστορικά) I Επιθέσεις Επίθεση Μόνο Κρυπτοκειμένου - Ciphertext Only Attack (COA) Παθητικός Αντίπαλος Πολύ εύκολη: Χρειάζεται απλά πρόσβαση στο κανάλι επικοινωνίας Formal Models - DHKE Ορισμοί 6 / 46

Δυνατότητες και Μέσα (Ιστορικά) II Επίθεση Γνωστού Μηνύματος - Known Plaintext Attack (KPA) Παθητικός Αντίπαλος Γνωρίζει ζεύγη μηνυμάτων - κρυπτοκειμένων Ρεαλιστικό σενάριο για συμμετρικά Ακόμα και τα απόρρητα πρωτόκολλα περιέχουν μη απόρρητα μηνύματα (handshakes, ack) Enigma: Κρυπτοκείμενα πρόγνωσης καιρού Κρυπτογραφημένα μηνύματα γίνονται κάποια στιγμή διαθέσιμα Τετριμμένο σενάριο για ασύμμετρα O A έχει το δημόσιο κλειδί Μπορεί να κατασκευάσει μόνος του όσα ζεύγη θέλει Formal Models - DHKE Ορισμοί 7 / 46 Δυνατότητες και Μέσα (Ιστορικά) III Επίθεση Επιλεγμένου Μηνύματος - Chosen Plaintext Attack (CPA) Ενεργός Αντίπαλος Γνωρίζει ζεύγη μηνυμάτων - κρυπτοκειμένων Μπορεί να ζητήσει την κρυπτογράφηση μηνυμάτων της επιλογής του (Μαντείο Κρυπτογράφησης) Ιστορικό Παράδειγμα: Η ναυμαχία του Midway (1942) Αποστολή Πλαστών Μηνυμάτων Με Την Λέξη Midway Συλλογή Επικοινωνιών Με Κρυπτοκείμενα AF Συσχέτιση με παλιότερες επικοινωνίες Formal Models - DHKE Ορισμοί 8 / 46

Δυνατότητες και Μέσα (Ιστορικά) IV Επίθεση Επιλεγμένου Κρυπτοκειμένου - Chosen Ciphertext Attack (CCA) Ενεργός Αντίπαλος Γνωρίζει ζεύγη μηνυμάτων - κρυπτοκειμένων Μπορεί να ζητήσει την κρυπτογράφηση μηνυμάτων της επιλογής του (Μαντείο Κρυπτογράφησης) Μπορεί να επιτύχει την αποκρυπτογράφηση μηνυμάτων της επιλογής του (Μαντείο Αποκρυπτογράφησης) Ο αντίπαλος μπορεί να βγάλει έμμεσα συμπεράσματα από αντιδράσεις σε κρυπτογραφημένα μηνύματα Απόρριψη κρυπτογραφημένων σκουπιδιών από το πρωτόκολλο (Bleichenbacher RSA PKCS1 attack) Ενέργεια στον πραγματικό κόσμο (πχ. αγορά μετοχών) Formal Models - DHKE Ορισμοί 9 / 46 Οι κανόνες του Kerchoffs (1883) I Οι πρώτες προσπάθειες ορισμού ασφάλειας κρυπτοσυστήματων και προστασίας Αρχή 2 Ο αλγόριθμος(από)κρυπτογράφησης δεν πρέπει να είναι μυστικός. Πρέπει να μπορεί να πέσει στα χέρια του A χωρίς να δημιουργήσει κανένα πρόβλημα. Αντίθετα το κλειδί μόνο πρέπει να είναι μυστικό. Λόγοι: Tο κλειδί διανέμεται πιο εύκολα από τους αλγόριθμους (μικρότερο μέγεθος, απλούστερη δομή) Το κλειδί είναι πιο εύκολο να αλλαχθεί αν διαρρεύσει Πιο πρακτική χρήση για περισσότερους από έναν συμμετέχοντες Formal Models - DHKE Ορισμοί 10 / 46

Οι κανόνες του Kerchoffs (1883) II Ανοικτό κρυπτοσύστημα: Εύκολη μελέτη Παρατηρήσεις: Αν και έχουν παράδοση ακόμα και σήμερα δεν εφαρμόζονται πλήρως (Μεγάλες) εταιρίες δημιουργούν και χρησιμοποιούν δικούς τους μυστικούς αλγόριθμους/πρωτόκολλα Bruce Schneier Crypto Snake Oil Formal Models - DHKE Ορισμοί 11 / 46 Οι κανόνες του Kerchoffs (1883) III Αρχή 1 Το κρυπτοσύστημα θα πρέπει να είναι πρακτικά απρόσβλητο, αν δεν γίνεται θεωρητικά Διάρκεια Κρυπτανάλυσης > Διάρκεια Ζωής Μηνύματος Μικρή Πιθανότητα Επιτυχίας Υπολογιστική Ασφάλεια Σε κάθε περίπτωση - Εμπειρικές Αρχές: Δεν αντιστοιχίζονται σε κάτι απτό Formal Models - DHKE Ορισμοί 12 / 46

Γενικά Ιδέα Μαθηματική (Λογική) απόδειξη ότι το κρυπτοσύστημα έχει κάποιες ιδιότητες ασφάλειας. Παράδειγμα: Τέλεια μυστικότητα (Shannon) Πρόβλημα: Μπορεί να εφαρμοστεί στην κρυπτογραφία δημοσίου κλειδιού; Γιατί; Επαναχρησιμοποίηση δημοσίου κλειδιού Formal Models - DHKE Αποδείξιμη Ασφάλεια 13 / 46 Σημασιολογική Ασφάλεια I Βασική ιδέα (Goldwasser, Micali): Χαλαρώνουμε τις υποθέσεις για να οδηγηθούμε σε έναν πιο χρήσιμο ορισμό, λαμβάνοντας υπόψιν: την υπολογιστική ισχύ του A την πιθανότητα επιτυχίας το είδος των επιθέσεων Διαίσθηση Ένας υπολογιστικά περιορισμένος A δεν μπορεί να μάθει τίποτε χρήσιμο από το κρυπτοκείμενο παρά μόνο με αμελητέα πιθανότητα Formal Models - DHKE Αποδείξιμη Ασφάλεια 14 / 46

Σημασιολογική Ασφάλεια II Ρητή Προσέγγιση Ένα κρυπτοσύστημα είναι (τ, ϵ) ασφαλές αν οποιοσδήποτε A σε χρόνο το πολύ τ, δεν μπορεί να το σπάσει με πιθανότητα καλύτερη από ϵ Για συμμετρικά κρυπτοσυστήματα σήμερα τ = 2 80 και ϵ = 2 64 Δεν χρησιμοποιείται γιατί Δεν ασχολείται με το υπολογιστικό μοντέλο (κατανεμημένοι υπολογιστές, εξειδικευμένο HW κτλ.) Δεν ασχολείται με το τι θα γίνει μετά το τ Για τους ίδιους λόγους με Υπολογιστική Πολυπλοκότητα Formal Models - DHKE Αποδείξιμη Ασφάλεια 15 / 46 Σημασιολογική Ασφάλεια III Ασυμπτωτική Προσέγγιση Ένα κρυπτοσύστημα είναι ασφαλές αν οποιοσδήποτε PPT A έχει αμελητέα πιθανότητα να το σπάσει (σε σχέση με την παράμετρο ασφάλειας) Παρατηρήσεις: Ισχύει για μεγάλες τιμές του λ Συνέπεια του K < M Επιτρέπει προσαρμογή της ασφάλειας με αλλαγή του μήκους του κλειδιού Formal Models - DHKE Αποδείξιμη Ασφάλεια 16 / 46

Σημασιολογική Ασφάλεια IV Τυπικός Ορισμός: Υποθέσεις O A θέλει να υπολογίσει το κατηγόρημα q : M {0, 1} Pr m M [q(m) = 0] = Pr m M [q(m) = 1] = 1 2 Το μήκος των κρυπτοκειμένων είναι το ίδιο (δεν διαρρέει πληροφορία) Το πλεονέκτημα του A Adv(A) = Pr[A(c) = q(decrypt(key, c))] 1 2 Παρατήρηση: Αν ο A μαντέψει στην τύχη έχει Adv(A) = 0 Formal Models - DHKE Αποδείξιμη Ασφάλεια 17 / 46 Σημασιολογική Ασφάλεια V Ορισμός Ένα κρυπτοσύστημα είναι σημασιολογικά ασφαλές όταν PPT A, q: Adv(A) = negl(λ) Αμελητέα συνάρτηση: Μεγαλώνει με πιο αργό ρυθμό από αντίστροφο πολυώνυμο Formal Models - DHKE Αποδείξιμη Ασφάλεια 18 / 46

Σημασιολογική Ασφάλεια VI Αμελητέα συνάρτηση Οποιαδήποτε συνάρτηση για την οποία για κάθε πολυώνυμο p υπάρχει n 0 ώστε n n 0 : neql(n) < 1 p(n) Συνήθως: c2 n, 2 n, n logn Παρατηρήσεις Ο τυπικός ορισμός ενσωματώνει την παράμετρο ασφαλείας Δύσχρηστος ορισμός Δεν ορίσαμε ακριβώς τη διαδικασία προς το σπάσιμο Formal Models - DHKE Αποδείξιμη Ασφάλεια 19 / 46 Μη Διακρισιμότητα(Indistinguishability) I Παίγνιο Μη Διακρισιμότητας μεταξύ των A, C (αναπαριστά το κρυπτοσύστημα) Ανταλλαγή Μηνυμάτων μεταξύ A, C A : Παράγει δύο μηνύματα m 0, m 1 C : Διαλέγει ένα τυχαίο bit b C : Παράγει και απαντά με το c b = Encrypt(m b ) A : Μαντεύει ένα bit b IND Game(A) = { 1, b = b 0, αλλιώς Formal Models - DHKE Αποδείξιμη Ασφάλεια 20 / 46

Μη Διακρισιμότητα(Indistinguishability) II Πλεονέκτημα Adv IND (A) = Pr[IND Game(A) = 1] 1 2 Ορισμός Ένα κρυπτοσύστημα διαθέτει την ιδιότητα της μη διακρισιμότητας όταν PPT A : Adv IND (A) = negl(λ) Θεώρημα Σημασιολογική Ασφάλεια Μη-Διακρισιμοτητα Formal Models - DHKE Αποδείξιμη Ασφάλεια 21 / 46 IND-EAV Formal Models - DHKE Μοντελοποίηση Επιθέσεων 22 / 46

IND-CPA Formal Models - DHKE Μοντελοποίηση Επιθέσεων 23 / 46 Παρατηρήσεις Θεώρημα Ένα κρυπτοσύστημα με ντετερμινιστικό αλγόριθμο κρυπτογράφησης δεν μπορεί να έχει την ιδιότητα IND-CPA. Απόδειξη O A θέτει m = m 0 και λαμβάνει την κρυπτογράφηση c { Η απάντηση του είναι b 0, c = c = 1, αλλιώς O A κερδίζει πάντα Pr[IND CPA(A) = 1] = 1 Formal Models - DHKE Μοντελοποίηση Επιθέσεων 24 / 46

IND-CCA Formal Models - DHKE Μοντελοποίηση Επιθέσεων 25 / 46 Παρατηρήσεις Στο παίγνιο IND-CCA o A δεν μπορεί να ρωτήσει τον C για την αποκρυπτογραφήση του c Μπορεί όμως να: Μετατρέψει το c σε ĉ Ζητήσει την αποκρυπτογράφηση του ĉ σε ˆm Να μετατρέψει το ˆm σε m, κερδίζοντας με πιθανότητα 1 IND-CCA2: Επιτρέπεται χρήση του μαντείου αποκρυπτογράφησης μετά το c (adaptive IND-CCA) IND-CCA1: αλλιώς Formal Models - DHKE Μοντελοποίηση Επιθέσεων 26 / 46

Malleability I Malleable (εύπλαστο) Κρυπτοσύστημα Επιτρέπει στο A να φτιάξει, γνωρίζοντας μόνο το κρυπτοκείμενο c = Encrypt(m), ένα έγκυρο κρυπτοκείμενο c = Encrypt(h(m)), για κάποια, συνήθως πολυωνυμικά αντιστρέψιμη, συνάρτηση h γνωστή σε αυτόν. Σημαντική ιδιότητα Non-malleability IND-CCA2 Formal Models - DHKE Μοντελοποίηση Επιθέσεων 27 / 46 Malleability II Κάποιες φορές είναι επιθυμητή και κάποιες όχι. Ομομορφικά Κρυπτοσυστήματα: Αποτίμηση μερικών πράξεων στα κρυπτοκείμενα (ηλ. ψηφοφορίες) Πλήρως Ομομορφικά Κρυπτοσυστήμα (Gentry 2010): Αποτίμηση οποιουδήποτε κυκλώματος στα κρυπτοκείμενα Δεν μπορούν να είναι IND-CCA2,... αλλά είναι πολύ χρήσιμα Formal Models - DHKE Μοντελοποίηση Επιθέσεων 28 / 46

Κρυπτογραφικές Αναγωγές I Γενική Μορφή Αν ισχύει η υπόθεση Y, τότε και το κρυπτοσύστημα CS είναι ασφαλές (υπό συγκεκριμένο ορισμό). Αντιθετοαντιστροφή Αν το CS ΔΕΝ είναι ασφαλές (υπό συγκεκριμένο ορισμό), τότε δεν ισχύει η Y. Κατασκευαστική απόδειξη Formal Models - DHKE Αναγωγή 29 / 46 Κρυπτογραφικές Αναγωγές II CS μη ασφαλές PPT A o οποίος παραβιάζει τον ορισμό ασφάλειας Κατασκευάζουμε PPT αλγόριθμο B, ο οποίος αλληλεπιδρά με τον C y ο οποίος προσπαθεί να υπερασπιστεί την Y Ο B για να καταρρίψει την Y χρησιμοποιεί εσωτερικά σαν υπορουτίνα τον A (black box access) παριστάνωντας τον C στο παίγνιο μη διακρισιμότητας του CS Formal Models - DHKE Αναγωγή 30 / 46

Κρυπτογραφικές Αναγωγές III Formal Models - DHKE Αναγωγή 31 / 46 Παρατηρήσεις Κανόνες Ορθότητας Προσομοίωση: Ο A δεν θα πρέπει να ξεχωρίζει τον B από οποιονδήποτε άλλο εισηγητή. Πιθανότητα επιτυχίας: Αν ο A έχει μη αμελητέα πιθανότητα επιτυχίας τότε και ο B θα πρέπει να έχει μη αμελητέα πιθανότητα Πολυπλοκότητα: Ο B θα πρέπει να είναι PPT. Αυτό πρακτικά σημαίνει ότι όποια επιπλέον εσωτερική επεξεργασία πρέπει να είναι πολυωνυμική Πρέπει να είναι όσο πιο tight γίνεται (t B t A και ϵ B ϵ A ) Formal Models - DHKE Αναγωγή 32 / 46

Συμπεράσματα-Συζήτηση Κρυπτογραφικές Αναγωγές Παρέχουν σχετικές εγγυήσεις (Δύσκολο Πρόβλημα, Μοντέλο Ασφάλειας) Δίνουν ευκαιρία να ορίσουμε καλύτερα το κρυπτοσύστημα/πρωτόκολλο Πρακτική Χρησιμότητα: Ρύθμιση Παραμέτρου Ασφάλειας Συγκέντρωση Κρυπταναλυτικών Προσπαθειών στο Πρόβλημα Αναγωγής και όχι σε κάθε κρυπτοσύστημα ξεχωριστά Πιο σημαντικές όσο πιο πολύπλοκο γίνεται το πρωτόκολλο Αποδεικνύουν την ασφάλεια του μοντέλου Πόσο αναπαριστά το μοντέλο την πραγματικόητα; KRACK Δεν σημαίνει ότι οποιαδήποτε υλοποίηση θα είναι ασφαλής Formal Models - DHKE Αναγωγή 33 / 46 Το πρωτόκολλο DHKE Πρωτόκολλο Δημιουργίας Κλειδιού Απαιτήσεις: Ορθότητα: Αντιμεταθετική ιδιότητα Ασφάλεια: Ύψωση σε δύναμη - μονόδρομη συνάρτηση στην G Συνήθως: G υποομάδα του Z p με p πρώτο Εφαρμογές: SSL, TLS, IPSEC Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 34 / 46

Σχετιζόμενα Προβλήματα I DLP - Το πρόβλημα του Διακριτού Λογαρίθμου Δίνεται μια κυκλική ομάδα G =< g > τάξης q και ένα τυχαίο στοιχείο y G Να υπολογιστεί x Z q ώστε g x = y δηλ. το log g y Z q Αγνοούμε δεδομένα στο πρωτόκολλο DHKE Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 35 / 46 Σχετιζόμενα Προβλήματα II CDHP - Το υπολογιστικό πρόβλημα Diffie Hellman Δίνεται μια κυκλική ομάδα G =< g >, δύο στοιχεία y 1 = g x 1, y 2 = g x 2 Να υπολογιστεί το g x 1 x 2 Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 36 / 46

Σχετιζόμενα Προβλήματα III Μπορούμε να δοκιμάζουμε τυχαία στοιχεία DDHP - Το πρόβλημα απόφασης Diffie Hellman Δίνεται μια κυκλική ομάδα G =< g >, δύο στοιχεία y 1 = g x 1, y 2 = g x 2 και κάποιο y G Να εξεταστεί αν y = g x 1 x 2 ή ισοδύναμα DDHP - Το πρόβλημα απόφασης Diffie Hellman Δίνεται μια κυκλική ομάδα G =< g >, δύο στοιχεία y 1 = g x 1, y 2 = g x 2 και κάποιο y G Μπορούμε να ξεχωρίσουμε τις τριάδες (g x 1, g x 2, g x 1x 2 ) και (g x 1, g x 2, y); Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 37 / 46 Σχέσεις Προβλημάτων CDHP DLP Αν μπορούμε να λύσουμε το DLP, τότε μπορούμε να υπολογίζουμε τα x 1, x 2 από τα y 1, y 2 και στην συνέχεια το g x 1 x 2 DDHP CDHP Αν μπορούμε να λύσουμε το CDHP, υπολογίζουμε το g x 1 x 2 ελέγχουμε ισότητα με το y Δηλαδή: DDHP CDHP DLP Δεν γνωρίζουμε αν ισχύει η αντίστροφη σειρά - ισοδυναμία Όμως: Υπάρχουν ομάδες όπου το DDHP έχει αποδειχθεί εύκολο, ενώ CDHP δεν έχει αποδειχθεί εύκολο Μάλλον: DDHP < CDHP και Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 38 / 46

Ασφάλεια DHKE I Διαίσθηση Ένας (παθητικός) αντίπαλος δεν αποκτά καμία χρήσιμη πληροφορία για το κλειδί που δημιουργείται. Ισοδύναμα Ένας (παθητικός) αντίπαλος δεν μπορεί να διακρίνει το κλειδί από ένα τυχαίο στοιχείο της ομάδας στην οποία ανήκει Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 39 / 46 Ασφάλεια DHKE II Παιχνίδι ανταλλαγής κλειδιού KEG(λ, Π, A) Εκτέλεση πρωτοκόλλου Π(1 λ ) (τ, k) τ: Τα μηνύματα που ανταλλάσσονται (δημόσια) k: Το κλειδί που παράγεται (ιδιωτικό) Επιλογή τυχαίου b {0, 1} Αν b = 0 επιλογή τυχαίου k αλλιώς k = k Εκτέλεση A (τ, k ) b Αν b b τότε το αποτέλεσμα του παιχνιδιού είναι 0, αλλιώς 1 Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 40 / 46

Ασφάλεια DHKE III Ορισμός ασφάλειας Ένα πρωτόκολλο ανταλλαγής κλειδιού Π είναι ασφαλές, αν κάθε PPT παθητικός αντίπαλος A έχει αμελητέα πιθανότητα ως προς την παράμετρο ασφάλειας να επιτύχει στο KEG Prob[KEG(λ, Π, A) = 1] 1 2 + negl(λ) Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 41 / 46 Απόδειξη ασφάλειας DHKE DDH = DHKE Αν το DDHP είναι δύσκολο, τότε το πρωτόκολλο DHKE είναι ασφαλές (απέναντι σε παθητικό αντίπαλο). Απόδειξη - Σχεδιάγραμμα Έστω ότι το DHKE δεν είναι ασφαλές. A ώστε Prob[KEG(λ, Π, A) = 1] > 1 2 + non negl(λ) Θα κατασκευάσουμε αντίπαλο PPT B ο οποίος παραβιάζει την DDH. Τα μηνύματα που ανταλλάσσονται είναι τα τ = (G, g, g x 1, g x 2 ) Εκτελούμε τον A με είσοδο (τ, g x 1x 2 ) Επειδή το g x 1x 2 είναι έγκυρο κλειδί: Prob[KEG(λ, Π, A(τ, g x 1x 2 )) = 1] > 1 2 + non negl(λ) Εκτελούμε τον A με είσοδο (τ, y) με y R G Επειδή το y είναι τυχαίο στοιχείο: Prob[KEG(λ, Π, A(τ, y))=1]=1 2 Άρα ο B μπορεί να σπάσει την DDH γιατί μπορεί να ξεχωρίσει με μη αμελητέα πιθανότητα το y από το g x 1,x 2 ΑΤΟΠΟ Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 42 / 46

Ενεργοί Αντίπαλοι Man In The Middle Attacks Superfish - Lenovo (02/2015) DELL - 10/2015 Formal Models - DHKE Ανταλλαγή Κλειδιού Diffie Hellman 43 / 46 Βιβλιογραφία I St. Zachos and Aris Pagourtzis. Στοιχεία Θεωρίας Αριθμών και Εφαρμογές στην Κρυπτογραφία. Πανεπιστημιακές Σημειώσεις Jonathan Katz and Yehuda Lindell. Introduction to Modern Cryptography (Chapman and Hall/Crc Cryptography and Network Security Series). Chapman and Hall/CRC, 2007 Nigel Smart. Introduction to cryptography Alptekin Kupcu. Proofs In Cryptography S. Goldwasser and S. Micali. Probabilistic encryption. Journal of Computer and System Sciences, 28(2):270 299, 1984. S. Micali, C. Rackoff, and B. Sloan. The notion of security for probabilistic cryptosystems. SIAM J. Computing, 17(2):412 426, 1988. Formal Models - DHKE Πηγές 44 / 46

Βιβλιογραφία II W. Diffie and M. Hellman. New directions in cryptography. IEEE Trans. Inf. Theor., 22(6):644-654, September 1976 Ivan Damgard, A proof reading of some issues in cryptography Neil Koblitz, Alfred Menezes Another Look at Provable Security Dan Boneh (1998). The Decision Diffie Hellman Problem. ANTS-III: Proceedings of the Third International Symposium on Algorithmic Number Theory. Springer-Verlag: 48 63. doi:10.1007/bfb0054851 Bruce Schneier s Blog Memo to the Amateur Cipher Designer (https://goo.gl/92tw36) Crypto Snake Oil (https://goo.gl/fafosk) A Few Thoughts on Cryptographic Engineering Formal Models - DHKE Πηγές 45 / 46 Βιβλιογραφία III Bristol Cryptography Blog Kerckhoffs Wikipedia Entry (https://goo.gl/shnu8k) Formal Models - DHKE Πηγές 46 / 46