PSEUDORANDOM GENERATORS- PREDICATES & ZK PROOFS

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

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

Σχεδίαση & Ανάλυση Αλγορίθμων

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

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

Blum Blum Shub Generator

Διάλεξη 18: Πρόβλημα Βυζαντινών Στρατηγών. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Σχεδίαση και Ανάλυση Αλγορίθμων

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2)

Εισαγωγή Ορισμός Frequency moments

Τυχαιότητα (Randomness) I

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

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές

1 Diffie-Hellman Key Exchange Protocol

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

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

ΚΕΦΑΛΑΙΟ 3ο ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ ΕΛΕΓΧΟΣ ΤΥΧΑΙΟΤΗΤΑΣ

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

Προσεγγιστικοί Αλγόριθμοι

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

Pseudorandomness. Pseudorandom Generators - Derandomisation. Παναγιώτης Γροντάς ,

IV. Συνέχεια Συνάρτησης. math-gr

Στοιχεία Θεωρίας Αριθμών Και Εφαρμογές Στην Κρυπτογραφία. Linux Random Number Generator

Κεφάλαιο 9. Έλεγχοι υποθέσεων

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα. Η δομή Επιλογής στη PASCAL. H δομή Επανάληψης στη PASCAL. Η εντολή επανάληψης for

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

ΜΑΘΗΜΑΤΙΚΑ ΘΕΤΙΚΗΣ & ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ

Σημειωματάριο Δευτέρας 4 Δεκ. 2017

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

με Τέλος πάντων, έστω ότι ξεκινάει ένα άλλο υποθετικό σενάριο που απλά δεν διευκρινίζεται. Για το i) θα έχουμε , 2

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

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

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

Στατιστική Ι. Ενότητα 9: Κατανομή t-έλεγχος Υποθέσεων. Δρ. Γεώργιος Κοντέος Τμήμα Διοίκησης Επιχειρήσεων Γρεβενών

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

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

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

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

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Νικος Χαλιδιας Μαθηματικό Τμήμα κατεύθυνση Στατιστικής και Αναλογιστικών-Χρηματοοικονομικών Μαθηματικών Πανεπιστημιο Αιγαιου

Δραστηριότητα Περίπτωσης. Τίτλος: Οι διαφορές της απλής, της σύνθετης και της εμφωλευμένης δομής επιλογής

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

Λύσεις 1ης Ομάδας Ασκήσεων

Ελένη Πύλια Κατερίνα Σωτηράκη

(18 ο ) ΚΛΑΣΜΑΤΙΚΗ ΑΝΑΓΩΓΗ - ΙI: «διάμεσος &θεσιακή επιλογή στοιχείου»

Κεφάλαιο 9. Έλεγχοι υποθέσεων

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Επανάληψη Μαθήματος

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

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις

Κεφάλαιο 4: Διαφορικός Λογισμός

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων

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

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

UP class. & DES και AES

Ανάλυση Δεδομένων με χρήση του Στατιστικού Πακέτου R

ΕΝΟΤΗΤΑ 1: ΟΡΙΣΜΟΣ ΠΕΔΙΟ ΟΡΙΣΜΟΥ ΠΡΑΞΕΙΣ ΣΥΝΑΡΤΗΣΕΩΝ ΓΡΑΦΙΚΕΣ ΠΑΡΑΣΤΑΣΕΙΣ ΒΑΣΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΛΥΜΕΝΑ ΘΕΜΑΤΑ ΘΕΜΑ Α

Εισαγωγή στον Προγραμματισμό

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

Αλγόριθμοι για αυτόματα

Προγραμματισμός 2 Σημειώσεις εργαστηρίου

2. Η πιθανότητα της αριθμήσιμης ένωσης ξένων μεταξύ τους ενδεχομένων είναι το άθροισμα των πιθανοτήτων των ενδεχομένων.

ΘΕΜΑ Α Α1. Αν και είναι δύο συμπληρωματικά ενδεχόμενα ενός δειγματικού χώρου να αποδείξετε ότι για τις πιθανότητές τους ισχύει: ( ) 1 ( ).

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

ΜΑΘΗΜΑΤΙΚΑ Θετικής & Τεχνολογικής Κατεύθυνσης Β ΜΕΡΟΣ (ΑΝΑΛΥΣΗ) ΚΕΦ 1 ο : Όριο Συνέχεια Συνάρτησης

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

Στατιστικός έλεγχος υποθέσεων (Μέρος 1 ο )

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

Στατιστική και Θεωρητική Πληροφορική σε πολλές Διαστάσεις

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 18: Χρονική και Χωρική Πολυπλοκότητα

Προσεγγιστικοί Αλγόριθμοι

P (A B) = P (AB) P (B) P (A B) = P (A) P (A B) = P (A) P (B)

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

1η Σειρά Γραπτών Ασκήσεων

07/11/2016. Στατιστική Ι. 6 η Διάλεξη (Βασικές διακριτές κατανομές)

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

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

Φροντιστήριο 9 Λύσεις

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

Φροντιστήριο 10 Λύσεις

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

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

3.1 ΔΕΙΓΜΑΤΙΚΟΙ ΧΩΡΟΙ ΕΝΔΕΧΟΜΕΝΑ

ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ ΕΠΙΜΕΛΕΙΑ : ΑΥΓΕΡΙΝΟΣ ΒΑΣΙΛΗΣ

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων

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

Βασικές ασκήσεις Βασική θεωρία. του πεδίου ορισμού της; β) Έστω η συνάρτηση: ένα σημείο του πεδίου ορισμού της. Θα λέμε ότι η f είναι συνεχής στο x

2.5 ΕΛΕΓΧΟΣ ΠΟΣΟΣΤΙΑΙΩΝ ΣΗΜΕΙΩΝ ΜΙΑΣ ΚΑΤΑΝΟΜΗΣ (The Quantile Test)

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

). Πράγματι, στο διάστημα [ x, x 1 2 ικανοποιεί τις προϋποθέσεις του Θ.Μ.Τ. Επομένως, υπάρχει ξ x 1,

Ο Ρ Ι Ο & Σ Υ Ν Ε Χ Ε Ι Α Σ Υ Ν Α Ρ Τ Η Σ Η Σ Όριο Συνάρτησης

Σύγκριση μέσου όρου πληθυσμού με τιμή ελέγχου. One-Sample t-test

f x g x f x g x, x του πεδίου ορισμού της; Μονάδες 4 είναι οι παρατηρήσεις μιας ποσοτικής μεταβλητής Χ ενός δείγματος μεγέθους ν και w

Μαθηματικά Πληροφορικής Πιθανοτικά Εργαλεία. Υποπροσθετικότητα. Η Πιθανοτική Μέθοδος (The Probabilistic Method)

Transcript:

PSEUDORANDOM GENERATORS- PREDICATES & ZK PROOFS ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 2 Επιμέλεια: Νικόλαος Λάμπρου μπλ 2014

Γεννήτρια ψευδοτυχαίων αριθμών Άτυπος ορισμός: Έστω μια συνάρτηση G από strings σε strings.λέμε ότι η G είναι γεννήτρια ψευδοτυχαίων αριθμών αν από τυχαία strings μήκους m μπορεί να παράγει τυχαία strings μήκους l>m.

Γεννήτρια ψευδοτυχαίων αριθμών Άτυπος ορισμός: Έστω μια συνάρτηση G από strings σε strings.λέμε ότι η G είναι γεννήτρια ψευδοτυχαίων αριθμών αν από τυχαία strings μήκους m μπορεί να παράγει τυχαία strings μήκους l>m. Έχουν πολλές εφαρμογές στην κρυπτογραφία (κυρίως σαν υπορουτίνα πρωτοκόλλων)

Γεννήτρια ψευδοτυχαίων αριθμών Ορισμός : Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι ψευδογεννήτρια τυχαίων αριθμών αν είναι δύσκολο να διαχωρίσεις αν οι τιμές της προέρχονται από την G η από την U l.

Γεννήτρια ψευδοτυχαίων αριθμών Ορισμός : Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι ψευδογεννήτρια τυχαίων αριθμών αν είναι δύσκολο να διαχωρίσεις αν οι τιμές της προέρχονται από την G η από την U l. Δηλαδή για ppt αλγόριθμο διαχωρισμού Α να ισχύει: Pr[A(G(U n ))=1]-Pr[A(U l )=1]<neg(1 n )

Γεννήτρια ψευδοτυχαίων αριθμών Ορισμός : Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι ψευδογεννήτρια τυχαίων αριθμών αν είναι δύσκολο να διαχωρίσεις αν οι τιμές της προέρχονται από την G η από την U l. Δηλαδή για ppt αλγόριθμο διαχωρισμού Α να ισχύει: Pr[A(G(U n ))=1]-Pr[A(U l )=1]<neg(1 n ) Αλλιώς για οποιοδήποτε στατιστικό test πολυωνυμικού χρόνου η απόσταση να είναι αμελητέα.

Ορισμοί Έστω δυο τυχαίες κατανομές X,Y.Ορίζουμε την στατιστική τους απόσταση ως: D(X,Y)=½(Σ Pr(X=k)-Pr(Y=k) )

Ορισμοί Έστω δυο τυχαίες κατανομές X,Y.Ορίζουμε την στατιστική τους απόσταση ως: D(X,Y)=½(Σ Pr(X=k)-Pr(Y=k) ) Ορίζουμε ως στατιστικό test η αλγόριθμο διαχωρισμού Α (δεν μας ενδιαφέρει να είναι πολυωνυμικός) Pr(A(x)=1)-Pr(A(y)=1) D(X,Y)

Ορισμοί Έστω δυο τυχαίες κατανομές X,Y.Ορίζουμε την στατιστική τους απόσταση ως: D(X,Y)=½(Σ Pr(X=k)-Pr(Y=k) ) Ορίζουμε ως στατιστικό test η αλγόριθμο διαχωρισμού Α (δεν μας ενδιαφέρει να είναι πολυωνυμικός) Pr(A(x)=1)-Pr(A(y)=1) D(X,Y) Αυτό μας περιγράφει την επιτυχία του Α να καταλάβει από πια κατανομή εμφανίζεται η τιμή και το καλύτερο που μπορεί να φτάσει είναι η στατιστική απόσταση τον τιμών.

Unpredictability Ορισμός: Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι unpredictable αν μας δώσουν μια ακολουθία της εικόνας του string τις και εμείς δεν μπορούμε να προσδιορίσουμε το επόμενο bit της.

Unpredictability Ορισμός: Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι unpredictable αν μας δώσουν μια ακολουθία της εικόνας του string τις και εμείς δεν μπορούμε να προσδιορίσουμε το επόμενο bit της. Δηλαδή στην καλύτερη να διαλέξουμε τυχαία! Πιο αναλυτικά:

Unpredictability Ορισμός: Μια συνάρτηση G από το {0,1} n {0,1} l(n) λέμε ότι είναι unpredictable αν μας δώσουν μια ακολουθία της εικόνας του string τις και εμείς δεν μπορούμε να προσδιορίσουμε το επόμενο bit της. Δηλαδή στην καλύτερη να διαλέξουμε τυχαία! Πιο αναλυτικά: Για κάθε πιθανοτικό πολυωνιμικό αλγόριθμο Β,η πιθανότητα να βρει το επόμενο bit είναι το πολύ ½ και κάτι αμελητέο. Pr[B(1 n,y 1,y 2,..,y i-1 )=y i ]<=1/2+neg(1 n )

Το unpredictability είναι ασφαλές κάτω από την υπόθεση του psedorandomness Υποθέτοντας ότι υπάρχει Α ppt τω να μπορεί να προβλέψει το επόμενο bit με πιθανότητα ½ + κάτι μη αμελητέο, τότε μπορούμε να τον χρησιμοποιήσουμε για να διακρίνουμε αν κάτι είναι τυχαίο η ψευδοτυχαίο με πιθανότητα μη αμελητέα.

Το unpredictability είναι ασφαλές κάτω από την υπόθεση του psedorandomness Υποθέτοντας ότι υπάρχει Α ppt τω να μπορεί να προβλέψει το επόμενο bit με πιθανότητα ½ + κάτι μη αμελητέο, τότε μπορούμε να τον χρησιμοποιήσουμε για να διακρίνουμε αν κάτι είναι τυχαίο ή ψευδοτυχαίο με πιθανότητα μη αμελητέα. Β κάνει το εξής: 1)Διάβασε το input μέχρι το i-1.

Το unpredictability είναι ασφαλές κάτω από την υπόθεση του psedorandomness Υποθέτοντας ότι υπάρχει Α ppt τω να μπορεί να προβλέψει το επόμενο bit με πιθανότητα ½ + κάτι μη αμελητέο, τότε μπορούμε να τον χρησιμοποιήσουμε για να διακρίνουμε αν κάτι είναι τυχαίο ή ψευδοτυχαίο με πιθανότητα μη αμελητέα. Β κάνει το εξής: 1)Διάβασε το input μέχρι το i-1. 2)Κάλεσε τον predicator A με input τα πρώτα i-1 bits.

Το unpredictability είναι ασφαλές κάτω από την υπόθεση του psedorandomness Υποθέτοντας ότι υπάρχει Α ppt τω να μπορεί να προβλέψει το επόμενο bit με πιθανότητα ½ + κάτι μη αμελητέο, τότε μπορούμε να τον χρησιμοποιήσουμε για να διακρίνουμε αν κάτι είναι τυχαίο ή ψευδοτυχαίο με πιθανότητα μη αμελητέα. Β κάνει το εξής: 1)Διάβασε το input μέχρι το i-1. 2)Κάλεσε τον predicator A με input τα πρώτα i-1 bits. 3)Υπολόγισε το επόμενο bit (το i-οστο)

Το unpredictability είναι ασφαλές κάτω από την υπόθεση του psedorandomness Υποθέτοντας ότι υπάρχει Α ppt τω να μπορεί να προβλέψει το επόμενο bit με πιθανότητα ½ + κάτι μη αμελητέο, τότε μπορούμε να τον χρησιμοποιήσουμε για να διακρίνουμε αν κάτι είναι τυχαίο ή ψευδοτυχαίο με πιθανότητα μη αμελητέα. Β κάνει το εξής: 1)Διάβασε το input μέχρι το i-1. 2)Κάλεσε τον predicator A με input τα πρώτα i-1 bits. 3)Υπολόγισε το επόμενο bit (το i-οστο) 4) Σύγκρινε το με το i του input,αν ταυτίζονται επέστρεψε 1, αλλιώς 0.

Πιθανότητα επιτυχίας του Β Η πιθανότητα επιτυχίας του Β δεδομένου ότι αυτό που πηρέ σαν input ήταν από την σωστή κατανομή είναι όσο και πιθανότητα επιτυχίας του Α.

Πιθανότητα επιτυχίας του Β Η πιθανότητα επιτυχίας του Β δεδομένου ότι αυτό που πηρέ σαν input ήταν από την σωστή κατανομή είναι όσο και πιθανότητα επιτυχίας του Α. Ενώ η πιθανότητα να εκτυπώσει ένα δεδομένου ότι ήταν τελείως random, είναι το πολύ ½.

Πιθανότητα επιτυχίας του Β Η πιθανότητα επιτυχίας του Β δεδομένου ότι αυτό που πηρέ σαν input ήταν από την σωστή κατανομή είναι όσο και πιθανότητα επιτυχίας του Α. Ενώ η πιθανότητα να εκτυπώσει ένα δεδομένου ότι ήταν τελείως random, είναι το πολύ ½. Άρα: Pr[B(G(Un))=1]-Pr[B(U l )=1] a

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Υποθέτουμε ότι έχουμε αλγόριθμο Α τω Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Υποθέτουμε ότι έχουμε αλγόριθμο Α τω Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a Θα φτιάξουμε predicator B τω αν μας δοθούν τα πρώτα i bits να προβλέπει με πιθανότητα καλύτερη του ½ + κάτι μη αμελητέο, το επόμενο bit.

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Υποθέτουμε ότι έχουμε αλγόριθμο Α τω Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a Θα φτιάξουμε predicator B τω αν μας δοθούν τα πρώτα i bits να προβλέπει με πιθανότητα καλύτερη του ½ + κάτι μη αμελητέο, το επόμενο bit. Για την απόδειξη αυτή θα χρησιμοποιηθεί το υβριδικό επιχείρημα (στην πιθανοτική ανάλυση).

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η τεχνική hydrid argument ορίζει l-αδες bit,h 0,H 1,,H l.

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η τεχνική hydrid argument ορίζει l-αδες bit,h 0,H 1,,H l. H 0 =(z 1,z 2,,z l ), όπου z i є R {0,1}

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η τεχνική hydrid argument ορίζει l-αδες bit,h 0,H 1,,H l. H 0 =(z 1,z 2,,z l ), όπου z i є R {0,1} Η 1 =(y 1,z 2,.,z l ), όπου y 1 το πρώτο bit της γεννήτριας μας για εισοδο x (η γεννήτρια έδωσε l τέτοιες τιμές, από τις οποίες εμείς πήραμε την πρώτη.

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η τεχνική hydrid argument ορίζει l-αδες bit,h 0,H 1,,H l. H 0 =(z 1,z 2,,z l ), όπου z i є R {0,1} Η 1 =(y 1,z 2,.,z l ), όπου y 1 το πρώτο bit της γεννήτριας μας για εισοδο x (η γεννήτρια έδωσε l τέτοιες τιμές, από τις οποίες εμείς πήραμε την πρώτη. Γενικά Η i =(y 1,y 2,,y i,z i+1,,z l )

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η κατασκευή του Β:

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η κατασκευή του Β: Δέχεται σαν είσοδο τα πρώτα i bits τις τιμής G(x) (όπου x є R {0,1} n )

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η κατασκευή του Β: Δέχεται σαν είσοδο τα πρώτα i bits τις τιμής G(x) (όπου x є R {0,1} n ) Δημιουργεί τον H i και καλεί τον Α με είσοδο H i

Το psedorandomness είναι ασφαλές κάτω από την υπόθεση του unpredictability Η κατασκευή του Β: Δέχεται σαν είσοδο τα πρώτα i bits τις τιμής G(x) (όπου x є R {0,1} n ) Δημιουργεί τον H i και καλεί τον Α με είσοδο H i Αν ο Α εκτυπώσει 1 τότε ο Β εκτυπώνει τον z i+1, αλλιώς 1-z i+1.

Πιθανοτική ανάλυση Β Λόγω του ότι η σχέση Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a ισχύει για απείρως πολλά n. Eίτε με το ευθύ θα ισχύει για απείρως πολλά είτε το αντίθετο.

Πιθανοτική ανάλυση Β Λόγω του ότι η σχέση Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a ισχύει για απείρως πολλά n. Eίτε με το ευθύ θα ισχύει για απείρως πολλά είτε το αντίθετο. Χ.Γ υποθέτω ότι ισχύει για το ευθύ, δηλαδή Pr[Α(G(Un))=1]- Pr[Α(U l )=1] a (στην άλλη περίπτωση θα τροποποιήσουμε λιγάκι τα παρακάτω για να εκφράσουμε τα ιδία συμπεράσματα αλλά στην περίπτωση που η μηχανή εκτύπωνε 0,μας διευκολύνει για το φράξιμο) Ορίζω p i =Pr(A(H i )=1)

Πιθανοτική ανάλυση Β Λόγω του ότι η σχέση Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a ισχύει για απείρως πολλά n. Eίτε με το ευθύ θα ισχύει για απείρως πολλά είτε το αντίθετο. Χ.Γ υποθέτω ότι ισχύει για το ευθύ, δηλαδή Pr[Α(G(Un))=1]- Pr[Α(U l )=1] a (στην άλλη περίπτωση θα τροποποιήσουμε λιγάκι τα παρακάτω για να εκφράσουμε τα ιδία συμπεράσματα αλλά στην περίπτωση που η μηχανή εκτύπωνε 0,μας διευκολύνει για το φράξιμο) Ορίζω p i =Pr(A(H i )=1) Από υπόθεση p l -p 0 a

Πιθανοτική ανάλυση Β Λόγω του ότι η σχέση Pr[Α(G(U n ))=1]-Pr[Α(U l )=1] a ισχύει για απείρως πολλά n. Eίτε με το ευθύ θα ισχύει για απείρως πολλά είτε το αντίθετο. Χ.Γ υποθέτω ότι ισχύει για το ευθύ, δηλαδή Pr[Α(G(Un))=1]- Pr[Α(U l )=1] a (στην άλλη περίπτωση θα τροποποιήσουμε λιγάκι τα παρακάτω για να εκφράσουμε τα ιδία συμπεράσματα αλλά στην περίπτωση που η μηχανή εκτύπωνε 0,μας διευκολύνει για το φράξιμο) Ορίζω p i =Pr(A(H i )=1) Από υπόθεση p l -p 0 a Αναπτύσσω το παραπάνω σαν τηλεσκοπική σειρά, δηλαδή (p l -p l-1 )+(p l-1 -p l-2 )+ +(p 1 -p 0 ) a

Πιθανοτική ανάλυση Β To E[p i -p i-1 ] a/l

Πιθανοτική ανάλυση Β To E[p i -p i-1 ] a/l Παρατηρούμε ότι τουλάχιστον 1 ζευγαράκι θα υπάρχει που p i -p i-1 a/l (αν είχαμε κράτηση τα απόλυτα λόγω τριγωνικής ανισότητας)

Πιθανοτική ανάλυση Β To E[p i -p i-1 ] a/l Παρατηρούμε ότι τουλάχιστον 1 ζευγαράκι θα υπάρχει που p i -p i-1 a/l (αν είχαμε κράτηση τα απόλυτα λόγω τριγωνικής ανισότητας) Θα δείξουμε ότι Pr[B(1 n,y 1,y 2,..,y i-1 )=y i ] 1/2 +(p i -p i-1 ) για κάθε i.

Πιθανοτική ανάλυση Β Η πιθανότητα επιτυχίας του αλγορίθμου μας είναι Pr(A print =1 z i =y i ) Pr(z i =y i )+Pr(A print =0 z i =1-y i ) Pr(z i =1-y i ) ½ p i +1/2 (1-Pr(A print =1 z i =1-y i ))

Πιθανοτική ανάλυση Β Η πιθανότητα επιτυχίας του αλγορίθμου μας είναι Pr(A print =1 z i =y i ) Pr(z i =y i )+ Pr(A print =0 z i =1-y i ) Pr(z i =1-y i ) ½ p i +1/2 (1-Pr(A print =1 z i =1-y i )) Ξέρουμε ότι p i-1 =1/2p i +1/2 Pr(A print =1 z i =1-y i )

Πιθανοτική ανάλυση Β Η πιθανότητα επιτυχίας του αλγορίθμου μας είναι Pr(A print =1 z i =y i ) Pr(z i =y i )+ Pr(A print =0 z i =1-y i ) Pr(z i =1-y i ) ½ p i +1/2 (1-Pr(A print =1 z i =1-y i )) Ξέρουμε ότι p i-1 =1/2p i +1/2 Pr(A print =1 z i =1-y i ) Αντικαθιστώντας προκύπτει το ζητούμενο.

ZERO KNOWLEDGE Έχουμε δυο παίκτες Α,Β

ZERO KNOWLEDGE Έχουμε δυο παίκτες Α,Β Ο Α(prover) θέλει να πείσει τον Β(verifier) ότι ξέρει ένα μυστικό χωρίς βεβαία να το αποκαλύψει.

ZERO KNOWLEDGE Έχουμε δυο παίκτες Α,Β Ο Α(prover) θέλει να πείσει τον Β(verifier) ότι ξέρει ένα μυστικό χωρίς βεβαία να το αποκαλύψει. Ο Β κάνει μια ερώτηση στον Α(challenge) που μόνο αν γνωρίζει το μυστικό (μικρή πιθανότητα να τον ξεγελάσει) να μπορεί να απαντήσει.

ZERO KNOWLEDGE Έχουμε δυο παίκτες Α,Β Ο Α(prover) θέλει να πείσει τον Β(verifier) ότι ξέρει ένα μυστικό χωρίς βεβαία να το αποκαλύψει. Ο Β κάνει μια ερώτηση στον Α(challenge) που μόνο αν γνωρίζει το μυστικό (μικρή πιθανότητα να τον ξεγελάσει) να μπορεί να απαντήσει. Έτσι ο Α έχει πείσει τον Β (με μεγάλη πιθανότητα) ότι όντως ξέρει το μυστικό, χωρίς να το αποκαλύψει.

ZERO KNOWLEDGE ZK proofs: Έστω L μια γλώσσα στο NP,και Μ(x,y) η ντετερμινιστική πολ/κου χρόνου μηχανή Turing για την οπoία αν το x є L υπάρχει πολ/κου μήκους πιστοποιητικό y, τω Μ(x,y)=1

ZERO KNOWLEDGE ZK proofs: Έστω L μια γλώσσα στο NP,και Μ(x,y) η ντετερμινιστική πολ/κου χρόνου μηχανή Turing για την οπoία αν το x є L υπάρχει πολ/κου μήκους πιστοποιητικό y, τω Μ(x,y)=1 Ένα ζευγάρι P,V ppt αλγόριθμοι καλούνται απόδειξη μηδενικής γνώσης για την γλωσσά L αν ικανοποιούν τα εξής:

ZERO KNOWLEDGE ZK proofs: Έστω L μια γλώσσα στο NP,και Μ(x,y) η ντετερμινιστική πολ/κου χρόνου μηχανή Turing για την οπoία αν το x є L υπάρχει πολ/κου μήκους πιστοποιητικό y, τω Μ(x,y)=1 Ένα ζευγάρι P,V ppt αλγόριθμοι καλούνται απόδειξη μηδενικής γνώσης για την γλωσσά L αν ικανοποιούν τα εξής: Completeness:Aν για κάθε x є L και y πιστοποιητικό γι αυτό Pr[out V (P(x,y),V(x)] 2/3,με άλλα λόγια αν και οι δυο είναι τίμιοι(δεν ακολουθούν κάποια στρατηγική)το verify να γίνει με πιθανότητα τουλάχιστον 2/3.

ZERO KNOWLEDGE ZK proofs: Έστω L μια γλώσσα στο NP,και Μ(x,y) η ντετερμινιστική πολ/κου χρόνου μηχανή Turing για την οπoία αν το x є L υπάρχει πολ/κου μήκους πιστοποιητικό y, τω Μ(x,y)=1 Ένα ζευγάρι P,V ppt αλγόριθμοι καλούνται απόδειξη μηδενικής γνώσης για την γλωσσά L αν ικανοποιούν τα εξής: Completeness:Aν για κάθε x є L και y πιστοποιητικό γι αυτό Pr[out V (P(x,y),V(x)] 2/3,με άλλα λόγια αν και οι δυο είναι τίμιοι(δεν ακολουθούν κάποια στρατηγική)το verify να γίνει με πιθανότητα τουλάχιστον 2/3. Soundness:Aν x δεν ανήκει L και για οποιαδήποτε στρατηγική P* με input y, Pr[out V (P*(x,y),V(x)] 1/3, δηλαδή να είναι δύσκολο o P* κοροϊδέψει τον V σε περίπτωση που δεν έχει αυτή την γνώση.

ZERO KNOWLEDGE Perfect Zero Knowledge:Για κάθε ppt V* υπάρχει ένας προσδοκώμενος ppt (average case) αλγόριθμος S* τω για κάθε x ανήκει L και y πιστοποιητικό, να ισχύει:

ZERO KNOWLEDGE Perfect Zero Knowledge:Για κάθε ppt V* υπάρχει ένας προσδοκώμενος ppt (average case) αλγόριθμος S* τω για κάθε x ανήκει L και y πιστοποιητικό, να ισχύει: out V* (P(x,y),V*(x)) S*(x)

ZERO KNOWLEDGE Perfect Zero Knowledge:Για κάθε ppt V* υπάρχει ένας προσδοκώμενος ppt (average case) αλγόριθμος S* τω για κάθε x ανήκει L και y πιστοποιητικό, να ισχύει: out V* (P(x,y),V*(x)) S*(x) Δηλαδή να είναι στατιστικά αδιαχώριστα

ZERO KNOWLEDGE Perfect Zero Knowledge:Για κάθε ppt V* υπάρχει ένας προσδοκώμενος ppt (average case) αλγόριθμος S* τω για κάθε x ανήκει L και y πιστοποιητικό, να ισχύει: out V* (P(x,y),V*(x)) S*(x) Δηλαδή να είναι στατιστικά αδιαχώριστα Ο S* ονομάζεται simulator για τον V*,και προσομοιώνει το output του με τον τίμιο prover P.(real/ideal paradigm,simulator base security)

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές Prover input:ένα permutation π :[n]->[n], τω G 1 =π(g 0 )

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές Prover input:ένα permutation π :[n]->[n], τω G 1 =π(g 0 ) Ο P διαλέγει ένα τυχαίο permutation π 1 και στέλνει στον V το π 1 (G 1 )

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές Prover input:ένα permutation π :[n]->[n], τω G 1 =π(g 0 ) Ο P διαλέγει ένα τυχαίο permutation π 1 και στέλνει στον V το π 1 (G 1 ) Ο V διαλέγει b є R {0,1} και το στέλνει

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές Prover input:ένα permutation π :[n]->[n], τω G 1 =π(g 0 ) Ο P διαλέγει ένα τυχαίο permutation π 1 και στέλνει στον V το π 1 (G 1 ) Ο V διαλέγει b є R {0,1} και το στέλνει Αν το b=1 ο P στέλνει το π 1, αλλιώς το π 1 (π)

Ένα παράδειγμα ZK proof Public input:ένα ζευγάρι γραφήματα G 0,G 1 με n κορυφές Prover input:ένα permutation π :[n]->[n], τω G 1 =π(g 0 ) Ο P διαλέγει ένα τυχαίο permutation π 1 και στέλνει στον V το π 1 (G 1 ) Ο V διαλέγει b є R {0,1} και το στέλνει Αν το b=1 ο P στέλνει το π 1, αλλιώς το π 1 (π) Ο V δέχεται αν H=π(G b ),(όπου H= π 1 (G 1 ))

Ένα παράδειγμα ZK proof Aν και οι δυο παίκτες επακολουθήσουν το πρωτόκολλο ο V θα δεχτεί με πιθανότητα 1(1>2/3-> correctness)

Ένα παράδειγμα ZK proof Aν και οι δυο παίκτες επακολουθήσουν το πρωτόκολλο ο V θα δεχτεί με πιθανότητα 1(1>2/3-> correctness) Aν τα γραφήματα είναι ισομορφικά ο V θα απορρίψει με πιθανότητα ½( αν το τρέξουμε το πρωτόκολλο πιο πολλές φορές η πιθανότητα γίνεται <1/3, soundness)

Ένα παράδειγμα ZK proof Tώρα για το perfect ZK

Ένα παράδειγμα ZK proof Tώρα για το perfect ZK Κατασκευάζω S* ως εξής

Ένα παράδειγμα ZK proof Tώρα για το perfect ZK Κατασκευάζω S* ως εξής S* διαλέγει b є R {0,1} και ένα τυχαιο permutation π, και στέλνει το π(g b ) Αν το b που θα λάβει από τον V* είναι ίσο με το b τότε στέλνει το π στον V* και εκτυπώνει ότι και αυτός

Ένα παράδειγμα ZK proof Tώρα για το perfect ZK Κατασκευάζω S* ως εξής S* διαλέγει b є R {0,1} και ένα τυχαιο permutation π, και στέλνει το π(g b ) Αν το b που θα λάβει από τον V* είναι ίσο με το b τότε στέλνει το π στον V* και εκτυπώνει ότι και αυτός ( λέμε ότι η εξομοίωση ήταν επιτυχής) Αλλιώς ξανατρέχει το πρωτόκολλο (rewind)

Ένα παράδειγμα ZK proof Tώρα για το perfect ZK Κατασκευάζω S* ως εξής S* διαλέγει b є R {0,1} και ένα τυχαιο permutation π, και στέλνει το π(g b ) Αν το b που θα λάβει από τον V* είναι ίσο με το b τότε στέλνει το π στον V* και εκτυπώνει ότι και αυτός ( λέμε ότι η εξομοίωση ήταν επιτυχής) Αλλιώς ξανατρέχει το πρωτόκολλο (rewind) Παρατηρούμε ότι η πιθανότητα επιτυχίας είναι ½,και με κ επαναλήψεις ευελπιστούμε να έχει μια επιτυχία(εχει με πιθανότητα 1-2 -κ )

Ένα παράδειγμα ZK proof Σε περίπτωση επιτυχούς εξομοίωσης παρατηρούμε ότι ο V* είτε μίλαγε με τον P είτε με τον S* του ήταν το ίδιο, ήταν σαν μίλαγε μονός του! Άρα ότι πληροφορία πήρε από την συζήτηση με τον P την πήρε και μιλώντας με τον εαυτό του!(τον S*)

Ένα παράδειγμα ZK proof Σε περίπτωση επιτυχούς εξομοίωσης παρατηρούμε ότι ο V* είτε μίλαγε με τον P είτε με τον S* του ήταν το ίδιο, ήταν σαν μίλαγε μονός του! Άρα ότι πληροφορία πήρε από την συζήτηση με τον P την πήρε και μιλώντας με τον εαυτό του!(τον S*) Άρα out V* (P(x,y),V*(x)) S*(x)

Στρίψιμο νομίσματος μέσω τηλεφώνου και δέσμευση bit Έστω δυο παίκτες Α,Β που θέλουν να παράγουν ένα τυχαίο bit.

Στρίψιμο νομίσματος μέσω τηλεφώνου και δέσμευση bit Έστω δυο παίκτες Α,Β που θέλουν να παράγουν ένα τυχαίο bit. Ο Α διαλέγει b є R {0,1} το δεσμεύει μέσω μια συνάρτησης com(b),και το στέλνει στον Β.

Στρίψιμο νομίσματος μέσω τηλεφώνου και δέσμευση bit Έστω δυο παίκτες Α,Β που θέλουν να παράγουν ένα τυχαίο bit. Ο Α διαλέγει b є R {0,1} το δεσμεύει μέσω μια συνάρτησης com(b),και το στέλνει στον Β. Ο Β διαλέγει ένα a є R {0,1} και το στέλνει στον Α.

Στρίψιμο νομίσματος μέσω τηλεφώνου και δέσμευση bit Έστω δυο παίκτες Α,Β που θέλουν να παράγουν ένα τυχαίο bit. Ο Α διαλέγει b є R {0,1} το δεσμεύει μέσω μια συνάρτησης com(b),και το στέλνει στον Β. Ο Β διαλέγει ένα a є R {0,1} και το στέλνει στον Α. Ο Α ανοίγει την δέσμευση του στον Β

Στρίψιμο νομίσματος μέσω τηλεφώνου και δέσμευση bit Έστω δυο παίκτες Α,Β που θέλουν να παράγουν ένα τυχαίο bit. Ο Α διαλέγει b є R {0,1} το δεσμεύει μέσω μια συνάρτησης com(b),και το στέλνει στον Β. Ο Β διαλέγει ένα a є R {0,1} και το στέλνει στον Α. Ο Α ανοίγει την δέσμευση του στον Β Και οι δυο υπολογίζουν το XOR(a,b) και εκτυπώνουν