Ψηφιακές Υπογραφές (Digital Signatures)



Σχετικά έγγραφα
Ψηφιακές Υπογραφές (Digital Signatures)

Εισαγωγή στους Αλγόριθμους

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων

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

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

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

ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ. Απόστολος Πλεξίδας Προϊστάµενος της ιεύθυνσης ιαφάνειας & Ηλεκτρονικής ιακυβέρνησης της Περιφέρεια Κεντρικής Μακεδονίας

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Υπολογιστικά & Διακριτά Μαθηματικά

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

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

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στους Αλγόριθμους

Κατακερματισμός (Hashing)

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

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

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

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

Πρώτοι αριθμοί και κρυπτογραφικός αλγόριθμος RSA. Άριστος Χαραλάμπους, Δημήτρης Χαραλάμπους, Νικόλας Παρασκευάς

* * * ( ) mod p = (a p 1. 2 ) mod p.

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

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

Ασφάλεια κωδικών: Ένας hacker συμβουλεύει

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

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

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

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

ΕΠΑΝΑΛΗΠΤΙΚΟ ΤΕΣΤ ΣΤΗΝ ΕΝΟΤΗΤΑ

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

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

project RSA και Rabin-Williams

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

Λέγονται οι αριθμοί που βρίσκονται καθημερινά στη φύση, γύρω μας. π.χ. 1 μήλο, 2 παιδιά, 5 αυτοκίνητα, 100 πρόβατα, δέντρα κ.λ.π.

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

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

Σύγχρονη Κρυπτογραφία

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

ρ. Κ. Σ. Χειλάς, ίκτυα Η/Υ ΙΙΙ, Τ.Ε.Ι. Σερρών, 2007

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

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

Εθνικό Μετσόβιο Πολυτεχνείο

Μαθηματικά: Αριθμητική και Άλγεβρα. Μάθημα 3 ο, Τμήμα Α. Τρόποι απόδειξης

ΚΕΦΑΛΑΙΟ 2 ΔΙΑΤΑΞΕΙΣ, ΜΕΤΑΘΕΣΕΙΣ, ΣΥΝΔΥΑΣΜΟΙ

Ασφάλεια Στο Ηλεκτρονικό Εμπόριο. Λάζος Αλέξανδρος Α.Μ. 3530

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

ΣΕΜΙΝΑΡΙΟ. ΠΑΡΟΥΣΙΑΣΗ 19/5/11 Αµφιθέατρο

a. b. c. d ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

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

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

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

Ασκήσεις και δραστηριότητες

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

Γ ε ν ι κ ό Λ ύ κ ε ι ο Ε λ ε υ θ ε ρ ο ύ π ο λ η ς. Α λ γ ό ρ ι θ μ ο ι

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

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

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

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

Transcript:

Ψηφιακές Υπογραφές (Digital Signatures) 1

Ψηφιακές υπογραφές (Digital signatures) ψηφιακός ( digital ): αποτελείται από ακολουθίες ψηφίων Συμπέρασμα: οτιδήποτε ψηφιακό μπορεί να αντιγραφεί π.χ., αντιγράφοντας ένα ψηφίο τη φορά: αφού μπορούμε να το διαβάσουμε, μπορούμε και να το αντιγράψουμε υπογραφή ( signature ): σχήμα που να μπορεί να διαβαστεί αλλά (στόχος είναι) να μη μπορεί να αντιγραφεί από κανέναν άλλον εκτός από τον συγγραφέα της Πώς μπορεί να δημιουργηθεί ψηφιακή υπογραφή που να μη μπορεί να αντιγραφεί; 2

Πού χρησιμοποιούνται ψηφιακές υπογραφές; Σκέψη 1: για ό,τικαιοικλασσικέςυπογραφέςσε χαρτί π.χ., σε επιταγές ή άλλα νομικά έγγραφα Σκέψη 2: μάλλον όχι αφού όταν κάνουμε πληρωμή είτε με πιστωτική κάρτα είτε με online τραπεζική συναλλαγή δεν υπογράφουμε πουθενά Πιστωτικές κάρτες: δεναπαιτούνυπογραφή Online τραπεζικές συναλλαγές: απαιτούν όνομα σύνδεσης και κωδικό για να πιστοποιηθεί η ταυτότητά μας και δεν απαιτείται υπογραφή για πραγματοποίηση πληρωμών 3

Πού χρησιμοποιούνται ψηφιακές υπογραφές; Συνήθως οι άλλοι υπογράφουν το υλικό που μάς στέλνουν, δεν υπογράφουμε εμείς το υλικό που στέλνουμε χωρίς βέβαια να το καταλαβαίνουμε αφού οι ψηφιακές υπογραφές επαληθεύονται αυτόματα από τον υπολογιστή μας Όταν κατεβάζουμε λογισμικό από το internet, το πρόγραμμα πλοήγησης που χρησιμοποιούμε (Internet explorer, Firefox, Chrome, ) πιθανώς ελέγχει αν το λογισμικό έχει έγκυρη ψηφιακή υπογραφή και παρουσιάζει προειδοποίηση όπως οι παρακάτω 4

5

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

Πού χρησιμοποιούνται ψηφιακές υπογραφές; Οι ψηφιακές υπογραφές χρησιμοποιούνται κυρίως σε πακέτα λογισμικού Επιπλέον, ο υπολογιστής μας λαμβάνει και επαληθεύει συνεχώς ψηφιακές υπογραφές επειδή συχνά χρησιμοποιούμενα πρωτόκολλα στο internet χρησιμοποιούν ψηφιακές υπογραφές για να επαληθεύσουν την ταυτότητα των υπολογιστών με τους οποίους αλληλεπιδρούμε Ασφαλείς εξυπηρετητές (servers) των οποίων η διεύθυνση ξεκινάει με https συνήθως στέλνουν στον υπολογιστή μας ένα ψηφιακά υπογεγραμμένο πιστοποιητικό πριν εγκαθιδρυθεί ασφαλής σύνδεση Ψηφιακές υπογραφές χρησιμοποιούνται για την επαλήθευση της γνησιότητας πολλών τμημάτων λογισμικού όπως επιπρόσθετων προγραμμάτων (plugins) για προγράμματα πλοήγησης στο internet Ίσως έχετε δει τέτοια μηνύματα όταν πλοηγήστε στο web Όταν κάποια websites μάς ζητάνε να γράψουμε το όνομά μας σε κάποια online φόρμα σαν υπογραφή, αυτό ΔΕΝ είναι ψηφιακή υπογραφή Τέτοιου είδους υπογραφή μπορεί εξάλλου απλούστατα να πλαστογραφηθεί από οποιονδήποτε γνωρίζει το όνομά μας Θα δούμε στη συνέχεια πώς μπορούν να δημιουργηθούν ψηφιακές υπογραφές που δε μπορούν να πλαστογραφηθούν 7

Συνηθισμένες υπογραφές Όταν χρησιμοποιούμε τις παραδοσιακές υπογραφές σε χαρτί, αποσκοπούμε στο να επικυρώσουμε έγγραφα και φυσικά κάτι τέτοιο προϋποθέτει την ύπαρξη κι άλλων μερών (π.χ., ατόμων) Φανταστείτε ότι βρίσκουμε ένα χαρτί που λέει ότι Υπόσχομαι να δώσω 100 στην Κατερίνα. Υπογραφή, Εύη Πώς μπορούμε να επαληθεύσουμε ότι πράγματι η Εύη υπέγραψε αυτό το έγγραφο; Απάντηση: χρειαζόμαστε κάποιο αρχείο υπογραφών που ξέρουμε ότι είναι αληθές όπου μπορούμε να ελέγξουμε ότι η υπογραφή της Εύης είναι αυθεντική Στην πραγματικότητα, οργανισμοί όπως τράπεζες και υπηρεσίες παίζουν αυτό το ρόλο: κρατάνε πράγματι αρχεία με τις υπογραφές των πελατών τους τα οποία μπορούν να ελεγχθούν αν χρειαστεί Υποθέτουμε ότι στο δικό μας σενάριο ο οργανισμός που εμπιστευόμαστε καλείται τράπεζα χειρόγραφων υπογραφών και κρατάει αντίγραφο από τις υπογραφές ατόμων 8

Υπόσχομαινα δώσω 100 στηνκατερίνα. Υπογραφή Evi Εύη Χαρτί με χειρόγραφη υπογραφή τράπεζα χειρόγραφων υπογραφών Εύη Σταύρος Κατερίνα Evi Stavros Katerina Τράπεζα που φυλάσσει τις ταυτότητες των πελατών της μαζί με δείγματα χειρόγραφων υπογραφών τους 9

Συνηθισμένες υπογραφές Για να επαληθεύσουμε την υπογραφή της Εύης αρκεί να πάμε στην τράπεζα χειρόγραφων υπογραφών και να ελέγξουμε την υπογραφή της Εύης Στο σημείο αυτό κάνουμε δύο σημαντικές υποθέσεις: 1. υποθέτουμε ότι η τράπεζα είναι αξιόπιστη: θεωρητικά θα μπορούσαν οι υπάλληλοι της τράπεζας χειρόγραφων υπογραφών να τροποποιήσουν την υπογραφή της Εύης με την υπογραφή κάποιου άλλου 2. υποθέτουμε ότι κάποιος κακόβουλος δε μπορεί να πλαστογραφήσει την υπογραφή της Εύης: κάτι τέτοιο δεν είναι γενικά αληθές αφού κάποιος πλαστογράφος μπορεί εύκολα να αναπαράγει μια υπογραφή Όπως θα δούμε στη συνέχεια, οι ψηφιακές υπογραφές ΔΕΝ είναι δυνατόν να πλαστογραφηθούν 10

Υπογραφή με χρήση λουκέτου Ξεχνάμε τις χειρόγραφες υπογραφές και υιοθετούμε μια νέα μέθοδο διαπίστωσης της γνησιότητας εγγράφων που βασίζεται στη χρήση λουκέτων, κλειδιών και κλειδωμένων κουτιών Κάθε συμμετέχων (δηλ., στο παράδειγμά μας η Εύη, ο Σταύρος και η Κατερίνα) λαμβάνει μεγάλο αριθμό λουκέτων: λουκέτα που δίνονται στο ίδιο άτομο είναι ίδια μεταξύ τους Τα λουκέτα κάθε συμμετέχοντος ανοίγουν αποκλειστικά από τον ίδιον (δε μπορεί να τα ξεκλειδώσει κανείς άλλος) Όλα τα λουκέτα έχουν το εξής μη συνηθισμένο χαρακτηριστικό: έχουν βιομετρικό αισθητήρα που διασφαλίζει ότι μόνο ο κάτοχός τους μπορεί να τα ξεκλειδώσει (κάθε συμμετέχων μπορεί να ξεκλειδώσει τα δικά του λουκέτα αλλά κανενός άλλου) Αυτές είναι οι αρχικές υποθέσεις για την ιδέα της χρήσης φυσικών λουκέτων 11

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

Υπογραφή με χρήση λουκέτου Υποθέτουμε ότι η Εύη χρωστάει στη Κατερίνα 100 και η Κατερίνα θέλει να το καταγράψει με επαληθεύσιμο τρόπο: θέλει δηλ., ένα έγγραφο σαν αυτό που είδαμε αλλά χωρίς χειρόγραφη υπογραφή η Εύη φτιάχνει ένα έγγραφο που δηλώνει ότι η Εύηθα δώσει 100 στη Κατερίνα και το τοποθετεί σε ένα κουτί με λουκέτο, το κλειδώνει με ένα από τα λουκέτα του και δίνει το κλειδωμένο κουτί στη Κατερίνα: το κλειδωμένο κουτί αποτελεί τώρα την υπογραφή για το έγγραφο Παρατήρηση: θα ήταν καλή ιδέα είτε η Κατερίνα είτε κάποιος άλλος αξιόπιστος μάρτυρας να παρακολουθεί τη διαδικασία δημιουργίας της υπογραφής: αλλιώς η Εύη θα μπορούσε να τοποθετήσει ένα άσχετο έγγραφο στο κουτί 13

Η Εύη υπόσχεται να δώσει 100 στην Κατερίνα. Εύη Γιαναφτιάξειμιαεπαληθεύσιμηυπογραφή με χρήση φυσικού λουκέτου, η Εύη τοποθετεί αντίγραφο του εγγράφου σε ένα κουτί το οποίο κλειδώνει με ένα από τα δικά της λουκέτα 14

Υπογραφή με χρήση λουκέτου ΠώςμπορείτώραηΚατερίναναπιστοποιήσειτηγνησιότητατουεγγράφου της Εύης; Αν κάποιος άλλος ή ακόμα και η ίδια η Εύη αρνηθεί τη γνησιότητα του εγγράφου η Κατερίνα μπορεί να πει Ok Εύη, δως μου ένα από τα κλειδιά σου και θα προσπαθήσω να ανοίξω το κλειδωμένο κουτί με αυτό Παρουσία της Εύης και άλλων μαρτύρων, η Κατερίνα ξεκλειδώνει το λουκέτο και εμφανίζει το περιεχόμενο του κουτιού και παρατηρεί: Εύη, αφού είσαι το μόνο άτομο με πρόσβαση σε λουκέτα που ανοίγουν με αυτό το κλειδί κανείς άλλος δε μπορεί να είναι υπεύθυνος για τα περιεχόμενα του κουτιού. Επομένως, εσύ έγραψες το σημείωμα και το τοποθέτησες στο κουτί και μου χρωστάς 100! Αυτή η μέθοδος πιστοποίησης γνησιότητας είναι πρακτική και ισχυρή: το μόνο πρόβλημα είναι ότι απαιτεί τη συνεργασία της Εύης: πριν να μπορέσει ηκατερίνανααποδείξειοτιδήποτεπρέπειηεύηνατηςδανείσειένααπότα κλειδιά της Φυσικά η Εύη θα μπορούσε να αρνηθεί ή να προσποιηθεί ότι συνεργάζεται και να δώσει κλειδί που δεν ανοίγει το λουκέτο ισχυριζόμενη ότι το έγγραφο τοποθετήθηκε στο κουτί χωρίς δική της γνώση ή συναίνεση 15

Υπογραφή με χρήση λουκέτου Για να αποτρέψουμε την Εύη από το να ισχυριστεί ότι δεν κλείδωσε αυτή το κουτί, χρειαζόμαστε ένα τρίτο εμπιστευόμενο μέρος όπως μία τράπεζα που να φυλάσσει κλειδιά Τώρα οι συμμετέχοντες δίνουν στην τράπεζα ένα κλειδί που ανοίγει τα δικά τους λουκέτα Οπότε αν η Κατερίνα χρειαστεί να αποδείξει ότι η Εύη έγραψε το έγγραφο πηγαίνει το κουτί στην τράπεζα παρουσία κάποιου μάρτυρα και το ξεκλειδώνει εκεί με το κλειδί της Εύης Το ότι το κουτί ανοίγει αποδεικνύει ότι μόνο η Εύη μπορεί να είναι υπεύθυνη για το περιεχόμενο του κουτιού και ότι το κουτί περιέχει το έγγραφο του οποίου τη γνησιότητα προσπαθεί να αποδείξει η Κατερίνα Τράπεζα Αποθήκευσης κλειδιών Εύη Σταύρος Κατερίνα Εύη Σταύρος Κατερίνα 16

Πώς χρησιμοποιούνται οι ψηφιακές υπογραφές; 17 Σχήματα από http://www.eett.gr/opencms/opencms/eett/electronic_communications/digitalsignatures/introesign.html

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Η ιδέα με τα κλειδιά και τα λουκέτα που μόλις περιγράψαμε αποτελεί την απαραίτητη προσέγγιση για τιςψηφιακέςυπογραφές Προφανώς, δε μπορούμε να χρησιμοποιούμε λουκέτα και κλειδιά για υπογραφές που πρέπει να μεταδοθούν ηλεκτρονικά Θα αντικαταστήσουμε επομένως λουκέτα και κλειδιά με ανάλογα μαθηματικά αντικείμενα που μπορούν να αναπαρασταθούν ψηφιακά Τα λουκέτα θα αναπαρασταθούν από αριθμούς Το κλείδωμα/ξεκλείδωμά τους θα αναπαρασταθεί από πολλαπλασιασμό με αριθμητική ρολογιού (που ουσιαστικά κάνει χρήση υπολοίπων διαιρέσεων) 18

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Οι υπολογιστές για να δημιουργήσουν ψηφιακές υπογραφές που δε μπορούν να πλαστογραφηθούν χρησιμοποιούν τεράστια μεγέθη ρολογιού συνήθως μήκους δεκάδων ή εκατοντάδων ψηφίων Εμείς για χάρη του παραδείγματος θα χρησιμοποιήσουμε μέγεθος ρολογιού 11 δείτε στην επόμενη διαφάνεια έναν πίνακα που περιέχει όλες τις τιμές που προκύπτουν από πολλαπλασιασμό αριθμώνμικρότερωντου11 Τότε για να υπολογίζουμε το 7 5 κάνουμε πρώτα τον υπολογισμό με κανονική αριθμητική: 7 5 = 35 και στη συνέχεια λαμβάνουμε το υπόλοιπο της διαίρεσης με 11 που είναι 2 (35=3*11+2) Κοιτάζοντας στον πίνακα στη γραμμή 7 και τη στήλη 5 (ή ανάποδα στήλη 7, γραμμή 5) βλέπουμε ότι το αποτέλεσμα είναι πράγματι 2 19

1 2 3 4 5 6 7 8 9 10 1 1 2 3 4 5 6 7 8 9 10 2 2 4 6 8 10 1 3 5 7 9 3 3 6 9 1 4 7 10 2 5 8 4 4 8 1 5 9 2 6 10 3 7 5 5 10 4 9 3 8 2 7 1 6 6 6 1 7 2 8 3 9 4 10 5 7 7 3 10 6 2 9 5 1 8 4 8 8 5 2 10 7 4 1 9 6 3 9 9 7 5 3 1 10 8 6 4 2 10 10 9 8 7 6 5 4 3 2 1 Πίνακας πολλαπλασιασμού για μέγεθος ρολογιού 11 Κάθε κελί προκύπτει ως: (γραμμή*στήλη)mod 11, δηλ., κρατάμε το υπόλοιπο της διαίρεσης (γραμμή*στήλη)/11 20

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Μέχρι τώρα αναζητούσαμε τρόπους για να υπογράψει η Εύη ένα μήνυμα προς την Κατερίνα το οποίο ήταν γραμμένο στα αγγλικά Από εδώ και πέρα θα δουλεύουμε μόνο με αριθμούς και τα μηνύματα θα είναι «μεταφρασμένα» σε ακολουθίες αριθμών (αφού είναι πάντα δυνατόν να μεταφραστούν ακολουθίες αριθμών σε γράμματα και αντίστροφα) Υποθέτουμε ότι το μήνυμα που θέλει να υπογράψει η Εύη είναι εξαιρετικά σύντομο, π.χ., ένα μόνο ψηφίο πώς θα το κάνει με χρήση της ιδέας του πολλαπλασιαστικού λουκέτου; η Εύη χρειάζεται ένα λουκέτο και ένα κλειδί που να το ξεκλειδώνει Επιλέγει πρώτα μέγεθος ρολογιού Μετά επιλέγει κάποιον αριθμό μικρότερο από το μέγεθος ρολογιού σαν το αριθμητικό της λουκέτο (στην πραγματικότητα, κάποιοι αριθμοί είναι καλύτεροι): υποθέτουμε ότι η Εύη διαλέγει μέγεθος ρολογιού 11 και για λουκέτο τον αριθμό 6 21

ΗΕύηθαδώσει 100 στην Κατερίνα. ΗΕύηθαδώσει 100 στην Κατερίνα. Εύη Εύη μήνυμα λουκέτο υπογραφή Πολλαπλασιασμός με 6, Με μέγεθος ρολογιού 11 Το μήνυμα που θέλουμε να υπογράψουμε είναι ο αριθμός 5, το λουκέτο είναι ένας άλλος αριθμός, το 6 και η διαδικασία κλειδώματος αντιστοιχεί σε πολλαπλασιασμό με δοσμένο μέγεθος ρολογιού: το τελικό αποτέλεσμα, δηλ., ο αριθμός 8 αποτελεί την ψηφιακή υπογραφή για το μήνυμα 22

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Πώς κλειδώνει η Εύη το μήνυμά της στο κουτί χρησιμοποιώντας το λουκέτο της; Μέσω πολλαπλασιασμού ως εξής: η κλειδωμένη εκδοχή του μηνύματός της είναι το λουκέτο της πολλαπλασιασμένο με το μήνυμα (χρησιμοποιώντας μέγεθος ρολογιού 11). Υποθέτουμε ότι το μήνυμα της Εύης είναι το 5 Το κλειδωμένο μήνυμά της θα είναι το 6 5, που με χρήση μεγέθους ρολογιού 11 είναι το 8 που αποτελεί και την ψηφιακή υπογραφή της Εύης 23

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Πώς μπορούμε να ξεκλειδώσουμε το κλειδωμένο μήνυμα; Χρησιμοποιώντας κάποιου είδους μαθηματικό κλειδί Η ιδέα είναι να ξαναχρησιμοποιήσουμε πολλαπλασιασμό με χρήση αριθμητικής ρολογιού αλλά αυτή τη φορά θα πολλαπλασιάσουμε με διαφορετικό αριθμό ειδικά επιλεγμένο η Εύη χρησιμοποιεί μέγεθος ρολογιού 11 και σα λουκέτο τον αριθμό 6 Αποδεικνύεται ότι το κλειδί που ξεκλειδώνει το μήνυμα είναι το 2 ΓΙΑΤΙ; 1=μέγεθος ρολογιού*k+λουκέτο*κλειδί (1=11*(-1)+6*κλειδί) Για να δούμε αν ισχύει αλήθεια αυτό: ξεκλειδώνουμε το κλειδωμένο μήνυμα πολλαπλασιάζοντας με το κλειδί η Εύη κλείδωσε το μήνυμα 5 με το λουκέτο 6 και έλαβε το κλειδωμένο μήνυμα ή αλλιώς την ψηφιακή υπογραφή 8 Γιαναξεκλειδώσουμε, παίρνουμε το 8 και το πολλαπλασιάζουμε με το κλειδί 2 που δίνει 5 με χρήση αριθμητικής ρολογιού μεγέθους 11 Δείτε επίσης ότι το μήνυμα 3 γίνεται 7 όταν κλειδωθεί και ξεκλειδώνεται σε 3 όταν χρησιμοποιηθεί το κλειδί Όμοια, το μήνυμα 2 γίνεται 1 όταν κλειδωθεί και ξεκλειδώνεται σε 2 όταν χρησιμοποιηθεί το κλειδί 24

ΗΕύηθαδώσει 100 στην Κατερίνα. ΗΕύηθαδώσει 100 στην Κατερίνα. Εύη ΗΕύηθαδώσει 100 στην Κατερίνα. Εύη Εύη μήνυμα λουκέτο υπογραφή κλειδί επαληθευμένη υπογραφή Πολλαπλασιασμός με 6, Με μέγεθος ρολογιού 11 Πολλαπλασιασμός με 6, Με μέγεθος ρολογιού 11 Πολλαπλασιασμός με 2, Με μέγεθος ρολογιού 11 Πολλαπλασιασμός με 2, Με μέγεθος ρολογιού 11 Πολλαπλασιασμός με 6, Με μέγεθος ρολογιού 11 Πολλαπλασιασμός με 2, Με μέγεθος ρολογιού 11 Η διαδικασία κλειδώματος παράγει μια ψηφιακή υπογραφή ενώ η διαδικασία ξεκλειδώματος παράγει ένα μήνυμα: αν το ξεκλειδωμένο μήνυμα ταιριάζει με το αρχικό, η ψηφιακή υπογραφή επαληθεύεται και πιστοποιείται η γνησιότητα του αρχικού μηνύματος αλλιώς το αρχικό μήνυμα έχει πλαστογραφηθεί 25

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Στο σχήμα της επόμενης διαφάνειας η τιμή του λουκέτου είναι 9 και η τιμή του αντίστοιχου κλειδιού είναι το 5 Στο πρώτο παράδειγμα το μήνυμα είναι το 4 και η ψηφιακή του υπογραφή το 3 η υπογραφή ξεκλειδώνεται δίνοντας το 4 που ταιριάζει με το αρχικό μήνυμα η υπογραφή είναι γνήσια Στο δεύτερο παράδειγμα το μήνυμα είναι το 8 και η ψηφιακή υπογραφή το 6 Στο τελευταίο παράδειγμα η ψηφιακή υπογραφή είναι πλαστογραφημένη: το μήνυμα είναι το 8 αλλά η υπογραφή του είναι το 7 η υπογραφή όταν ξεκλειδωθεί δίνει το 2 που δεν ταιριάζει με το αρχικό μήνυμα 26

Μήνυμα Ψηφιακή υπογραφή Ξεκλειδωμένη υπογραφή Ταιριάζει με το μήνυμα; Πλαστογραφημένη υπογραφή; Για την αυθεντική υπογραφή, πολλαπλασιάζουμε το μήνυμα με τιμή λουκέτου 9. Για πλαστογράφηση, διαλέγουμε τυχαίο αριθμό. Γιαναξεκλειδώσουμετην υπογραφή, πολλαπλασιάζουμε με τιμή κλειδιού 5. 4 3 4 ΝΑΙ ΟΧΙ 8 6 8 ΝΑΙ ΟΧΙ 8 7 2 ΟΧΙ! ΝΑΙ! Δείτε πώς ανιχνεύεται πλαστογραφημένη ψηφιακή υπογραφή: Στα παραδείγματα χρησιμοποιείται το 9 σα λουκέτο και το 5 σαν κλειδί. Οι πρώτες δύο υπογραφές είναι γνήσιες ενώ η τρίτη πλαστογραφημένη 27

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Στο αρχικό σενάριο με τα φυσικά λουκέτα και κλειδιά, τα λουκέτα είχαν βιομετρικούς αισθητήρες για να αποτραπεί η χρήση τους από άλλους που δεν είναι κάτοχοί τους Το ίδιο ισχύει και για τα πολλαπλασιαστικά λουκέτα και κλειδιά: η Εύη κρατάει κρυφό τον αριθμό του λουκέτου της: κάθε φορά που υπογράφει ένα μήνυμα μπορεί να αποκαλύψει και το μήνυμα και την ψηφιακή υπογραφή αλλά όχι τον αριθμό λουκέτου που χρησιμοποίησε για να παράγει την υπογραφή η Εύη πρέπει να κρατήσει επίσης κρυφά το μέγεθος ρολογιού και το αριθμητικό της κλειδί; ΟΧΙ ηεύημπορεί να ανακοινώσει το μέγεθος ρολογιού και το κλειδί (π.χ. σε ένα website) χωρίς να αποδυναμώσει τον τρόπο επαλήθευσης της γνησιότητας της υπογραφής της: όποιος γνωρίζει το μέγεθος ρολογιού και το κλειδί μπορεί να διαπιστώσει τη γνησιότητα της υπογραφής της Εύης 28

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Η μέθοδος αυτή εξαλείφει την ανάγκη ύπαρξης εμπιστευόμενης τράπεζας που υπήρχε τόσο στις χειρόγραφες υπογραφές όσο και στις υπογραφές με φυσικό λουκέτο-κλειδί; ΟΧΙ Χωρίς την ύπαρξη εμπιστευόμενης τράπεζας: η Εύη θα μπορούσε να διαδώσει ψεύτικη τιμή κλειδιού κάνοντας τις υπογραφές της να εμφανίζονται άκυρες Επιπλέον, οι εχθροί της Εύης θα μπορούσαν να δημιουργήσουν νέο αριθμητικό λουκέτο και αντίστοιχο αριθμητικό κλειδί, να ανακοινώσουν σε ένα website το κλειδί σα στοιχείο της Εύης και στη συνέχεια να υπογράφουν ψηφιακά κάθε μήνυμα που θέλουν με χρήση του νέου αριθμητικού λουκέτου τους: καθένας που πιστεύει ότι το νέο κλειδί ανήκει στη Εύη θα πιστέψει ότι το μήνυμα των εχθρών της υπεγράφη από την ίδια τη Εύη Η τράπεζα δε διατηρεί κρυφό το κλειδί και το μέγεθος ρολογιού της Εύης αλλά αποτελεί την εμπιστευόμενη οντότητα για την τιμή του αριθμητικού κλειδιού και του μεγέθους ρολογιού της Εύης 29

όνομα τράπεζα αριθμητικών κλειδιών μέγεθος ρολογιού αριθμητικό κλειδί Εύη 11 2 Σταύρος 41 35 Κατερίνα 23 18 Τράπεζα αριθμητικών κλειδιών Ο ρόλος της δεν είναι να κρατάει κρυφά τα αριθμητικά κλειδιά και τα μεγέθη ρολογιών. Η τράπεζα αποτελεί την εμπιστευόμενη αρχή για να λάβει κανείς το πραγματικό κλειδί και το πραγματικό μέγεθος ρολογιού για κάθε άτομο και αποκαλύπτει αυτή την πληροφορία ελεύθερα σε όποιον τη ζητήσει. 30

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Τα αριθμητικά λουκέτα είναι ιδιωτικά - τα αριθμητικά κλειδιά και μεγέθη ρολογιού είναι δημόσια αν και ακούγεται περίεργο κλειδί να διατίθεται δημόσια θυμηθείτε ότι στο σενάριο με τα φυσικά λουκέτα και κλειδιά, η τράπεζα κρατούσε αντίγραφο του κλειδιού της Εύης και το δάνειζε σε όποιον ήθελε να ελέγξει τη γνησιότητα της υπογραφής της Εύης κι εκεί το κλειδί ήταν κατά μία έννοια δημόσιο: το ίδιο ισχύει και για τα αριθμητικά κλειδιά Τι γίνεται αν θέλουμε να υπογράψουμε μήνυμα με περισσότερα τους ενός ψηφία; Λύση 1: χρησιμοποιούμε πολύ μεγαλύτερο μέγεθος ρολογιού: αν π.χ., χρησιμοποιήσουμε ρολόι 100 ψηφίων ακριβώς οι ίδιες μέθοδοι μάς επιτρέπουν να υπογράψουμε μηνύματα των 100 ψηφίων με υπογραφές των 100 ψηφίων Λύση 2: μηνύματα με περισσότερους από 100 χαρακτήρες μπορούν να τεμαχιστούν σε τμήματα των 100 χαρακτήρων και καθένα να υπογραφεί ξεχωριστά Λύση 3: υπάρχει και καλύτερος τρόπος να γίνει το (2): αποδεικνύεται ότι μεγάλα μηνύματα προκειμένου να υπογραφούν μπορούν να «χωρέσουν» σε ένα μόνο τμήμα π.χ., 100 ψηφίων με εφαρμογή μετασχηματισμού που είναι γνωστός ως κρυπτογραφική συνάρτηση κατακερματισμού (cryptographic hash function) Έχουμε ξανασυναντήσει τις κρυπτογραφικές συναρτήσεις κατακερματισμού σα μέθοδο αθροίσματος ελέγχου (checksum) της ορθότητας μεγάλων μηνυμάτων Η ιδέα χρήση των κρυπτογραφικών συναρτήσεων κατακερματισμού είναι η εξής: μεγάλα μηνύματα μετατρέπονται σε μικρότερα πριν υπογραφούν και επομένως αρκετά 31 μεγάλα μηνύματα όπως πακέτα λογισμικού μπορούν να υπογραφούν αποδοτικά

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Από πού προέρχονται τα αριθμητικά λουκέτα και κλειδιά; Για πλήρη εξήγηση απαιτείται γνώση Θεωρίας Αριθμών αλλά συνοπτικά η ουσία είναι η εξής: Αν το μέγεθος ρολογιού είναι πρώτος αριθμός τότε κάθε θετική τιμή μικρότερη απότομέγεθοςτου ρολογιού μπορεί να δουλέψει σα λουκέτο διαφορετικά η κατάσταση είναι πιο περίπλοκη Πρώτος είναι ένας αριθμός όταν που δεν έχει άλλους διαιρέτες εκτός από τον εαυτό του και τη μονάδα (το μέγεθος ρολογιού 11 που χρησιμοποιούμε είναι πράγματι πρώτος αριθμός) 32

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Άρα εύκολα διαλέγουμε αριθμητικό λουκέτο ειδικά αν το μέγεθος ρολογιού είναι πρώτος αριθμός Μετά πρέπει να καθορίσουμε κι ένα αριθμητικό κλειδί: αυτό αποτελεί ένα πολύ ενδιαφέρον, πολύ παλιό μαθηματικό πρόβλημα του οποίου η λύση είναι γνωστή αιώνες πριν και η βασική ιδέα της είναι ακόμα πιο παλιά: πρόκειται για τεχνική που είναι γνωστή ως ο εκτεταμένος αλγόριθμος του Ευκλείδη και παρουσιάστηκε από τον ίδιο περισσότερο από 2000 χρόνια πριν Επομένως, δεδομένης μιας τιμής λουκέτου, ο υπολογιστής μας βρίσκει αντίστοιχη τιμή κλειδιού χρησιμοποιώντας τον εκτεταμένο αλγόριθμο του Ευκλείδη: 1=μέγεθος ρολογιού*k+λουκέτο*κλειδί 33

Υπογραφή με χρήση πολλαπλασιαστικού λουκέτου Συνοψίζοντας, ποια είναι η ακολουθία στην πολλαπλασιαστική προσέγγιση; Οι τιμές λουκέτων είναι ιδιωτικές δηλ., μυστικές Ο συμμετέχων σε σχήμα δημιουργίας ψηφιακών υπογραφών επιλέγει χωρίς περιορισμούς μέγεθος ρολογιού που ανακοινώνεται δημόσια και τιμή λουκέτου που παραμένει ιδιωτική και στη συνέχεια παράγει ένα αντίστοιχο κλειδί με χρήση υπολογιστή (μέσω του εκτεταμένου αλγόριθμου του Ευκλείδη για την περίπτωση των πολλαπλασιαστικών κλειδιών) Το κλειδί αποθηκεύεται σε μια εμπιστευόμενη τράπεζα η οποία το αποκαλύπτει σε οποιονδήποτε το ζητάει Το πρόβλημα με την πολλαπλασιαστική προσέγγιση είναι ότι η ιδέα που χρησιμοποιείται για την παραγωγή του κλειδιού (δηλ., ο εκτεταμένος αλγόριθμος του Ευκλείδη) μπορεί να χρησιμοποιηθεί και αντίστροφα: με την ίδια τεχνική μπορεί ένας υπολογιστής να παράγει τιμή λουκέτου που αντιστοιχεί σε δοσμένη τιμή κλειδιού Επομένως: αφού οι τιμές των κλειδιών είναι δημόσιες, οι υποτιθέμενες μυστικές τιμές λουκέτων μπορούν να υπολογιστούν από τον καθένα Κατά συνέπεια, από τη στιγμή που γνωρίζουμε την τιμή του λουκέτου κάποιου μπορούμε να πλαστογραφήσουμε την ψηφιακή του υπογραφή 34

Αποστολέας Διαλέγει και ανακοινώνει μέγεθος ρολογιού (πρώτος αριθμός): 11 Διαλέγει και κρατάει κρυφή τιμή λουκέτου (αριθμός μικρότερος από μέγεθος ρολογιού): 6 Υπολογίζει κλειδί και το δίνει στην τράπεζα: 1=μέγεθος ρολογιού*k+λουκέτο*κλειδί 1=11*(-1)+6*κλειδί κλειδί =2 Δημιουργεί ψηφιακή υπογραφή για το μήνυμα 5: 5*τιμή λουκέτου mod μέγεθος ρολογιού=5*6mod11= 30mod11=8 Στέλνει δημόσια το μήνυμα και την ψηφιακή του υπογραφή Internet Κακόβουλος υποκλοπέας Μέγεθος ρολογιού: 11 Κλειδί: 2 Στέλνει: (5,8) Θέλει να βρει το λουκέτο του αποστολέα Υπολογίζει κάθε πιθανό λουκέτο για το οποίο ισχύει: 1=μέγεθος ρολογιού*k+λουκέτο*κλειδί Η τιμή του λουκέτου του αποστολέα είναι αυτή για την οποία ισχύει: μήνυμα*τιμή λουκέτου mod μέγεθος ρολογιού = 5*τιμή λουκέτου mod 11 = 8 Παραλήπτης Παίρνει το (5,8), ξεχωρίζει το μήνυμα = 5 από την ψηφιακή υπογραφή του αποστολέα = 8 Θέλει να διαπιστώσει αν πράγματι ο αποστολέας υπέγραψε ψηφιακά το μήνυμα Ξεκλειδώνει την ψηφιακή υπογραφή: (μήνυμα*κλειδί)modμέγεθος ρολογιού=(8*2)mod11=16mod11=5 Το 5 ταιριάζει με το μήνυμα πράγματι ο αποστολέας υπέγραψε το μήνυμα

Υπογραφή με χρήση εκθετικού λουκέτου Στη συνέχεια, θα παρουσιάσουμε μία αναβάθμιση του πολλαπλασιαστικού συστήματος παραγωγής ψηφιακών υπογραφών που είδαμε σε ένα νέο που είναι γνωστό με το όνομα RSA και είναι αυτό που χρησιμοποιείται στην πράξη Το νέο σύστημα χρησιμοποιεί αντί για τον πολλαπλασιασμό την πράξη ύψωση σε δύναμη (την έχουμε ξαναδεί όταν συζητήσαμε την κρυπτογράφηση με χρήση δημοσίου κλειδιού - public key cryptography PKC) σε συνδυασμό με αριθμητική ρολογιού 3 4 ( 3 εις την 4 ) σημαίνει 3 3x3 3 Στην έκφραση 3 4, το 4 καλείται εκθέτης ή δύναμη και το 3 καλείται βάση Η διαδικασία ύψωσης μίας βάσης σε έναν εκθέτη καλείται ύψωση σε δύναμη ( exponentiation ) Στα παραδείγματα που θα παρουσιάσουμε στη συνέχεια χρησιμοποιείται μέγεθος ρολογιού 22 καιοιεκθέτες3 και 7 36

Υπογραφή με χρήση εκθετικού λουκέτου Δείτε τον πίνακα για ύψωση σε δύναμη 3 και 7 με μέγεθος ρολογιού 22 Ασχολούμαστε με τη γραμμή n = 4 Χωρίς τη χρήση αριθμητικής ρολογιού, 43 = 4 4 4 = 64 Με χρήση αριθμητικής ρολογιού μεγέθους 22, παρατηρούμε ότι το 22 χωράει στο 64 δύο φορές (δίνοντας 44) και μένουν 20 Επομένως, 4 3 mod22=20 Όμοια, προκύπτουν και οι άλλες τιμές του πίνακα 37

Υπογραφή με χρήση εκθετικού λουκέτου Το νέο σύστημα δουλεύει όπως και το πολλαπλασιαστικό με τη μόνη διαφορά ότι: αντί να κλειδώνουμε και να ξεκλειδώνουμε μηνύματα με χρήση πολλαπλασιασμού, τώρα χρησιμοποιούμε ύψωση σε δύναμη (όπως και πριν) η Εύη επιλέγει πρώτα ένα μέγεθος ρολογιού και το ανακοινώνει δημόσια: εδώ το μέγεθος ρολογιού είναι 22 Μετά επιλέγει μια μυστική τιμή λουκέτου που μπορεί να είναι οποιοσδήποτε αριθμός μικρότερος του μεγέθους ρολογιού: εδώ επιλέγεται για τιμή λουκέτου το 3 Μετά χρησιμοποιεί τον υπολογιστή για να υπολογίσει την τιμή του κλειδιού για δοσμένη τιμή λουκέτου και μεγέθους ρολογιού (ο υπολογιστής μπορεί να υπολογίσει πολύ γρήγορα το κλειδί με χρήση πολύ γνωστής μαθηματικής τεχνικής): εδώ, για τιμή λουκέτου 3, η τιμή του κλειδιού προκύπτει ότι είναι 7 38

Υπογραφή με χρήση εκθετικού λουκέτου Αν το αρχικό μήνυμα είναι το 4 ηψηφιακήυπογραφή είναι 20 Υψώνουμε το μήνυμα σε δύναμη ίση με την τιμή του λουκέτου δηλ., υπολογίζουμε το 4 3 που με χρήση αριθμητικής ρολογιού μεγέθους 22 δίνει 20 Όταν η Κατερίνα θέλει να επαληθεύσει την ψηφιακή υπογραφή της Εύης που είναι 20 : Ζητάει από την τράπεζα τις τιμές του μεγέθους ρολογιού και του κλειδιού που χρησιμοποιεί η Εύη η Κατερίνα παίρνει την ψηφιακή υπογραφή, υψώνει στη δύναμη του κλειδιού και κρατάει το υπόλοιπο της διαίρεσης με το μέγεθος του ρολογιού λαμβάνοντας τελικά : 20 7 = 4 Αν το αποτέλεσμα ταιριάζει με το αρχικό μήνυμα, η ψηφιακή υπογραφή είναι γνήσια 39

ΗΕύηθαδώσει 100 στην Κατερίνα. ΗΕύηθαδώσει 100 στην Κατερίνα. Εύη ΗΕύηθαδώσει 100 στην Κατερίνα. Εύη Εύη μήνυμα λουκέτο υπογραφή κλειδί επαληθευμένη υπογραφή 4 8 7 Ύψωση σε δύναμη 3, Με μέγεθος ρολογιού 22 Ύψωση σε δύναμη 3, Με μέγεθος ρολογιού 22 Ύψωση σε δύναμη 3, Με μέγεθος ρολογιού 22 20 6 13 Ύψωση σε δύναμη 7, Με μέγεθος ρολογιού 22 Ύψωση σε δύναμη 7, Με μέγεθος ρολογιού 22 Ύψωση σε δύναμη 7, Με μέγεθος ρολογιού 22 4 8 7 Κλείδωμα και ξεκλείδωμα μηνυμάτων με χρήση ύψωσης σε δύναμη 40

Υπογραφή με χρήση εκθετικού λουκέτου Δείτε στον επόμενο πίνακα πώς γίνεται η επαλήθευση ψηφιακών υπογραφών Στα δύο πρώτα παραδείγματα, οι ψηφιακές υπογραφές είναι γνήσιες Στο τρίτο παράδειγμα, το μήνυμα είναι 8 και η ψηφιακή υπογραφή 9 Ξεκλειδώνοντάς το χρησιμοποιώντας το κλειδί και το μέγεθος του ρολογιού, παίρνουμε 9 7 mod22 = 15, που ΔΕΝ ταιριάζει με το αρχικό μήνυμα η ψηφιακή υπογραφή έχει πλαστογραφηθεί Μήνυμα Ψηφιακή υπογραφή Ξεκλειδωμένη υπογραφή Ταιριάζει με το μήνυμα; Πλαστογραφημένη υπογραφή; Για την αυθεντική υπογραφή, υψώνουμε το μήνυμα σε δύναμη ίση με την τιμή λουκέτου 3. Για πλαστογράφηση, διαλέγουμε τυχαίο αριθμό. Γιαναξεκλειδώσουμετην υπογραφή, υψώνουμε σε δύναμη ίση με την τιμή κλειδιού 7. 4 20 4 ΝΑΙ ΟΧΙ 8 6 8 ΝΑΙ ΟΧΙ 8 9 15 ΟΧΙ! ΝΑΙ! 41

Αποστολέας Διαλέγει και ανακοινώνει μέγεθος ρολογιού (γινόμενο δύο πρώτων αριθμών p,q): 2*11=22 Υπολογίζει και κρατάει δευτερεύον μέγεθος ρολογιού: (p-1)*(q-1)=1*10=10 Διαλέγει και κρατάει κρυφή τιμή λουκέτου (αριθμός μικρότερος από μέγεθος ρολογιού): 3 Υπολογίζει κλειδί και το δίνει στην τράπεζα: κλειδί=(δευτερεύον μέγεθος ρολογιού*λ+1)/λουκέτο= (10*λ+1)/3, για το μικρότερο λ κλειδί= (10*2+1)/3=21/3=7 Δημιουργεί ψηφιακή υπογραφή για το μήνυμα 4: 4 τιμή λουκέτου mod μέγεθος ρολογιού=4 3 mod22=64mod22=20 Στέλνει δημόσια το μήνυμα και την ψηφιακή του υπογραφή Internet Κακόβουλος υποκλοπέας (πρωτεύον) Μέγεθος ρολογιού: 22 Κλειδί: 7 Στέλνει: (4,20) Θέλει να βρει το λουκέτο του αποστολέα Πρέπει να προσδιορίσει τους πρώτους p και q τέτοιους ώστε p*q= μέγεθος ρολογιού (δηλ., να παραγοντοποιήσει το μέγεθος του ρολογιού) γιαναβρειτοδευτερεύονμέγεθος ρολογιού Να υπολογίσει κάθε πιθανό λουκέτο ώστε κλειδί=(δευτερεύον μέγεθος ρολογιού*λ+1)/λουκέτο Η τιμή του λουκέτου του αποστολέα είναι αυτή για την οποία ισχύει: μήνυμα τιμή λουκέτου mod μέγεθος ρολογιού= 4 τιμή λουκέτου mod 22=20 Παραλήπτης Παίρνει το (4,20), ξεχωρίζει το μήνυμα = 4 από την ψηφιακή υπογραφή του αποστολέα = 20 Θέλει να διαπιστώσει αν πράγματι ο αποστολέας υπέγραψε ψηφιακά το μήνυμα Ξεκλειδώνει την ψηφιακή υπογραφή: (υπογεγραμμένο μήνυμα κλειδί )mod μέγεθος ρολογιού=(20 7 )mod22=1280000000mod22=4 Το 4 ταιριάζει με το μήνυμα πράγματι ο αποστολέας υπέγραψε το μήνυμα

Δημιουργία και επαλήθευση ψηφιακής υπογραφής Συνοπτικά: Η χρήση της ηλεκτρονικής υπογραφής περιλαμβάνει δύο διαδικασίες: τη δημιουργία της υπογραφής και την επαλήθευσή της Αποστολέας 1. Ο αποστολέας χρησιμοποιώντας κάποιον αλγόριθμο κατακερματισμού (one way hash) δημιουργεί τη σύνοψη του μηνύματος (message digest) που θέλει να στείλει. Ανεξάρτητα από το μέγεθος του μηνύματος, αυτό που θα παραχθεί θα είναι μία συγκεκριμένου μήκους σειρά ψηφίων 2. Με το ιδιωτικό του κλειδί (λουκέτο), ο αποστολέας κρυπτογραφεί τη σύνοψη. Αυτό που παράγεται είναι η ψηφιακή υπογραφή. Η υπογραφή είναι ουσιαστικά μία σειρά ψηφίων συγκεκριμένου πλήθους 3. Η κρυπτογραφημένη σύνοψη (ψηφιακή υπογραφή) προσαρτάται στο κείμενο και το μήνυμα με τη ψηφιακή υπογραφή μεταδίδονται μέσω του δικτύου (σημειώνεται ότι ο αποστολέας αν επιθυμεί μπορεί να κρυπτογραφήσει το μήνυμά του με το δημόσιο κλειδί του παραλήπτη) Παραλήπτης 1. Ο παραλήπτης αποσπά από το μήνυμα την ψηφιακή υπογραφή (κρυπτογραφημένη, με το ιδιωτικό κλειδί του αποστολέα, σύνοψη) 2. Εφαρμόζοντας στο μήνυμα που έλαβε τον ίδιο αλγόριθμο κατακερματισμού, ο παραλήπτης δημιουργεί τη σύνοψη του μηνύματος 3. Στη συνέχεια, αποκρυπτογραφεί την κρυπτογραφημένη σύνοψη του μηνύματος (ψηφιακή υπογραφή) με το δημόσιο κλειδί του αποστολέα 4. Συγκρίνονται οι δύο συνόψεις καιανβρεθούνίδιες, αυτό σημαίνει ότι το μήνυμα που έλαβε ο παραλήπτης είναι ακέραιο. Αν το μήνυμα έχει μεταβληθεί, η σύνοψη που θα παράγει ο παραλήπτης θα είναι διαφορετική από την σύνοψη που έχει κρυπτογραφηθεί 43

Δημιουργία ψηφιακής υπογραφής Σχήματα από http://www.eett.gr/opencms/opencms/eett/electronic_communications/digitalsignatures/introesign.html

Επαλήθευση ψηφιακής υπογραφής Σχήματα από http://www.eett.gr/opencms/opencms/eett/electronic_communications/digitalsignatures/introesign.html

Σύστημα RSA για παραγωγή ψηφιακών υπογραφών Αυτό το σύστημα παραγωγής ψηφιακών υπογραφών με εκθετικά λουκέτα και εκθετικά κλειδιά καλείται RSA από τα αρχικά των εφευρετών του Ronald Rivest, Adi Shamir, και Leonard Adleman, που το πρωτοδημοσίευσαν τη δεκαετία του 1970 Το σύστημα RSA είναι και τρόπος κρυπτογράφησης με χρήση δημοσίου κλειδιού και τρόπος παραγωγής ψηφιακών υπογραφών Αυτό δεν αποτελεί σύμπτωση: υπάρχει βαθιά θεωρητική σχέση μεταξύ αλγορίθμων κρυπτογράφησης με χρήση δημοσίου κλειδιού και αλγορίθμων παραγωγής ψηφιακών υπογραφών 46