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



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

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

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

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

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

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

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

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

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

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

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

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

Πρόβληµα 2 (15 µονάδες)

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

Ελληνικό Ανοικτό Πανεπιστήµιο Σπουδές στην Πληροφορική. Μια σύντοµη διαδροµή στα µονοπάτια της σύγχρονης κρυπτογραφίας

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web

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

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

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

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

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

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

1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών;

YΒΡΙΔΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ

9 ΚΡΥΠΤΟΓΡΑΦΙΚΑ ΠΡΩΤΟΚΟΛΛΑ

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

Εισαγωγή στην Κρυπτολογία 3. Ασφάλεια Τηλεπικοινωνιακών Συστημάτων Κωδικός DIΤ114 Σταύρος ΝΙΚΟΛΟΠΟΥΛΟΣ

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

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

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

Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA. Κασαπίδης Γεώργιος -Μαθηµατικός

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

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

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

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

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

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

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

Η κρυπτογραφία στα e lottery

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

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

Blum Blum Shub Generator

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

Παύλος Εφραιμίδης. Δύο παραδείγματα. Ασφ Υπολ Συστ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών. HY-217: Πιθανότητες - Χειµερινό Εξάµηνο 2015 ιδάσκων : Π. Τσακαλίδης

(1) 98! 25! = 4 100! 23! = 4

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

Ασφάλεια στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης

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

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

Ασφάλεια Υπολογιστικών Συστηµάτων

Ηλεκτρονικοί Υπολογιστές IV

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

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

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

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

3ο Φροντιστηριο ΗΥ217

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. Συναρτήσεις Κατακερματισμού

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

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

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

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

α n z n = 1 + 2z 2 + 5z 3 n=0

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο. Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος

Πρόβληµα 2 (12 µονάδες)

ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΑΚΥΒΕΡΝΗΣΗ ΣΤΗΝ ΕΕ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών. HY-217: Πιθανότητες - Χειµερινό Εξάµηνο 2014 ιδάσκων : Π. Τσακαλίδης. Λύσεις εύτερης Σειράς Ασκήσεων

ΨΗΦΙΑΚΑ ΠΙΣΤΟΠΟΙΗΤΙΚΑ ΓΙΑ ΑΣΦΑΛΗ ΚΑΙ ΠΙΣΤΟΠΟΙΗΜΕΝΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΤΗΝ ΤΡΑΠΕΖΑ ΤΗΣ ΕΛΛΑΔΟΣ. Οδηγίες προς τις Συνεργαζόμενες Τράπεζες

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ

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

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

P( n, k) P(5,5) 5! 5! 10 q! q!... q! = 3! 2! = 0! 3! 2! = 3! 2!

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

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα

PSEUDORANDOM GENERATORS- PREDICATES & ZK PROOFS

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

ΔΙΑΔΡΑΣΤΙΚΟ ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ

Extensive Games with Imperfect Information

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

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

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

Ασφάλεια Υπολογιστικών Συστημάτων

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2

Βασικές αρχές. κρυπτανάλυσης. ΚΕΦΑΛΑΙΟ 1

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών. HY-217: Πιθανότητες - Χειµερινό Εξάµηνο 2017 ιδάσκων : Π. Τσακαλίδης

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Κρυπτογράφηση: Το Α και το Ω της δικτυακής ασφάλειας Παρελθόν και µέλλον Το παρελθόν: Ο αλγόριθµος του Καίσαρα

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

Κρυπτογραφία. Εργαστηριακό μάθημα 1

P (A) = 1/2, P (B) = 1/2, P (C) = 1/9

(1) 98! 25! = 4 100! 23! = 4

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών. HY-217: Πιθανότητες-Χειµερινό Εξάµηνο ιδάσκων : Π. Τσακαλίδης.

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

Πρόσφατες κατευθύνσεις

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

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

P (A 1 A 2... A n ) = P (A 1 )P (A 2 A 1 )P (A 3 A 1 A 2 ) P (A n A 1 A 2 A n 1 ).

Transcript:

Κρυπτογραφικά Πρωτόκολλα Παύλος Εφραιµίδης 25/04/2013 1 Κρυπτογραφικά Πρωτόκολλα Bit Commitment Fair Coin Mental Poker Secret Sharing Zero-Knowledge Protocol 2 πρωτόκολλα και υπηρεσίες χρήστης κρυπτογραφικές υπηρεσίες (εµπιστευτικότητα, ακεραιότητα, κτλ.) κρυπτογραφικά πρωτόκολλα (υπογραφή, µεταφορά κλειδιών κτλ.) κρυπτογραφικές πράξεις (κρυπτογράφηση, αποκρυπτογράφηση, σύνοψη κτλ.) 3 1

το πρόβληµα του bit commitment 4 παράδειγµα Αλίκη προς Μπάµπη: ιάλεξε έναν αριθµό από το 1 µέχρι το 2 Μπάµπης: 2 Αλίκη: Έχασες! Ήταν το 1! Αλίκη: Πάµε ξανά. ιάλεξε έναν αριθµό από το 1 µέχρι το 2 Μπάµπης: 1 Αλίκη: Έχασες ξανά, το 2 ήταν! Μπάµπης: `>:-@!#>:-@! Να εµπιστευτεί ο Μπάµπης την Αλίκη; 5 bit commitment το πρόβληµα του bit commitment (δέσµευση bit): δεσµευόµαστε σε µια τιµή την οποία µπορούµε να αποκαλύψουµε αργότερα µπορεί να υλοποιηθεί µε διάφορους τρόπους, όπως: µε χρήση συµµετρικής κρυπτογραφίας µε συναρτήσεις µιας κατεύθυνσης µε γεννήτριες ψευδοτυχαίων αριθµών 6 2

bit commitment µε συµµετρική κρυπτογραφία (1) ΕΣΜΕΥΣΗ βήµα 1: o Μπάµπης δηµιουργεί ένα τυχαίο bit-string R στέλνει το R στην Αλίκη βήµα 2: η Αλίκη επιλέγει το bit b στο οποίο θα δεσµευτεί δηµιουργεί ένα τυχαίο κλειδί Κ δηµιουργεί ένα µήνυµα (R, b) δηµιουργεί το κρυπτογραφηµένο µήνυµα Ε Κ (R,b) στέλνει το Ε Κ (R,b) στον Μπάµπη 7 bit commitment µε συµµετρική κρυπτογραφία (2) ΑΠΟΚΑΛΥΨΗ βήµα 3: η Αλίκη στέλνει το κλειδί Κ στον Μπάµπη βήµα 4: ο Μπάµπης αποκρυπτογραφεί το µήνυµα επιβεβαιώνει το τυχαίο bit-string R 8 bit commitment µε συναρτήσεις µιας κατεύθυνσης (1) ΕΣΜΕΥΣΗ βήµα 1: b είναι το bit για το οποίο δεσµεύεται η Αλίκη η Αλίκη δηµιουργεί 2 τυχαία string R1, R2 βήµα 2: η Αλίκη δηµιουργεί ένα µήνυµα µε βάση τα R1, R2, b βήµα 3: η Αλίκη εφαρµόζει τη συνάρτηση µιας κατεύθυνσης στο µήνυµα και το στέλνει στον Μπάµπη H(R1,R2,b) Επίσης στέλνει το R1 9 3

bit commitment µε συναρτήσεις µιας κατεύθυνσης (2) ΑΠΟΚΑΛΥΨΗ βήµα 4: η Αλίκη στέλνει το αυθεντικό µήνυµα (R1, R2, b) βήµα 5: ο Μπάµπης επεξεργάζεται τα δεδοµένα επαληθεύει το R1 εφαρµόζει τη συνάρτηση µιας κατεύθυνσης 10 bit commitment µε γεννήτριες ακολουθιών ψευδο-τυχαίων αριθµών (1) ΕΣΜΕΥΣΗ βήµα 1: ο Μπάµπης δηµιουργεί ένα τυχαίο αριθµό R B στέλνει τον R B στην Αλίκη βήµα 2: η Αλίκη επιλέγει µία τιµή για το bit b δηµιουργεί ένα τυχαίο seed για µια γεννήτρια ψευδο-τυχαίων αριθµών random για κάθε bit r i του R B η Αλίκη: δηµιουργεί ένα τυχαίο bit r µε τη random εάν r i = 0: στέλνει το τυχαίο bit r στον Μπάµπη εάν r i = 1: στέλνει το r XOR b στον Μπάµπη 11 δίκαιη ρίψη κέρµατος η Αλίκη και ο Μπάµπης θέλουν επικοινωνώντας δικτυακά να ρίξουν τυχαία ένα δίκαιο κέρµα υπάρχουν αρκετές λύσεις για το πρόβληµα: µε δέσµευση bit µε συναρτήσεις µιας κατεύθυνσης µε κρυπτογραφία δηµοσίου κλειδιού 12 4

δίκαιη ρίψη κέρµατος µε δέσµευση bit βήµα 1: η Αλίκη δεσµεύεται σε 1 bit βήµα 2: ο Μπάµπης προσπαθεί να το µαντέψει βήµα 3: η Αλίκη αποκαλύπτει το bit αποτέλεσµα: εάν η Αλίκη και ο Μπάµπης διαλέξανε την ίδια τιµή για το bit θεωρούµε ότι το κέρµα είναι κορώνα, διαφορετικά είναι γράµµατα 13 απαιτήσεις για δίκαιη ρίψη κέρµατος ένα πρωτόκολλο δίκαιης ρίψης κέρµατος θα πρέπει να έχει τις παρακάτω ιδιότητες: η Αλίκη πρέπει να ρίξει το κέρµα προτού µαντέψει ο Μπάµπης η Αλίκη θα πρέπει να µην µπορεί να ξαναρίξει το κέρµα αφού της αποκαλυφθεί η επιλογή του Μπάµπη ο Μπάµπης θα πρέπει να µην µπορεί να µάθει το αποτέλεσµα της ρίψης κέρµατος προτού µαντέψει ο ίδιος 14 δίκαιη ρίψη κέρµατος µε συναρτήσεις µιας κατευθύνσεις η Αλίκη και ο Μπάµπης συµφωνούν σε µια συνάρτηση µιας κατεύθυνσης f() βήµα 1: η Αλίκη επιλέγει ένα τυχαίο αριθµό x και υπολογίζει το y=f(x) βήµα 2: η Αλίκη στέλνει το y στον Μπάµπη βήµα 3: ο Μπάµπης µαντεύει εάν ο αριθµός x είναι άρτιος ή περιττός και στέλνει την επιλογή του στην Αλίκη βήµα 4: εάν ο Μπάµπης µάντεψε σωστά το αποτέλεσµα είναι «κορώνα», διαφορετικά είναι «γράµµατα» - η Αλίκη ανακοινώνει το αποτέλεσµα στον Μπάµπη βήµα 5: ο Μπάµπης επαληθεύει ότι y=f(x) 15 5

δίκαιη ρίψη κέρµατος µε κρυπτογραφία δηµοσίου κλειδιού (1) 1. η Αλίκη και ο Μπάµπης δηµιουργούν από ένα ζεύγος κλειδιών 2. η Αλίκη δηµιουργεί 2 µηνύµατα, το ένα υποδηλώνει Κεφαλή και το άλλο Γράµµατα 3. τα παραπάνω µηνύµατα περιέχουν και κάποιο τυχαίο string ώστε να µπορεί να επαληθεύσει την αυθεντικότητά τους 4. η Αλίκη κρυπτογραφεί τα 2 µηνύµατα µε το δηµόσιο κλειδί της και τα στέλνει µε τυχαία σειρά στον Μπάµπη 5. ο Μπάµπης δεν µπορεί να τα διαβάσει και επιλέγει ένα στην τύχη και το κρυπτογραφεί µε το δικό του δηµόσιο κλειδί και το στέλνει στην Αλίκη 16 δίκαιη ρίψη κέρµατος µε κρυπτογραφία δηµοσίου κλειδιού (2) 6. η Αλίκη δεν µπορεί να δει το περιεχόµενο του µηνύµατος και εφαρµόζει το κρυφό της κλειδί και το επιστρέφει στον Μπάµπη 7. ο Μπάµπης εφαρµόζει το δικό του κρυφό κλειδί και βλέπει το αποτέλεσµα και το στέλνει στην Αλίκη 8. η Αλίκη βλέπει το αποτέλεσµα µαζί µε το τυχαίο string και το επαληθεύει 9. η Αλίκη και ο Μπάµπης αποκαλύπτουν τα ζεύγη των κλειδιών τους 17 νοερό πόκερ (mental poker) 18 6

κανόνες πόκερ κάθε παίκτης παίρνει 5 χαρτιά µπορεί να ανταλλάξει από κανένα έως όλα τα χαρτιά µε νέα, τυχαία, χαρτιά συνδυασµοί: Royal Flush: A-K-Q-J-10, all same suit Straight Flush: any five consecutive cards, all same suit Four-of-a-Kind: four cards, same value (eg. four 7's) Full House: Three-of-a-Kind and a Pair Flush: any five cards of the same suit Straight: any five consecutive cards Three-of-a-Kind: three cards, same value Two Pair Pair No Pair: five dissimilar cards, mixed suit 19 νοερό πόκερ (1) Τρεις παίκτες: Αλίκη, Μπάµπης και Κάρολος 1. κάθε παίκτης δηµιουργεί ένα ζεύγος κλειδιών RSA 2. η Αλίκη δηµιουργεί 52 ειδικά µηνύµατα ένα για κάθε χαρτί της τράπουλας. Τα κρυπτογραφεί µε το δηµόσιο κλειδί της P A και τα στέλνει στον Μπάµπη: E A (M n ) 3. ο Μπάµπης επιλέγει 5 και τα κρυπτογραφεί E M (E A (M n )) και τα στέλνει στην Αλίκη 4. ο Μπάµπης στέλνει τα υπόλοιπα 47 στον Κάρολο E A (M n ) 20 νοερό πόκερ (2) 5. ο Κάρολος επιλέγει 5 από τα 47, τα κρυπτογραφεί E Κ (E A (M n )) και τα στέλνει στην Αλίκη 6. η Αλίκη αποκρυπτογραφεί τα µηνύµατα που έλαβε και τα στέλνει τα καθένα σε αυτό που το επέλεξε 7. ο Μπάµπης και ο Κάρολος αποκρυπτογραφούν τα µηνύµατά τους και βλέπουν τα χαρτιά που έχουν επιλέξει D A (E Μ (E A (M n ))) E Μ (M n ) και D A (E Κ (E A (M n ))) E Κ (M n ) 8. ο Κάρολος επιλέγει 5 τυχαία από τα 42 που έχουν αποµείνει και τα στέλνει στην Αλίκη 21 7

νοερό πόκερ (3) 9. η Αλίκη αποκρυπτογραφεί τα 5 χαρτιά της 10. στο τέλος όλοι εµφανίζουν τα χαρτιά τους και τα κλειδιά τους ώστε να επιβεβαιωθεί ότι δεν έγινε παράβαση το παραπάνω πρωτόκολλο είναι µια αξιοπρεπής λύση που όµως έχει κάποιες αδυναµίες υπάρχουν πιο ολοκληρωµένες (και πιο πολύπλοκες) λύσεις για τέτοιου είδους προβλήµατα 22 secret sharing 23 secret sharing Ένα µυστικό θέλουµε να µοιραστεί σε n άτοµα P1, P2,, Pn. Ένας dealer δηµιουργεί n επιµέρους µυστικά s1, s2,, sn και δίνει το καθένα µόνο στο αντίστοιχο άτοµο Για να αποκαλυφθεί το µυστικό θα πρέπει να συνεργαστούν τουλάχιστον t άτοµα. Εάν συνεργαστούν µέχρι και t-1 άτοµα, δεν αποκαλύπτεται καµία απολύτως πληροφορία για το µυστικό. 24 8

Shamir secret sharing n άτοµα P1, P2,, Pn. threshold t Θα χρησιµοποιήσουµε πολυώνυµα σε πεπερασµένα πεδία Επιλέγουµε ένα πρώτο αριθµό p µεγαλύτερο από το n και το µέγεθος του µυστικού. ηµιουργούµε πολυώνυµο βαθµού m-1 Ένας dealer δηµιουργεί n επιµέρους µυστικά s1, s2,, sn και δίνει το καθένα µόνο στο αντίστοιχο άτοµο Για να αποκαλυφθεί το µυστικό θα πρέπει να συνεργαστούν τουλάχιστον t άτοµα. Εάν συνεργαστούν µέχρι και t-1 άτοµα, δεν αποκαλύπτεται καµία απολύτως πληροφορία για το µυστικό. 25 Πρωτόκολλα Μηδενικής Γνώσης 26 πρωτόκολλα µηδενικής γνώσης παράδειγµα: θέλουµε να αποδείξουµε ότι γνωρίζουµε κάτι, ότι έχουµε δηλαδή κάποια πληροφορία χωρίς όµως να αποκαλύψουµε την πληροφορία αυτή! εφαρµογή στην καθηµερινότητα: Αλίκη > Γνωρίζω ένα µυστικό. Μπάµπης > ε σε πιστεύω αν δε µου πεις. Αλίκη >? 27 9

πρωτόκολλα µηδενικής γνώσης Η λύση µπορεί να δοθεί εκτελώντας κάποια διαδραστικό πρωτόκολλο (interactive protocol) ο Μπάµπης θα θέσει µια σειρά ερωτηµάτων στην Αλίκη και εάν η Αλίκη πράγµατι γνωρίζει το µυστικό θα απαντήσει σωστά εάν η Αλίκη δε γνωρίζει το µυστικό θα απαντήσει σωστό µε πιθανότητα πχ. 50 % 28 πρωτόκολλα µηδενικής γνώσης απόδειξη µηδενικής-γνώσης: µία διαδραστική µέθοδος για να αποδείξει µία οντότητα σε µια άλλη οντότητα ότι µία πρόταση είναι αληθής, χωρίς να αποκαλύψει τίποτα επιπλέον πέρα από την εγκυρότητα της πρότασης. δύο απλά παραδείγματα: γνώση της λύσης του Where is Waldo η σπηλιά και οι μαγικές λέξεις 29 Where is Waldo? 30 10

Where is Waldo απόδειξη µηδενικής γνώσης για την παρουσία του Waldo: Παίρνουµε ένα µεγάλο αδιαφανές φύλλο, κόβουµε ένα µικρό παραθυράκι µέσα στο φύλλο αυτό, και τοποθετούµε το φύλλο πάνω από το puzzle έτσι ώστε ο Waldo να εµφανίζεται µέσα στο παραθυράκι. Αυτό θα αποδείξει ότι ο Waldo είναι µέσα στην εικόνα (και ότι εµείς γνωρίζουµε που είναι) χωρίς να αποκαλύψουµε τη θέση του! http://www.cs.cornell.edu/courses/cs687/2006fa/lectures/lecture21.pdf 31 32 το πρόβληµα της σπηλιάς η Αλίκη γνωρίζει τις µαγικές λέξεις για να ανοίξει η πόρτα στο εσωτερικό της σπηλιάς ο Μπάµπης αµφιβάλλει πως θα αποδείξει η Αλίκη στον Μπάµπη ότι γνωρίζει τις µαγικές λέξεις χωρίς όµως να του τις αποκαλύψει; 33 11

απόδειξη µηδενικής γνώσης η Αλίκη γνωρίζει µπαίνει πρώτη στη σπηλιά και διαλέγει τη δεξιά ή την αριστερή πλευρά στη συνέχεια µπαίνει ο Μπάµπης, επιλέγει τυχαία την αριστερή ή τη δεξιά πλευρά και ζητάει από την Αλίκη να βγει από τη µεριά αυτή Η Αλίκη, εάν γνωρίζει τις µαγικές λέξεις µπορεί πάντοτε να βγει από τη µεριά που θα ζητήσει ο Μπάµπης εάν δεν γνωρίζει τις µαγικές λέξεις, µπορεί να βγει από τη σωστή πλευρά µε πιθανότητα µόνο 50% (εάν η ίδια διάλεξε τυχαία την ίδια πλευρά) Επαναλαµβάνοντας το πείραµα όσες φορές επιθυµεί, ο Μπάµπης µπορεί να βεβαιωθεί µε πολύ µεγάλη πιθανότητα για το εάν η Αλίκη γνωρίζει ή όχι τις µαγικές λέξεις (χωρίς ο ίδιος να τις µάθει). 34 το πρόβληµα της σπηλιάς A B C D 35 Πηγές/Αναφορές Κεφάλαια 4, 5 και 6, Applied Cryptography, Bruce Schneier, Second Edition, Wiley, 1996 Κεφάλαιο 9, τεχνικές κρυπτογραφίας & κρυπτανάλυσης, Κάτος & Στεφανίδης, 2003 36 12