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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Πρωτόκολλα Ασφάλειας IΙ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Παράρτημα Α Περισσότερα για την Ασφάλεια στο Διαδίκτυο

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

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

Λειτουργικά Συστήματα (ΗΥ321)

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

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

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

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

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

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

Freedom of Speech. Κρυπτογραφία και ασφαλής ανταλλαγή πληροφοριών στο Internet

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

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

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

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

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

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

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

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

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

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

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

Ψηφιακά Πιστοποιητικά Ψηφιακές Υπογραφές

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

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

7 ΔΙΑΧΕΙΡΙΣΗ ΚΛΕΙΔΙΩΝ

Manual. Εκλογές 15μελούς Σχολείου v4.0 Module On-line Ψηφοφορίας

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

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

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

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

Οδηγίες Εγκατάστασης και Χρήσης Ψηφιακών Πιστοποιητικών

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

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

Ζευς Οδηγίες Διαχείρισης Ψηφοφορίας

Towards a Practical Cryptographic Voting Scheme Based on Malleable Proofs

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

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

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

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

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

Σχεδιασμός Εικονικών Δικτύων Ενότητα 4β: VPN on IPSec (Μέρος 2ο)

Αλγόριθµοι δηµόσιου κλειδιού

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

GPG & ΚΡΥΠΤΟΓΡΑΦΙΑ. Π. Αγγελάτος, Δ. Ζήνδρος

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

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

Διάλεξη 5: Κάτω Φράγμα για Αλγόριθμους Εκλογής Προέδρου. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 6: Εκλογή Προέδρου σε Σύγχρονους Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

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

«ΖΕΥΣ» Εγχειρίδιο Συμμετοχής σε Ψηφοφορία

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

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

Δίκτυα Υπολογιστών Ενότητα 6: Secure Sockets Layer - SSL

Διάλεξη 4: Εκλογή Προέδρου σε Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Οδηγίες συμμετοχής στις ηλεκτρονικές εκλογές του Ιατρικού Συλλόγου Θεσσαλονίκης (ΙΣΘ)

Κρυπτογράφηση με χρήση Δημοσίου Κλειδιού (Public Key Cryptography PKC)

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

ΤΙΤΛΟΣ ΕΡΕΥΝΗΤΙΚΗΣ ΕΚΘΕΣΗΣ ΚΩΔΙΚΕΣ. Υπόθεμα: «ΚΡΥΠΤΟΓΡΑΦΙΑ»

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

ΕΚΦΩΝΗΣΕΙΣ ΘΕΜΑ Α. α. Πριν εμφανιστεί η τεχνολογία ISDN οι υπηρεσίες φωνής, εικόνας και δεδομένων απαιτούσαν διαφορετικά δίκτυα.

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

KEΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΑ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ

Transcript:

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

Zero-Knowledge Proofs Zero-Knowledge Proofs of Identity Blind Signatures Oblivious Signatures Simultaneous Contract Signing Simultaneous Exchange of Secrets προηγμένα κρυπτογραφικά πρωτόκολλα Electronic Elections Digital Cash Πρωτόκολλα Μηδενικής Γνώσης 2

3

παράδειγμα: θέλουμε να αποδείξουμε ότι γνωρίζουμε κάτι, ότι έχουμε δηλαδή κάποια πληροφορία χωρίς όμως να αποκαλύψουμε την πληροφορία αυτή! εφαρμογή στην καθημερινότητα: η α Αλίκη > Γνωρίζω ένα μυστικό. Μπάμπης > Δε σε πιστεύω αν δε μου πεις. Αλίκη >? 4

η λύση μπορεί να δοθεί εκτελώντας κάποια διαδραστικό πρωτόκολλο (interactive protocol) ο Μπάμπης θα θέσει μια σειρά ερωτημάτων στην Αλίκη και εάν η Αλίκη πράγματι γνωρίζει το μυστικό θα απαντήσει σωστά εάν η Αλίκη δε γνωρίζει το μυστικό θα απαντήσει σωστά σε κάθε ερώτημα με πιθανότητα πχ. 50 % 5

η Αλίκη γνωρίζει τις μαγικές λέξεις για να ανοίξει η πόρτα στο εσωτερικό της σπηλιάς ο Μπάμπης αμφιβάλλει πως θα αποδείξει η Αλίκη στον Μπάμπη ότι γνωρίζει τις μαγικές λέξεις χωρίς όμως να του τις αποκαλύψει; 6

A B C D 7

η Αλίκη γνωρίζει τον ισομορφισμό 2 γράφων G 1 και G 2 θα αποδείξει στον Μπάμπη ότι γνωρίζει τον ισομορφισμό χωρίς όμως να τον αποκαλύψει δημιουργεί έναν νέο γράφο H ισόμορφο με έναν από τους G 1 και G 2 στέλνει τον H στον Μπάμπη ο Μπάμπης ζητά από την Αλίκη τυχαία τον ισομορφισμό του H με τον G 1 ή τον G 2 επαναλαμβάνουμε n φορές 8

είναι πράγματι τόσο δύσκολο πρόβλημα; δοκιμάστε να βρείτε εάν τα γραφήματα G5 και G6 είναι ισομορφικά τα γραφήματα G7 και G8 είναι ισομορφικά 9

ένας ισομορφισμός από το γράφο G στο γράφο H είναι μια αμφιμονοσήμαντη αντιστοιχία f από τους κόμβους του G στους κόμβους του H έτσι ώστε να υπάρχει ακμή uv στον G αν και μόνο αν υπάρχει ακμή f(u)f(v) στον H (u, v κόμβοι του G) δύο γραφήματα είναι ισομορφικά εάν υπάρχει ισομορφισμός μεταξύ τους παράδειγμα: τα γραφήματα G και H είναι ισομορφικά ισομορφισμός 1 a, 2 c, 3 β, 4 d 1 1 1 1 2 a 1 b 1 1 1 1 1 1 1 4 3 d c 1 1 1 1 10

είναι συχνά απαραίτητο να αποδείξουμε την ταυτότητά μας (identity) θα ήταν επιθυμητό να μπορώ να αποδείξω ποιος είμαι χωρίς όμως να διαρρέει πληροφορία: ρ διαφορετικά κάποιος που θα υποκλέψει την επικοινωνία μου θα μπορεί να παριστάνει εμένα παράδειγμα: passwords χρησιμοποιώ passwords για αποδείξω σε ένα υπολογιστικό σύστημα είμαι πράγματι εγώ που θέλω να συνδεθώ στο λογαριασμό μου 11

έστω ότι ο Kasparov θέλει να αποδείξει ότι είναι πράγματι ο Kasparov μπορεί να χρησιμοποιήσει πρωτόκολλο μηδενικής γνώσης; 12

παράδειγμα με τον πρωταθλητή στο σκάκι η Αλίκη προκαλεί σε παρτίδα σκάκι ταυτόχρονα τον Karpov και τον Kasparov (χωρίς να γνωρίζει ο ένας για τον άλλο) επιλέγει να ξεκινήσει πρώτη την παρτίδα με τον Karpov και να παίξει δεύτερη με τον Kasparov... η Αλίκη εμφανίζεται να γνωρίζει σκάκι σε επίπεδο παγκόσμιου πρωταθλητή! 13

14

να υπογράψει κάποιος ένα μήνυμα χωρίς όμως να δει το περιεχόμενό του παράδειγμα εφαρμογής: στο mental Poker σε ηλεκτρονικές εκλογές (e-voting, e-elections) 15

η Αλίκη υψώνει το μήνυμα σε δύναμη παράγοντα απόκρυψης (blinding factor) ομπάμπης υπογράφει το blinded μήνυμα χωρίς να μπορεί να δει το περιεχόμενό ό του η Αλίκη εξουδετερώνει την ύψωση σε δύναμη προσοχή: απαιτείται οι κρυπτογραφικές πράξεις να είναι αντιμεταθετικές οι πράξεις 16

17

18

το πρόβλημα: 1. η Αλίκη έχει 2 πληροφορίες 2. ο Μπάμπης θα μάθει μία από τις δύο αυτές πληροφορίες 3. το πρωτόκολλο θα είναι έτσι ώστε να επιλεγεί τυχαία η πληροφορία που θα μάθει ο Μπάμπης η Αλίκη να μη γνωρίζει ποια πληροφορία έμαθε ο Μπάμπης παράδειγμα: η Αλίκη μπορεί για παράδειγμα να μοιράζει χαρτιά (τράπουλας) σε ένα παιχνίδι παράδειγμα: θα δούμε ότι το oblivious transfer μπορεί να χρησιμοποιηθεί σε πρωτόκολλα ταυτόχρονης υπογραφής συμβολαίου 19

1. Αλίκη η Αλίκη δημιουργεί δύο ζευγάρια κλειδιών ElGamal η Αλίκη στέλνει τα δύο δημόσια κλειδιά στον Μπάμπη 2. Μπάμπης ο Μπάμπης δημιουργεί ένα κλειδί AES ο Μπάμπης επιλέγει τυχαία ένα από τα δημόσια κλειδιά της Αλίκης και το κρυπτογραφεί με το κλειδί AES ο Μπάμπης στέλνει το κρυπτογραφημένο μήνυμα στην Αλίκη χωρίς να αποκαλύψει ποιο δημόσιο κλειδί χρησιμοποίησε 3. Αλίκη η Αλίκη «αποκρυπτογραφεί» δύο φορές το μήνυμα, μία με κάθε ιδιωτικό κλειδί η μία αποκρυπτογράφηση θα δώσει το κλειδί AES και η άλλη θόρυβο υποθέτουμε ότι η Αλίκη δεν μπορεί να ξεχωρίσει το κλειδί AES από το θόρυβο 20

4. η Αλίκη διαθέτει δύο πληροφορίες ρ η Αλίκη κρυπτογραφεί την μία πληροφορία με το πρώτο κλειδί και την άλλη με το δεύτερο κλειδί η Αλίκη στέλνει τα δύο κρυπτοκείμενα στον Μπάμπη 5. Μπάμπης ο Μπάμπης λαμβάνει μία πληροφορία κρυπτογραφημένη με το κλειδί AES και μία κρυπτογραφημένο με άκυρο κλειδί ο Μπάμπης θα μάθει έτσι την πληροφορία που έχει κρυπτογραφηθεί με το κλειδί AES και δε θα μάθει τίποτα για την άλλη πληροφορία επομένως ο Μπάμπης έχει τώρα μία τυχαία από τις δύο 6. Αλίκη πληροφορίες της Αλίκης και η Αλίκη δε γνωρίζει ποια πληροφορία έχει ο Μπάμπης μετά την ολοκλήρωση του πρωτοκόλλου η Αλίκη πρέπει να αποκαλύψει τα ιδιωτικά της κλειδιά για να επιβεβαιώσει ο Μπάμπης ότι δεν έγινε καμιά ζαβολιά 21

θα περιγράψουμε ργρ μια απλοϊκή εκδοχή oblivious transfer η απλοϊκή εκδοχή παρουσιάζει τη βασική ιδέα για την επίλυση του oblivious transfer και είναι πιο απλό να υλοποιηθεί πιθανότατα δεν είναι το ίδιο ασφαλής η Αλίκη δημιουργεί ένα ζεύγος ElGamal Αλίκη η Αλίκη κρυπτογραφεί τις δύο πληροφορίες με το δημόσιο της κλειδί η Αλίκη στέλνει τα δύο κρυπτοκείμενα στον Μπάμπη Μπάμπης ο Μπάμπης δεν μπορεί να δει το περιεχόμενο των μηνυμάτων μ ο Μπάμπης επιλέγει τυχαία ένα από τα δύο μηνύματα ο Μπάμπης δημιουργεί ένα ζεύγος κλειδιών ElGamal χρησιμοποιώντας τις ίδιες παραμέτρους p και g για τον αλγόριθμο ElGamal που χρησιμοποίηση η η και η Αλίκη (έτσι θα υποστηρίζεται η αντιμεταθετικότητα του ElGamal) ο Μπάμπης κρυπτογραφεί το μήνυμα που επέλεξε ο Μπάμπης στέλνει το διπλά κρυπτογραφημένο μήνυμα στην Αλίκη 22

Αλίκη η Αλίκη αποκρυπτογραφεί το μήνυμα με το δικό της κλειδί εξουδετερώνοντας έτσι τη δική της αρχική κρυπτογράφηση (αντιμεταθετικότητα) η Αλίκη δεν μπορεί να δει το περιεχόμενο του κρυπτοκειμένου η Αλίκη στέλνει το κρυπτοκείμενο στον Μπάμπη Μπάμπης ο Μπάμπης αποκρυπτογραφεί το κρυπτοκείμενο με το ιδιωτικό του κλειδί και παίρνει την πληροφορία Τέλος ο Μπάμπης έχει μία από τις δύο πληροφορίες ρ της Αλίκης η Αλίκη δεν γνωρίζει ποια από τις δύο πληροφορίες έχει πάρει ο Μπάμπης 23

24

το πρόβλημα: η Αλίκη και Μπάμπης θα υπογράψουν από κοινού ένα συμβόλαιο έχουν συμφωνήσει σε όλα όμως ο καθένας θέλει να υπογράψει πρώτα ο άλλος (για να είναι σίγουρος) λύσεις: με χρήση διαιτητή χωρίς διαιτητή, πρόσωπο με πρόσωπο χωρίς διαιτητή, χωρίς προσωπική επαφή χωρίς διαιτητή, με χρήση κρυπτογραφίας 25

με χρήση διαιτητή η Αλίκη και Μπάμπης υπογράφουν ο καθένας από μία κόπια και τη στέλνουν στον διαιτητή, το Θέμη... χωρίς διαιτητή, πρόσωπο με πρόσωπο η Αλίκη υπογράφει με το πρώτο γράμμα του ονόματός της ο Μπάμπης με το δικό του πρώτο γράμμα η Αλίκη με το δεύτερο γράμμα... αν και υπάρχουν προβλήματα στην παραπάνω λύση τα ονόματα της Αλίκης και του Μπάμπη μπορεί να διαφέρουν σε μέγεθος πως υπογράφει κανείς με ένα γράμμα κάθε φορά, κτλ, η βασική ιδέα των μικρών βημάτων (baby steps) είναι σωστή 26

χωρίς διαιτητή, χωρίς προσωπική επαφή τα βήματα η Αλίκη υπογράφει δηλώνοντας ότι συμφωνεί πχ 2% ο Μπάμπης υπογράφει δηλώνοντας ότι 4% η Αλίκη υπογράφει δηλώνοντας ότι συμφωνεί πχ 6% κοκ. εάν διακοπεί η διαδικασία, πηγαίνουν σε έναν δικαστή ο δικαστής θα θεωρήσει είτε ότι υπέγραψαν και οι δύο είτε δεν υπέγραψε κανείς πχ. μπορεί να διαλέξει έναν τυχαίο αριθμό από το 1 έως το 99 για να αποφασίσει 27

υπογραφή συμβολαίου χωρίς διαιτητή, με χρήση κρυπτογραφίας θα χρειαστούμε το πρωτόκολλο oblivious transfer. 28

η Αλίκη και ο Μπάμπης επιλέγουν από 2n κλειδιά AES η Αλίκη και ο Μπάμπης, ομαδοποιούν ο καθένας τα κλειδιά του σε ζευγάρια η Αλίκη και ο Μπάμπης δημιουργούν ο καθένας n ζευγάρια μηνυμάτων L i και R i το L i αντιστοιχεί στο αριστερό τμήμα της υπογραφής i και το R i στο δεξιό μέρος της υπογραφής i ένα συμβαλλόμενο μέλος θεωρείται ότι υπέγραψε εάν το άλλο μέλος μπορεί να εμφανίσει για οποιοδήποτε i, το L i και το R i η Αλίκη και ο Μπάμπης υπογράφουν κάθε ζευγάρι μηνυμάτων τους με ένα ζευγάρι κλειδιών AES: Το αριστερό μήνυμα με το αριστερό κλειδί και το δεξί μήνυμα με το δεξί κλειδί η Αλίκη και ο Μπάμπης στέλνουν ο καθένας στον άλλο τα n ζευγάρια κρυπτογραφημένων μηνυμάτων, έτσι ώστε να είναι φανερό ποια κρυπτογραφημένα μηνύματα ανήκουν στο ίδιο ζευγάρι η Αλίκη και ο Μπάμπης στέλνουν ο καθένας στον άλλο για κάθε ζευγάρι κλειδιών που διαθέτουν το ένα μέλος του ζευγαριού χρησιμοποιώντας oblivious transfer 29

η Αλίκη και ο Μπάμπης όταν λάβουν τα μηνύματα από το άλλο μέλος μπορούν για κάθε ζεύγος κρυπτογραφημένων μηνυμάτων που διαθέτουν να αποκρυπτογραφήσουν ένα από τα δύο μηνύματα η Αλίκη και ο Μπάμπης επιβεβαιώνουν ο καθένας την εγκυρότητα των μηνυμάτων μ που κατάφεραν να αποκρυπτογραφήσουν η Αλίκη και ο Μπάμπης δεν γνωρίζουν ποιο μέλος κάθε ζεύγους μηνυμάτων τους έχει τώρα στη διάθεσή του τώρα το άλλο μέλος η Αλίκη και ο Μπάμπης στέλνουν ο καθένας το πρώτο bit όλων των 2n κλειδιών AES η Αλίκη και ο Μπάμπης στέλνουν ο καθένας το δεύτερο bit όλων των 2n κλειδιών AES όμοια συνεχίζουν μέχρι να στείλουν ο καθένας και το τελευταίο bit όλων των 2n κλειδιών AES η Αλίκη και ο Μπάμπης αποκρυπτογραφούν και τα υπόλοιπα μηνύματα η Αλίκη και ο Μπάμπης μπορούν ο καθένας να αποδείξει ότι το άλλο μέλος υπέγραψε το συμβόλαιο η Αλίκη και ο Μπάμπης ανταλλάσσουν τα ιδιωτικά κλειδιά που χρησιμοποιήθηκαν στη διάρκεια των πρωτοκόλλων oblivious transfer 30

το πρωτόκολλο ταυτόχρονης υπογραφής συμβολαίου έχει ορισμένες αδυναμίες όμως αποτελεί μια ενδιαφέρουσα προσπάθεια για ένα δύσκολο πρόβλημα 31

32

Απαιτήσεις: 1. Ψηφίζουν μόνο όσοι έχουν το δικαίωμα 2. Δεν μπορεί κανείς να ψηφίσει πάνω από μία φορά 3. Η ψήφος είναι μυστική Κανείς δεν μπορεί να βρει ποιον ψήφισε οποιοσδήποτε άλλος 4. Κανείς δεν μπορεί να διπλασιάσει την ψήφο κάποιου άλλου 5. Κανείς δεν μπορεί να τροποποιήσει την ψήφο κάποιου άλλου χωρίς να γίνει αντιληπτός 6. Κάθε ψηφοφόρος μπορεί να ελέγξει ότι η ψήφος του μετρήθηκε στο συνολικό αποτέλεσμα Σε μερικές περιπτώσεις: 7. Όλοι γνωρίζουν ποιος ψήφισε και ποιος όχι 33

1. Κάθε ψηφοφόρος κρυπτογραφεί την ψήφο του με το Public Key της Central Tabulating Facility (FCT) 2. Κάθε ψηφοφόρος στέλνει την ψήφο του στην CTF 3. H CTF μετρά και δημοσιεύει τα αποτελέσματα Το πρωτόκολλο αυτό είναι διάτρητο! 34

1. Κάθε ψηφοφόρος υπογράφει την ψήφο του με το προσωπικό του κλειδί 2. Κάθε ψηφοφόρος κρυπτογραφεί την υπογεγραμμένη ψήφο του με το Public Key της Central Tabulating Facility (FCT) 3. Κάθε ψηφοφόρος στέλνει την ψήφο του στην CTF 4. HCTF ελέγχει τις υπογραφές, μετρά και δημοσιεύει τα αποτελέσματα Το πρωτόκολλο αυτό ικανοποιεί τις απαιτήσεις 1 και 2 35

1. Κάθε ψηφοφόρος δημιουργεί 10 σύνολα ψηφοδελτίων. Κάθε σύνολο έχει ένα μοναδικό κωδικό 2. Εφαρμόζεται blinding σε όλα τα σύνολα μηνυμάτων και τα στέλνει στο Central Tabulating Facility (FCT) 3. Ο CTF ελέγχει ότι ο χρήστης δεν έχει ξαναστείλει ψηφοδέλτια και στη συνέχεια ζητά τους blinding factor για τα 9 από τα 10 σύνολα (Η επιλογή είναι τυχαία). Ελέγχει εάν και τα 9 σύνολα ήταν έγκυρα, και εάν πράγματι ήταν, τότε υπογράφει το δέκατο σύνολο και το στέλνει στον ψηφοφόρο. 4. Ο ψηφοφόρος εξουδετερώνει το blinding και έχει πλέον ένα σύνολο από υπογεγραμμένα ψηφοδέλτια στα χέρια του 36

5. Ο ψηφοφόρος επιλέγει ένα ψηφοδέλτιο (δημοκρατία!!) και το κρυπτογραφεί με το δημόσιο κλειδί του CTF 6. Ο ψηφοφόρος στέλνει την ψήφο του στον CTF 7. Ο CTF αποκρυπτογραφεί τις ψήφους, ελέγχει τις υπογραφές, ελέγχει για πιθανή επανάληψη κωδικού ψηφοδελτίου, καταχωρεί τον νέο κωδικό στη βάση δεδομένων του και προσμετρά την ψήφο. Στο τέλος ανακοινώνει όλες τις ψήφους μαζί με τον μοναδικό κωδικό τους 37

Υπάρχουν και άλλες υλοποιήσεις: Ψηφοφορία με 2 φορείς 38

39

Secure Multiparty Computation (Ασφαλής εκτέλεση υπολογισμών)... 40

Κεφάλαια 4, 5 και 6, Applied Cryptography, p y, Bruce Schneier, Second Edition, Wiley, 1996 Κεφάλαιο 9, τεχνικές κρυπτογραφίας & κρυπτανάλυσης, Κάτος, Στεφανίδης, 2003 41