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

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

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

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

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

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

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

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

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

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

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

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

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

Public Key Cryptography. Dimitris Mitropoulos

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

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

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

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

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

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

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

CCA. Simple CCA-Secure Public Key Encryption from Any Non-Malleable ID-based Encryption

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

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

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

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

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

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

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

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

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

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

Κεφάλαιο 8. Συναρτήσεις Σύνοψης. 8.1 Εισαγωγή

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

UP class. & DES και AES

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

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

project RSA και Rabin-Williams

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

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

1 Ψηφιακές Υπογραφές. 1.1 Η συνάρτηση RSA : Η ύψωση στην e-οστή δύναμη στο Z n. Κρυπτογραφία: Αρχές και πρωτόκολλα Διάλεξη 6. Καθηγητής Α.

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

Symmetric Cryptography. Dimitris Mitropoulos

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

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

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

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

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

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

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

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

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

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

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

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

Ασφάλεια ικτύων (Computer Security)

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

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

Hashing Attacks and Applications. Dimitris Mitropoulos

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

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

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

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

Ψηφιακές Υπογραφές. Άρης Παγουρτζής Στάθης Ζάχος. Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Οι απειλές. Απόρρητο επικοινωνίας. Αρχές ασφάλειας δεδομένων. Απόρρητο (privacy) Μέσω κρυπτογράφησης

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

Copyright Κωνσταντίνος Γ. Χαλκιάς, Αύγουστος 2006

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

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

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 10 : Ασφάλεια. Δρ. Γκόγκος Χρήστος

Κρυπτογραφία: POODLE, BREACH

Αυθεντικοποίηση μηνύματος και Κρυπτογραφία δημόσιου κλειδιού

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

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

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

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

W i. Subset Sum Μια παραλλαγή του προβλήματος knapsack είναι το πρόβλημα Subset Sum, το οποίο δεν λαμβάνει υπόψιν την αξία των αντικειμένων:

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

ΠΡΟΣΤΑΣΙΑ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΣΤΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΘΩΣ ΚΑΙ ΣΤΟ ΔΙΑΔΙΚΤΥΟ

Χρήστος Ξενάκης Τμήμα Ψηφιακών Συστημάτων

Transcript:

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Επιθέσεις και Ασφάλεια Κρυπτοσυστημάτων Διδάσκοντες: Άρης Παγουρτζής Στάθης Ζάχος Αρχικές διαφάνειες: Παναγιώτης Γροντάς Τροποποιήσεις: Άρης Παγουρτζής Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών 1 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Επιθέσεις ενεργητικού αντιπάλου (adversary) A Chosen Plaintext Attack Ικανότητα: Ο A μπορεί να κρυπτογραφεί μηνύματα της επιλογής του Στόχος: Ο A θέλει να μάθει την αποκρυπτογράφηση ενός κρυπτοκειμένου Chosen Ciphertext Attack Ικανότητα 1: Ο A μπορεί να κρυπτογραφεί μηνύματα της επιλογής του Ικανότητα 2: Ο A μπορεί να αποκρυπτογραφεί κρυπτοκείμενα της επιλογής του Στόχος: Ο A θέλει να μάθει την αποκρυπτογράφηση ενός κρυπτοκειμένου, αλλά δεν μπορεί να χρησιμοποιήσει την Ικανότητα 2 απευθείας στο κρυπτοκείμενο αυτό 2 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Chosen Plaintext Attack (IND-CPA) I CPA Game Ο προκαλών (challenger) C δημιουργεί ζεύγος κλειδιών (PK, SK) και δημοσιεύει το PK Ο αντίπαλος A κρυπτογραφεί έως και πολυωνυμικό πλήθος μηνυμάτων της επιλογής του Τελικά υποβάλλει δύο μηνύματα M 0, M 1 στο σύστημα Ο προκαλών C διαλέγει τυχαία 1 bit b και στέλνει το C = Enc(M b ) στον A Ο A κρυπτογραφεί (το πολύ) πολυωνυμικό πλήθος μηνυμάτων της επιλογής του και κάνει οποιονδηποτε άλλο υπολογισμό μπορεί Τελικά μαντεύει το b 3 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Chosen Plaintext Attack (IND-CPA) II Ορισμός ασφάλειας Το κρυπτοσύστημα έχει την ιδιότητα IND-CPA αν κάθε PPT A έχει αμελητέο πλεονέκτημα στον υπολογισμό του b από το να μαντέψει εντελώς τυχαία 4 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Chosen Ciphertext Attack (IND-CCA1) I 5 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Chosen Ciphertext Attack (IND-CCA1) II CCA Game Ο προκαλών C δημιουργεί ζεύγος κλειδιών (PK, SK), δημοσιεύει PK Ο αντίπαλος A κρυπτογραφεί έως πολυωνυμικό πλήθος μηνυμάτων της επιλογής του Ο A χρησιμοποιεί το decryption oracle και αποκρυπτογραφεί έως πολυωνυμικό πλήθος κρυπτοκειμένων της επιλογής του Τελικά υποβάλλει δύο μηνύματα M 0, M 1 στον προκαλούντα C Ο προκαλών C διαλέγει τυχαία 1 bit b και στέλνει το C = Enc(M b ) στον A Ο A κρυπτογραφεί έως πολυωνυμικό πλήθος μηνυμάτων της επιλογής του και κάνει οποιονδηποτε άλλο υπολογισμό μπορεί Τελικά μαντεύει το b 6 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Chosen Ciphertext Attack (IND-CCA1) I Ορισμός ασφάλειας Το κρυπτοσύστημα έχει την ιδιότητα IND-CCA1 αν κάθε PPT A έχει αμελητέο πλεονέκτημα στον υπολογισμό του b από το να μαντέψει εντελώς τυχαία 7 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Adaptive Chosen Ciphertext Attack (IND-CCA2) I 8 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Adaptive Chosen Ciphertext Attack (IND-CCA2) II CCA Game Ο προκαλών C δημιουργεί ζεύγος κλειδιών (PK, SK), δημοσιεύει PK Ο αντίπαλος A κρυπτογραφεί έως πολυωνυμικό πλήθος μηνυμάτων της επιλογής του Ο A χρησιμοποιεί το decryption oracle και αποκρυπτογραφεί έως πολυωνυμικό πλήθος κρυπτοκειμένων της επιλογής του Τελικά υποβάλλει δύο μηνύματα M 0, M 1 στον προκαλούντα C Ο C διαλέγει τυχαία 1 bit b και στέλνει το C = Enc(M b ) στον A Ο A κρυπτογραφεί έως πολυωνυμικό πλήθος επιλ μηνυμάτων Ο A αποκρυπτογραφεί έως πολυωνυμικό πλήθος επιλ κρυπτοκειμένων, διαφορετικών από το C και κάνει οποιονδηποτε άλλο υπολογισμό μπορεί Τελικά μαντεύει το b 9 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Indistinguishability under Adaptive Chosen Ciphertext Attack (IND-CCA2) I Ορισμός ασφάλειας Το κρυπτοσύστημα έχει την ιδιότητα IND-CCA2 αν κάθε PPT A έχει αμελητέο πλεονέκτημα στον υπολογισμό του b από το να μαντέψει εντελώς τυχαία 10 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Malleability: μια σχετική ιδιότητα Ένας ορισμός Ένα κρυπτοσύστημα λέγεται malleable (εύπλαστο) εάν είναι δυνατόν ένας αντίπαλος να φτιάξει, γνωρίζοντας μόνο το κρυπτοκείμενο c = E(m), δηλαδή το κρυπτογράφημα ενός μηνύματος m, ένα έγκυρο κρυπτοκείμενο c = E(h(m)), για κάποια, συνήθως πολυωνυμικά αντιστρέψιμη, συνάρτηση h γνωστή σε αυτόν Μπορεί δηλαδή να αλλοιώσει οποιοδήποτε κρυπτοκείμενο, ώστε να αντιστοιχεί σε μήνυμα που είναι το αρχικό μήνυμα αλλαγμένο με γνωστό και αντιστρέψιμο τρόπο 11 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Malleability: μια σχετική ιδιότητα Ένας ορισμός Ένα κρυπτοσύστημα λέγεται malleable (εύπλαστο) εάν είναι δυνατόν ένας αντίπαλος να φτιάξει, γνωρίζοντας μόνο το κρυπτοκείμενο c = E(m), δηλαδή το κρυπτογράφημα ενός μηνύματος m, ένα έγκυρο κρυπτοκείμενο c = E(h(m)), για κάποια, συνήθως πολυωνυμικά αντιστρέψιμη, συνάρτηση h γνωστή σε αυτόν Μπορεί δηλαδή να αλλοιώσει οποιοδήποτε κρυπτοκείμενο, ώστε να αντιστοιχεί σε μήνυμα που είναι το αρχικό μήνυμα αλλαγμένο με γνωστό και αντιστρέψιμο τρόπο Κάποιες φορές είναι επιθυμητή και κάποιες όχι 11 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Malleability: μια σχετική ιδιότητα Ένας ορισμός Ένα κρυπτοσύστημα λέγεται malleable (εύπλαστο) εάν είναι δυνατόν ένας αντίπαλος να φτιάξει, γνωρίζοντας μόνο το κρυπτοκείμενο c = E(m), δηλαδή το κρυπτογράφημα ενός μηνύματος m, ένα έγκυρο κρυπτοκείμενο c = E(h(m)), για κάποια, συνήθως πολυωνυμικά αντιστρέψιμη, συνάρτηση h γνωστή σε αυτόν Μπορεί δηλαδή να αλλοιώσει οποιοδήποτε κρυπτοκείμενο, ώστε να αντιστοιχεί σε μήνυμα που είναι το αρχικό μήνυμα αλλαγμένο με γνωστό και αντιστρέψιμο τρόπο Κάποιες φορές είναι επιθυμητή και κάποιες όχι Σημαντική ιδιότητα Ṇon-malleability IND-CCA2 11 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Παράδειγμα 1: παραδοσιακό RSA I To παραδοσιακό RSA δεν είναι IND-CPA γιατί είναι deterministic Αν τα δύο μηνύματα του A είναι: m 0 = Buy IBM m 1 = Sell IBM τότε ο A μπορεί να τα κρυπτογραφήσει και να τα συγκρίνει με το νόμιμο ciphertext To παραδοσιακό RSA είναι malleable Στόχος: Αλλοίωση του c = m e (mod n) c = c( 9 10 )e (mod n) = (m 9 10 )e (mod n) H αποκρυπτογράφηση δίνει το m 9 10 Ο A μπορεί να αλλοιώσει κάποιο μήνυμα χωρίς να το γνωρίζει 12 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Παράδειγμα 1: παραδοσιακό RSA II To παραδοσιακό RSA δεν είναι CCA-secure Έστω ότι ο A μπορεί να αποκρυπτογραφήσει μηνύματα επιλογής του, εκτός του c Στόχος: Αποκρυπτογράφηση του c = m e b (mod n) Μπορεί να αποκρυπτογραφήσει το c = c b x e δικής του επιλογής Ανακτά το m b = m x Αν m b = m 0 επιστρέφει b = 0 αλλιώς επιστρέφει b = 1 (mod n) όπου το x είναι 13 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Παράδειγμα 2: παραδοσιακό ElGamal To ElGamal είναι IND-CPA αν ισχύει η DDH assumption: απόδειξη στον πίνακα 14 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Παράδειγμα 2: παραδοσιακό ElGamal To ElGamal είναι IND-CPA αν ισχύει η DDH assumption: απόδειξη στον πίνακα To παραδοσιακό El Gamal είναι malleable Στόχος: Αλλοίωση του c = (G, M) = (g r, mh r ) c = (G, M ) = (Gg r, M 9 10 hr ) = (g r+r, m 9 10 hr+r ) H αποκρυπτογράφηση M G δίνει το m 9 x 10 Ο A μπορεί να αλλοιώσει κάποιο μήνυμα χωρίς να το γνωρίζει 14 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Παράδειγμα 2: παραδοσιακό ElGamal I To παραδοσιακό El Gamal δεν είναι CCA-secure ούτε IND-CCA2-secure Έστω ότι ο A μπορεί να αποκρυπτογραφήσει μηνύματα επιλογής του, εκτός του c Στόχος: Αποκρυπτογράφηση του c = (G, M) = (g r, m b h r ) Κατασκευή c = (G, M ) = (Gg r, Mah r ) = (g r+r, m b ah r+r ), όπου a επιλέγεται από τον A H αποκρυπτογράφηση του M ( M G x ) δίνει το am b και κατά συνέπεια το m b Αν m b = m 0 επιστρέφει b = 0 αλλιώς επιστρέφει b = 1 15 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το RSA I Randomised Encryption Αντί για κρυπτογράφηση m κρυπτογράφηση f(m, r) όπου r random Η f είναι εύκολα αντιστρέψιμη από οποιονδήποτε Μια απλή υλοποίηση της f: random padding Χρήση στο SSL μέχρι πρόσφατα: PKCS1 16 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το RSA II Η επίθεση του Bleichenbacher (1998) [Ble98] Στόχος: Αποκρυπτογράφηση του c = f(m, r) e (mod n) Αποστολή πολλών μηνυμάτων της μορφής c = cx e x O A προσπαθεί να βρει μηνύματα m για τα οποία f(m, r) = (c ) d (mod n) Ανακτά το m = m x Πρακτικά: χρήση SSL error codes ως decryption oracle (mod n) με τυχαια Με 300000 εως 2000000 c μπορεί να αποκρυπτογραφηθεί το c Λύση: RSA - OAEP secure in the random oracle model [BR95] 17 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το El Gamal: Cramer-Shoup cryptosystem [CS98] I Ronald Cramer, Victor Shoup, Crypto 1998 Επέκταση του El Gamal Χρηση συνάρτησης σύνοψης H Αν ισχυει η υπόθεση DDH, τότε παρέχει IND-CCA2 18 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το El Gamal: Cramer-Shoup cryptosystem [CS98] II Δημιουργία Κλειδιών Επιλογή πρώτων p, q με p = 2q + 1 G ειναι η υποομάδα ταξης q στον Z p Επιλογή random generators g 1, g 2 Επιλογή τυχαίων στοιχείων x 1, x 2, y 1, y 2, z Z q c = g x 1 1 g x 2 2 d = g y 1 1 g y 2 2, h = g z 1 Δημόσιο Κλειδί: (c, d, h) Μυστικό Κλειδί: (x 1, x 2, y 1, y 2, z) 19 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το El Gamal: Cramer-Shoup cryptosystem [CS98] III Κρυπτογράφηση Μετατροπή μηνύματος m στο G Επιλογή τυχαίου r Z q Υπολογισμός u 1 = g r 1, u 2 = g r 2 e = mh r α = H(u 1, u 2, e) v = c r d rα Κρυπτογράφημα: (u 1, u 2, e, v) 20 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το El Gamal: Cramer-Shoup cryptosystem [CS98] IV Αποκρυπτογράφηση Υπολογισμός α = H(u 1, u 2, e) Έλεγχος αν u x 1 1 u x 2 2 (u y 1 1 u y 2 2 ) α = v Σε περίπτωση αποτυχίας έξοδος χωρίς αποκρυπτογράφηση Σε περιπτωση επιτυχίας υπολογισμός m = e u z 1 21 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

Λύσεις για το El Gamal: Cramer-Shoup cryptosystem [CS98] V Παρατηρήσεις h, z αντιστοιχούν σε δημόσιο - ιδιωτικό κλειδί El Gamal u 1, e αντιστοιχούν στο κρυπτογράφημα του El Gamal H H μπορεί να αντικατασταθεί για αποφυγή του random oracle u 2, v λειτουργούν ως έλεγχος ακεραιότητας, ώστε να μπορεί να αποφευχθεί το malleability Διπλάσια πολυπλοκότητα από ElGamal τόσο σε μέγεθος κρυπτοκειμένου, όσο και σε υπολογιστικές απαιτήσεις 22 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία

References I [Ble98] Daniel Bleichenbacher Chosen ciphertext attacks against protocols based on the rsa encryption standard pkcs1 pages 1 12 Springer-Verlag, 1998 [Bon12] Dan Boneh Cryptography i Coursera Online Course, November 2012 [BR95] Mihir Bellare and Phillip Rogaway Optimal asymmetric encryption how to encrypt with rsa pages 92 111 Springer-Verlag, 1995 [CS98] Ronald Cramer and Victor Shoup A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack In Hugo Krawczyk, editor, Advances in Cryptology CRYPTO 98, volume 1462 of Lecture Notes in Computer Science, pages 13 25 Springer Berlin Heidelberg, 1998 [KL07] Jonathan Katz and Yehuda Lindell Introduction to Modern Cryptography (Chapman & Hall/Crc Cryptography and Network Security Series) Chapman & Hall/CRC, 2007 [Sho98] Victor Shoup Why chosen ciphertext security matters, 1998 23 / 23 Σχολή ΗΜΜΥ ΕΜΠ() Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία