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

Σχετικά έγγραφα
Αποδείξεις Μηδενικής Γνώσης

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

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

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

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

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

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

PSEUDORANDOM GENERATORS- PREDICATES & ZK PROOFS

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

Κρυπτογραφία. Εργαστηριακό μάθημα 9 (Πρωτόκολλα πιστοποίησης ταυτότητας μηδενικής γνώσης Fiat-Shamir)

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

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

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

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

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

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

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

L A P. w L A f(w) L B (10.1) u := f(w)

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

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

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

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

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

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

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

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

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

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

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

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

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

Πρόλογος 1. 1 Μαθηµατικό υπόβαθρο 9

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

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

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

1 Βασικές Έννοιες Ιδιωτικότητας

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

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

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

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

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

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

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

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

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

Blum Blum Shub Generator

Public Key Cryptography. Dimitris Mitropoulos

1 Diffie-Hellman Key Exchange Protocol

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

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

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

Στοιχεία Θεωρίας Υπολογισμού

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Λύσεις 4ης Σειράς Ασκήσεων

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5

Κατανεμημένα Συστήματα Ι

Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Στα μαθηματικά και στις άλλες επιστήμες κάνουμε συχνά υποθέσεις. Οταν δείξουμε ότι μια υπόθεση είναι αλη

7. O κβαντικός αλγόριθμος του Shor

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

Γνωστό: P (M) = 2 M = τρόποι επιλογής υποσυνόλου του M. Π.χ. M = {A, B, C} π. 1. Π.χ.

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

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

Κρυπτογραφικά πρωτόκολλα και τεχνικές

Κατανεμημένα Συστήματα Ι

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

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

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Κρυπτογραφία. Μονόδρομες συναρτήσεις - Συναρτήσεις σύνοψης. Άρης Παγουρτζής - Πέτρος Ποτίκας

Κλάσεις Πολυπλοκότητας

Blum Complexity. Αλγόριθμοι και Πολυπλοκότητα ΙΙ. Παναγιώτης Γροντάς. Δεκέμβριος

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

Κατανεμημένα Συστήματα Ι

t M (w) T ( w ) O( n) = O(n 2 )

bca = e. H 1j = G 2 H 5j = {f G j : f(0) = 1}

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

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

Την αποδοχή του κειμένου από τον υπογράφοντα και την συμφωνία του με αυτό.

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Κρυπτογραφία. Συναρτήσεις μονής κατεύθυνσης - Συναρτήσεις κατακερματισμού. Άρης Παγουρτζής - Πέτρος Ποτίκας

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

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

Υπολογιστικό Πρόβληµα

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

Υποθέσεις - Θεωρήματα. Μαθηματικά Πληροφορικής 1ο Μάθημα. Η χρυσή τομή. Υποθέσεις - Εικασίες

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

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

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

Κατανεμημένα Συστήματα Ι

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

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

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

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

Τυχαιοκρατικοί Αλγόριθμοι

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

Τεχνολογίες Υλοποίησης Αλγορίθµων

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

Transcript:

Αποδείξεις Μηδενικής Γνώσης Παναγιώτης Γροντάς ΕΜΠ - Κρυπτογραφία (2016-2017) 16/12/2016 1 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Περιεχόμενα Εισαγωγή Ορισμός - Εφαρμογές στην Θ. Πολυπλοκότητας Σ-πρωτόκολλα Πρακτικές Παραλλαγές και Εφαρμογές 2 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Αποδείξεις Αποδείξεις στα μαθηματικά Στόχος: η αλήθεια μας πρότασης με ενδιάμεσους συλλογισμούς οι οποίοι δίνουν όμως επιπλέον πληροφορίες Αντί-Παράδειγμα O 15 δεν είναι πρώτος...γιατί διαιρείται από το 3 και το 5 Ερώτημα: Μπορούμε να πειστούμε για την αλήθεια χωρίς διαρροή επιπλέον πληροφοριών; 3 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Εισαγωγή Shaffi Goldwasser, Silvio Micali και Charles Rackoff, 1985 Διαλογικά συστήματα αποδείξεων Υπολογισμός ως διάλογος Prover (P ): Θέλει να αποδείξει ότι μία συμβολοσειρά ανήκει σε μία γλώσσα (complexity style) Verifier (V ): Θέλει να ελέγξει την απόδειξη Μια σωστή απόδειξη πείθει τον V με πολύ μεγάλη πιθανότητα Μια λάθος απόδειξη πείθει τον V με πολύ μικρή πιθανότητα Απόδειξη μηδενικής γνώσης Ο V πείθεται χωρίς να μαθαίνει τίποτε άλλο Πολλές θεωρητικές και πρακτικές εφαρμογές (Βραβείο Turing 2013) 4 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Ένα εύκολο παράδειγμα Ο V έχει αχρωματoψία O P κρατάει δύο ταυτόσημες χριστουγεννιάτικες μπάλες, διαφορετικού χρώματος Μπορεί να πειστεί ο V για το ότι οι μπάλες έχουν διαφορετικό χρώμα (αφού δεν μπορεί να το μάθει); Ναι Ο P δίνει τις μπάλες στον V (commit) Ο V τοποθετεί τις μπάλες πίσω από την πλάτη του (1 σε κάθε χέρι) Στην τύχη, αποφασίζει να τις αντιμεταθέσει (ή όχι) O V παρουσιάζει τα χέρια με τις μπάλες στον P (challenge) Ο P απαντάει αν άλλαξαν χέρια (response) Ο V αποδέχεται ή όχι Κακόβουλος P : Πιθανότητα απάτης 50% Επανάληψη: Μείωση πιθανότητας απάτης (γιατί πρέπει να μαντεύει σωστά όλες τις φορές) 5 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Άλλα παραδείγματα Where s waldo Γνώση λύσης sudoku Η σπηλιά του Alladin How to explain zero-knowledge protocols to your children To γάλα σε τσάι έχει διαφορετική γεύση από το τσάι σε γάλα 6 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Εφαρμογές στην κρυπτογραφία Σχήματα αυθεντικοποίησης αντί για passwords Αντί για κωδικό: Απόδειξη ότι ο χρήστης τον γνωρίζει Αποφεύγεται η μετάδοση και η επεξεργασία Απόδειξη ότι το κρυπτοκείμενο περιέχει μήνυμα συγκεκριμένου τύπου Ψηφιακές υπογραφές Άντι-malleability Γενικά: Απόδειξη ότι παίκτης ακολουθεί κάποιο πρωτόκολλο χωρίς αποκάλυψη ιδιωτικών δεδομένων του 7 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων I Συμβολισμός Γλώσσα L NP Πολυωνυμική Mηχανή Turing M x L w {0, 1} p( x ) : M(x, w) = 1 Δύο PPT μηχανές Turing πολυωνυμικού χρόνου P, V < P(x, w), V(x) > είναι η αλληλεπίδραση μεταξύ P, V με κοινή (δημόσια είσοδο) το x και ιδιωτική είσοδο του P το w. out V < P(x, w), V(x) > η έξοδος του V στο τέλος του πρωτοκόλλου 8 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων II Παράδειγμα L η γλώσσα του προβλήματος του διακριτού λογαρίθμου x ένα στιγμιότυπο του προβλήματος x =< p, g :< g >= Z p, b R Z p > w ο μάρτυρας, δηλ. a : b = g a 9 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων III Μία απόδειξη μηδενικής γνώσης για την L είναι μία αλληλεπίδραση < P(x, w), V(x) > με τις εξής ιδιότητες: Πληρότητα - Completeness Ένας τίμιος P, πείθει έναν τίμιο V με βεβαιότητα Αν x L και M(x, w) = 1 Pr[out V < P(x, w), V(x) > (x) = 1] = 1 10 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων IV Ορθότητα - Soundness Ένας κακόβουλος P (σμβ. με P ), δεν μπορεί να πείσει τίμιο V, παρά με αμελητέα πιθανότητα. Αν x / L τότε (P, w): Pr[out V < P (x, w), V(x) > (x) = 1] = negl(λ) Παρατήρηση: Proof of Knowledge: O P δεν είναι PPT. Argument of Knowledge: O P είναι PPT. 11 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων V (Τέλεια) Μηδενική Γνώση: O V δεν μαθαίνει τίποτε εκτός, από το γεγονός ότι ο ισχυρισμός του P είναι αληθής. Για κάθε PPT V υπάρχει μία PPT S : Αν x L και M(x, w) = 1 οι τυχαίες μεταβλητές out V < P(x, w), V (x) > (x) και out V < S(x), V (x) > (x) ακολουθούν ακριβώς την ίδια κατανομή. Επιτρέπουμε και κακόβουλο verifier που δεν ακολουθεί το πρωτόκολλο και προσπαθεί να μάθει το w 12 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαλογικά Συστήματα Αποδείξεων VI Διαίσθηση Ό,τι μπορεί να υπολογίσει ο V μετά την συζήτηση με τον P, μπορεί να το υπολογίσει και με τον S (δηλαδή ουσιαστικά χωρίς τη συζήτηση με τον P ) Άρα: η συζήτηση προσθέτει μηδενική γνώση 13 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Απόδειξη ιδιότητας ΖΚ: Ο simulator Θεωρητική κατασκευή με πρακτικές εφαρμογές Δεν διαθέτει τον witness Προσομοίωση απόδειξης στη θέση του P Αλληλεπιδρά με τον V Δεν μπορούμε να ξεχωρίσουμε τις αλληλεπιδράσεις <S,V > και <P,V > Επιτρέπουμε και rewinds: Αν κάποια στιγμή ο V ρωτήσει κάτι που δεν μπορεί να απαντήσει ο S τότε stop - rewind Μηδενική γνώση αν ο V κάποια στιγμή αποδεχτεί (έστω και με rewinds) Γιατί: Δεν μπορεί να ξεχωρίσει τον P (που διαθέτει witness) από τον S (που δεν διαθέτει) Αρκεί ο S να παραμείνει PPT Συγκεκριμένα: Ένας V που εξάγει πληροφορία από τον P θα εξάγει την ίδια πληροφορία και από τον S (όπου δεν υπάρχει κάτι να εξαχθεί) 14 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Σχέση Oρθότητας - Μηδενικής Γνώσης O S μοιάζει με κακό P (και οι δύο δεν διαθέτουν τον witness). Όμως: Ο S πρέπει να παραμείνει PPT, ενώ P όχι Για τον P Μηδενική γνώση στην περίπτωση που είναι γνωστός ο w Ορθότητα στην περίπτωση που δεν είναι γνωστός ο w Για τον V Στην ορθότητα πρέπει να είναι τίμιος Στην μηδενική γνώση όχι 15 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Παραλλαγές Μηδενικής Γνώσης I Black-Box Zero Knowledge PPT S, V out V < P(x, w), V (x) > (x) και out V < S V (x), V (x) > (x) να ακολουθούν ακριβώς την ίδια κατανομή. Παρατηρήσεις: O S ισχύει για όλους τους V έχει oracle access στον V δηλ. ελέγχει το input, rewind αλλά όχι το output 16 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Παραλλαγές Μηδενικής Γνώσης II Statistical Zero Knowledge Οι κατανομές των συζητήσεων με P, S έχουν αμελητέα στατιστική απόσταση. (X, Y ) = 1 2 u V Prob [X = u] Prov[Y = u] = negl(λ) Computational Zero Knowledge Οι κατανομές των συζητήσεων με P, S δεν μπορούν να διαχωριστούν από κάποιον αντίπαλο με πολυωνυμική υπολογιστή ισχύ. 17 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Παραλλαγές Μηδενικής Γνώσης III Honest Verifier Zero Knowledge Ο V είναι τίμιος δηλ: ακολουθεί το πρωτόκολλο τα μηνύματα του προέρχονται από την ομοιόμορφη κατανομή - δεν εξαρτώνται από τα μηνύματα του P μοντελοποιεί και παθητικό αντίπαλο Πρακτικά: ο S παράγει συζητήσεις οι οποίες έχουν ίδια κατανομή με αυθεντικές < P(x, w), V(x) > 18 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Διαφορά ZK - HVZK... είναι στον V Σε HVZK: Τα μηνύματα του V είναι τυχαία Μπορούν να προετοιμαστούν εκ των προτέρων από τον S Άρα o V δεν χρειάζεται (non interactive) Σε ZK: Τα μηνύματα του V εξαρτώνται από τα μηνύματα του P 19 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Παραλλαγές Ορθότητας Ειδική ορθότητα (special soundness) Υπάρχει ένας PPT αλγόριθμος (extractor), E ο οποίος αν δεχθεί πολλά transcripts του πρωτοκόλλου με το ίδιο αρχικό μήνυμα από τον P αλλά διαφορετικές προκλήσεις από τον V μπορεί να εξάγει τον witness. Θεώρημα Ειδική ορθότητα ορθότητα με πιθανότητα false-positive 1 C όπου: C: το σύνολο προέλευσης των μηνυμάτων του V Ειδική ορθότητα απόδειξη γνώσης 20 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

3-colorability NP-Complete Ορισμός Γράφημα G = (V, E) O P γνωρίζει ένα χρωματισμό c : V {1, 2, 3} Έγκυρος χρωματισμός: Γειτονικές κορυφές έχουν διαφορετικό χρώμα (v i, v j ) E c(v i ) c(v j ) 21 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

ZKP for 3-colorability Γενική Περιγραφή 1 P : επιλέγει μια τυχαία μετάθεση π του {1, 2, 3}. Προκύπτει εναλλακτικός έγκυρος 3 - χρωματισμός π.c του G. Χρήση σχήματος δέσμευσης για τον εναλλακτικό χρωματισμό Yπολογίζει commit((π.c)(v i ), r i ) v i V Αποστολή στον V 2 V : επιλέγει μία τυχαία ακμή (v i, v j ) E και την στέλνει στον P. 3 P : ανοίγει τις δεσμεύσεις - αποκαλύπτει τις τιμές π.c(v i ), π.c(v j ) και r i, r j 4 V : ελέγχει αν π.c(v i ) π.c(v j ) και οι δεσμεύσεις είναι έγκυρες 5 Επανάληψη 22 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

ZKP for 3-colorability: Ιδιότητες (Πληρότητα) Πληρότητα Αν ο c είναι έγκυρος χρωματισμός τότε και ο π.c είναι έγκυρος χρωματισμός. 23 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

ZKP for 3-colorability: Ιδιότητες (Ορθότητα) Ορθότητα Έστω P με μη έγκυρο χρωματισμό για κάποιο γράφημα: Δηλ. τουλάχιστον 2 γειτονικές κορυφές με το ίδιο χρώμα: Πιθανότητα ανίχνευσης εξαπάτησης από V = Πιθανότητα επιλογής κακής ακμής = 1 E Πιθανότητα επιτυχούς εξαπάτησης από P = 1 1 E Σε E 2 επαναλήψεις και εφόσον (1 + t n )n e t Πιθανότητα επιτυχίας του P : (1 1 E ) E 2 e E αμελητέα ως προς το μέγεθος του γραφήματος 24 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

ZKP for 3-colorability: Ιδιότητες (Μηδενική Γνώση) Μηδενική Γνώση Χρήση S χωρίς γνώση έγκυρου χρωματισμού - επιλογή τυχαίου Πιθανότητα επιλογής από V ακμής με διαφορετικά χρώματα κορυφών 2 3 Πιθανότητα επιλογής από V ακμής με ίδια χρώματα κορυφών 1 3 Αν ο V επιλέγει κακή ακμή, rewind Για k επιτυχείς επιλογές χρειάζονται κατά μέσο όρο 2k εκτελέσεις Ο S δεν απαιτεί πολύ περισσότερο χρόνο από έναν P με γνώση του c Όμως οι συζητήσεις δεν είναι πανομοιότυπες! (Γιατί;) Τα commitments του P είναι έγκυροι χρωματισμοί, ενώ του S όχι! Συνέπεια [GMW91] Αν υπάρχουν μονόδρομες συναρτήσεις τότε όλο το NP έχει αποδείξεις μηδενικής γνώσης (black box computational) 25 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Σ-πρωτόκολλα Ένα πρωτόκολλο 3 γύρων με honest verifier και special soundness 1 Commit O P δεσμεύεται σε μία τιμή. 2 Challenge Ο V διαλέγει μία τυχαία πρόκληση. Εφόσον είναι τίμιος θεωρούμε ότι η πιθανότητα επιλογής πρόκλησης είναι ομοιόμορφα κατανεμημένη. 3 Response O P απαντάει χρησιμοποιώντας τη δέσμευση, το μυστικό και την τυχαία τιμή. Special Soundness Δύο εκτελέσεις του πρωτοκόλλου με το ίδιο commitment, οδηγούν στην αποκάλυψη του witness 26 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Γνώση DLOG:Το πρωτόκολλο του Schnorr I Γνωστά Στοιχεία Δημόσια: Γεννήτορας g μιας (υπό)ομάδας τάξης q του Z p με δύσκολο DLP και στοιχείο h Z p Ιδιωτικά: O P έχει ένα witness x Z q ώστε h = g x (mod p) Στόχος Απόδειξη κατοχής του x χωρίς να αποκαλυφθεί. Συμβολισμός Camenisch-Stadler PoK{(x) : g x = h (mod p), h, g R Z p} 27 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Γνώση DLOG:Το πρωτόκολλο του Schnorr II Commit (P V ): Τυχαία επιλογή t R Z q Yπολογισμός y = g t mod p. Αποστολή y στον V. Challenge (V P ): Τυχαία επιλογή και αποστολή c R Z q Response (P V ): O P υπολογίζει το s = t + cx mod q και το στέλνει στον V Ο V αποδέχεται αν g s = yh c (mod p) 28 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Πρωτόκολλο Schnorr: Πληρότητα Πληρότητα g s = g t+cx = g t g cx = yh c (mod p) 29 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Πρωτόκολλο Schnorr: Ορθότητα Ορθότητα Πιθανότητα ο P να ξεγελάσει τίμιο verifier: 1 q - αμελητέα - επανάληψη για μεγαλύτερη σιγουριά Special soundness Έστω 2 επιτυχείς εκτελέσεις του πρωτοκόλλου (y, c, s) και (y, c, s ) g s = yh c και g s = yh c g s h c = g s h c g s xc = g s xc s xc = s xc x = c c s s Αφού o P μπορεί να απαντήσει 2 τέτοιες ερωτήσεις ξέρει το DLOG (ορθότητα και γνώση) 30 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Πρωτόκολλο Schnorr: HVZK Διαθέτει Honest Verifier Zero Knowledge Έστω S που δεν γνωρίζει το x και τίμιος V Αρχικά o S δεσμεύεται κανονικά στο y = g t, t R Z q Ο V επιλέγει c R Z q Αν ο S μπορεί να απαντήσει (αμελητέα πιθανότητα) το πρωτόκολλο συνεχίζει κανονικά Αλλιώς γίνεται rewind ο V (ίδιo random tape) Στη δεύτερη εκτέλεση S δεσμεύεται στο y = g t h c, t R Z q Ο V επιλέγει ίδιο c R Z q (ίδιο random tape) O S στέλνει s = t Ο V θα δεχτεί αφού yh c = g t h c h c = g t = g s Δηλαδή: Η συζήτηση (t R Z q ; g t h c, c R Z q, t) και η (t, c R Z q ; g t, c, t + xc) ακολουθούν την ίδια κατανομή 31 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Πρωτόκολλο Schnorr: ZK Μηδενική Γνώση: Δε διαθέτει Ένας cheating verifier δε διαλέγει τυχαία Bασίζει κάθε challenge στο commitment που έλαβε πριν από τον S Στη simulated εκτέλεση δεν θα επιλέξει το ίδιο challenge Αμελητέα πιθανότητα να μπορεί να απαντηθεί από τον S Ενίσχυση για μηδενική γνώση: Προσθήκη δέσμευσης από τον V στην τυχαιότητα πριν το πρώτο μήνυμα του P ή Challenge space {0, 1} (γιατί;) Ο V έχει δύο επιλογές μόνο για επιλογή πρόκλησης. Αν αλλάξει, ο S μπορεί να προετοιμαστεί και για τις δύο περιπτώσεις. 32 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Ισότητα DLOG:Το πρωτόκολλο Chaum Pedersen I Γνωστά Στοιχεία Δημόσια: Γεννήτορες g 1, g 2 μιας (υπό)ομάδας τάξης q του Z p με δύσκολο DLP και 2 στοιχεία h 1, h 2 Z p Ιδιωτικά: O P έχει ένα witness x Z q ώστε h 1 = g1 x mod p, h 2 = g2 x mod p Στόχος Απόδειξη γνώσης του x χωρίς να αποκαλυφθεί Απόδειξη ισότητας διακριτών λογαρίθμων PoK{(x) : h 1 = g x 1 (mod p) h 2 = g x 2 (mod p), h 1, g 1, h 2, g 2 R Z p} 33 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Ισότητα DLOG:Το πρωτόκολλο Chaum Pedersen II Commit: Ο P διαλέγει t R Z q Yπολογίζει y 1 = g t 1 mod p y 2 = g t 2 mod p Αποστέλλει y 1, y 2 στον V Challenge: Ο V διαλέγει και αποστέλλει c R Z q Response: Ο P υπολογίζει s = t + cx mod q και το στέλνει στον V Ο V δέχεται αν g s 1 = y 1h c 1 (mod p) και g s 2 = y 2h c 2 (mod p) 34 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Ιδιότητες Chaum-Pedersen I Πληρότητα Αν h 1 = g x 1 και h 2 = g x 2 τότε: g1 s = g1 t+xc = y 1 h1 c g2 s = g2 t+xc = y 2 h2 c Special soundness Έστω δύο αποδεκτά transcripts με το ίδιο commitment ((y 1, y 2 ), c, s) και ((y 1, y 2 ), c, s ) g1 s = y 1 h1 c και g1 s = y 1 h1 c g1h s 1 c = g1 s h1 c g2 s = y 2 h2 c και g2 s = y 2 h2 c g2h s 2 c = g2 s h2 c Όπως σε Schnorr x = s s c c 35 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Ιδιότητες Chaum-Pedersen II Honest verifier zero knowledge Πραγματικό transcript με c R Z q : (t R Z q ; (g t 1, g t 2 ), c R Z q, t + xc mod q) Simulated transcript με c R Z q : (t, c R Z q ; (g1 th c 1, g 2 th c 2 ), c, t) Ίδιες κατανομές αν x = log g1 h 1 = log g2 h 2 36 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Εφαρμογές Έλεγχος για τριάδες DH Η τριάδα (g a, g b, g c ) είναι τριάδα DH (δηλ. g c = g ab ) Εκτελούμε CH(g 1 = g, g 2 = g b, h 1 = g a, h 2 = g ab = g ba ) με witness a Εγκυρότητα κρυπτογράφησης El-Gamal Δίνεται ένα ζεύγος στοιχείων του Z p τα (c 1, c 2 ). Να δειχθεί ότι αποτελούν έγκυρη κρυπτογράφηση ενός μηνύματος m. Αν είναι έγκυρη τότε πρέπει Ισοδύναμα: (c 1, c 2 ) = (g r, m h r ) log g c 1 = log h ( c 2 m ) δηλ. ότι ο P είναι γνώστης της τυχαιότητας 37 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Σύνθεση Σ πρωτοκόλλων I Θέωρημα Τα Σ πρωτόκολλα διατηρούν τις ιδιότητες τους αν συνδυαστούν με τις παρακάτω σχέσεις: AND O P γνωρίζει 2 διαφορετικά w για διαφορετικές σχέσεις. Απόδειξη: 2 παράλληλες εκτελέσεις του Σ πρωτόκολλου με ίδιο challenge 38 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Σύνθεση Σ πρωτοκόλλων II 39 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Σύνθεση Σ πρωτοκόλλων III Batch-AND Μαζική επαλήθευση πολλαπλών σχέσεων με ένα πρωτόκολλο. Για παράδειγμα: (g a, g b, g ab ) ΚΑΙ (g c, g d, g cd ) είναι τριάδες DH Μπορώ να εκτελέσω το Chaum Pedersen για (g ac, g bd, g abcd ) EQ O P γνωρίζει τον ίδιο w για διαφορετικές σχέσεις. Chaum Pedersen OR O P γνωρίζει κάποιο w για διαφορετικές σχέσεις. Εφαρμογή: Απόδειξη ότι ο w ανήκει σε ένα σύνολο 40 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Γενικευμένη κατασκευή αποδείξεων OR Έστω W = {w 1,..., w n } οι εναλλακτικοί μάρτυρες Για αυτόν που κατέχει ο P ακολουθεί το πρωτόκολλο Για τους υπόλοιπους ο P καλεί τον S ο οποίος υπολογίζει τις δεσμεύσεις που θα έκαναν τον V να δεχθεί σε μία προσομοιωμένη συζήτηση Πρόβλημα: O S δεν ξέρει το challenge Λύση: Το επιλέγει τυχαία Όλες οι δεσμεύσεις αποστέλλονται στον V Ο τελευταίος απαντάει με μία τυχαία πρόκληση O P ερμηνεύει την πρόκληση ως ένα μυστικό που πρέπει να χωριστεί Κάθε μερίδιο θα χρησιμοποιείται στις απαντήσεις του P στο στάδιο Response Ο V αποδέχεται αν όλες τις απαντήσεις που έλαβε στο τελευταίο βήμα είναι έγκυρες. 41 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

OR-Schnorr PoK{(x 1, x 2) : h 1 = g x 1 1 (mod p) h 2 = g x 2 2 (mod p) } Υποθέτουμε ότι ο P ξέρει το x 1 42 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Μη διαλογικές αποδείξεις Ερώτηση Μπορούμε να καταργήσουμε τον V ; O P παράγει την απόδειξη μόνος του Η απόδειξη είναι επαληθεύσιμη από οποιονδήποτε Μετασχηματισμός: Fiat Shamir Αντικατάσταση της τυχαίας πρόκλησης με το αποτέλεσμα μιας ψευδοτυχαίας συνάρτησης με είσοδο τη δέσμευση (τουλάχιστον) Συνήθως συνάρτηση σύνοψης - H 43 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Non-interactive Schnorr Γνωστά Στοιχεία Δημόσια: Γεννήτορας g μιας (υπό)ομάδας τάξης q του Z p με δύσκολο DLP και στοιχείο h Z p Ιδιωτικά: O P έχει ένα witness x Z q ώστε h = g x mod p O P : Τυχαία επιλογή t R Z q, Yπολογισμός y = g t mod p Υπολογισμός c = H(y) όπου H είναι μια συνάρτηση σύνοψης που δίνει τιμές στο Z q Υπολογισμός s = t + cx mod q Δημοσιοποίηση του (h, c, s) Επαλήθευση (από οποιονδήποτε) c = H(g s h c ) 44 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Schnorr Signatures I Δημιουργία Κλειδιών: Επιλογή πρώτων p, q ώστε το DLP Επιλογή γεννήτορα g σε υποομάδα του Z p με δύσκολο DLP Επιλογή x Z q και υπολογισμός του h = g x mod p Δημόσιο κλειδί (p, g, h), ιδιωτικό κλειδί x. 45 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Schnorr Signatures II Υπογραφή Μηνύματος m Επιλογή τυχαίου t Z q Υπολογισμός y = g t mod p - δέσμευση c = H(y, m) - υπογραφή εξαρτάται και από το μήνυμα s = t cx mod q - (για να μην χρειάζεται εύρεση αντιστρόφου) Υπογραφή είναι:(c, s) 46 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Schnorr Signatures III Επαλήθευση υπογραφής στο m Verify(h, m, (c, s)) = { 1, c = H(g s h c, m) 0, αλλιώς 47 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Βιβλιογραφία I 1 St. Zachos and Aris Pagourtzis. Στοιχεία Θεωρίας Αριθμών και Εφαρμογές στην Κρυπτογραφία. Πανεπιστημιακές Σημειώσεις 2 Jonathan Katz and Yehuda Lindell. Introduction to Modern Cryptography (Chapman and Hall/Crc Cryptography and Network Security Series). Chapman and Hall/CRC, 2007 3 Paar, Christof, and Jan Pelzl. Understanding cryptography: a textbook for students and practitioners. Springer Science-Business Media, 2009. 4 Kiayias, Aggelos Cryptography primitives and protocols, UoA, 2015 5 Nigel Smart. Introduction to cryptography 6 Berry Schoenmakers. Cryptographic protocols, 2015. 7 D. Chaum and T. P. Pedersen. Wallet databases with observers. In Proceedings of the 12th Annual International Cryptology Conference on Advances in Cryptology, CRYPTO 92, pages 89 105, London, UK, UK,1993. Springer-Verlag. 8 R. Cramer, I. Damgard, and B. Schoenmakers. Proofs of partial knowledge and simplified design of witness hiding protocols. In Proceedings of the 14th Annual International Cryptology Conference on Advances in Cryptology, CRYPTO 94, pages 174 187, London, UK, UK, 1994. Springer-Verlag 9 A. Fiat and A. Shamir. How to prove yourself: practical solutions to identification and signature problems. In Proceedings on Advances in cryptology CRYPTO 86, pages 186 194, London, UK, UK, 1987. Springer-Verlag 10 O.Goldreich,S.Micali, and A.Wigderson. Proofs that yield nothing but their validity or all languages in np have zero-knowledge proof systems. J. ACM, 38(3):690 728, July 1991. 48 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης

Βιβλιογραφία II 11 S Goldwasser, S Micali, and C Rackoff. The knowledge complexity of interactive proof-systems. In Proceedings of the seventeenth annual ACM symposium on Theory of computing, STOC 85, pages 291 304, New York, NY, USA, 1985. ACM 12 Jean-Jacques Quisquater, Louis Guillou, Marie Annick, and Tom Berson. 1989. How to explain zero-knowledge protocols to your children. In Proceedings on Advances in cryptology (CRYPTO 89), Gilles Brassard (Ed.). Springer-Verlag New York, Inc., New York, NY, USA, 628-631. 13 Mike Rosulek, Zero-Knoweldge Proofs, with applications to Sudoku and Where s Waldo 14 C.P. Schnorr. Efficient signature generation by smart cards. Journal of Cryptology, 4(3):161 174, 1991 15 Online Lectures by Susan Hohenberger, Rafael Pass 16 Matthew Green, Zero knowledge proofs: An illustrated primer 17 Jeremy Kuhn Zero Knowledge Proofs A Primer 49 / 49 (ΕΜΠ - Κρυπτογραφία (2016-2017)) Αποδείξεις Μηδενικής Γνώσης