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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ"

Transcript

1 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΙΑ ΕΠΙΘΕΣΗ ΣΤΗΝ ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ DSA ΒΑΣΙΣΜΕΝΗ ΣΕ ΠΛΕΓΜΑΤΑ A LATTICE ATTACK ON DSA ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Πολυχρόνης Ψαράς Α.Ε.Μ 1854 Επιβλέπων: ΚΩΝΣΤΑΝΤΙΝΟΣ ΔΡΑΖΙΩΤΗΣ ΛΕΚΤΟΡΑΣ ΘΕΣΣΑΛΟΝΙΚΗ, 2015

2 ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΛΗΨΗ... 1 ABSTRACT... 2 ΕΥΧΑΡΙΣΤΙΕΣ... 3 ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ... 4 ΛΙΣΤΑ ΠΙΝΑΚΩΝ... 5 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ ΑΝΤΙΚΕΙΜΕΝΟ ΤΗΣ ΠΑΡΟΥΣΑΣ ΕΡΓΑΣΙΑΣ ΕΙΝΑΙ ΕΙΣΑΓΩΓΗ ΟΡΙΣΜΟΙ ΠΛΕΓΜΑ (LATTICE) SPAN ΘΕΜΕΛΙΩΔΕΣ ΠΑΡΑΛΛΗΛΕΠΙΠΕΔΟ ΟΡΘΟΜΟΝΑΔΙΑΙΟΣ ΠΙΝΑΚΑΣ ΟΡΙΖΟΥΣΑ ΝΟΡΜΕΣ ΕΛΑΧΙΣΤΗ ΑΠΟΣΤΑΣΗ ΑΝΙΣΟΤΗΤΑ HADAMARD- ΑΝΙΣΟΤΗΤΑ HERMITE ΔΙΑΔΟΧΙΚΑ ΕΛΑΧΙΣΤΑ ΘΕΩΡΗΜΑΤΑ MINKOWSKI ΟΡΘΟΓΩΝΟΠΟΙΗΣΗ GRAM-SCHMIDT ΑΛΓΟΡΙΘΜΟΣ LLL CLOSEST VECTOR PROBLEM (CVP) -SHORTEST VECTOR PROBLEM (SVP) ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ BABAI ΚΕΦΑΛΑΙΟ 2: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ... 18

3 ΠΕΡΙΕΧΟΜΕΝΑ 2.1 ΕΙΣΑΓΩΓΗ ΙΣΤΟΡΙΚΑ ΣΤΟΙΧΕΙΑ ΟΡΙΣΜΟΙ ΠΡΟΒΛΗΜΑ ΔΙΑΚΡΙΤΟΥ ΛΟΓΑΡΙΘΜΟΥ ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΣΕ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΣΕ ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ RSA RSA ΚΡΥΠΤΟΣΥΣΤΗΜΑ RSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ RABIN RABIN ΚΡΥΠΤΟΣΥΣΤΗΜΑ ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ ΤΟΥ RABIN EL GAMAL EL GAMAL ΚΡΥΠΤΟΣΥΣΤΗΜΑ EL GAMAL ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ DSA - ECDSA DSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ ECDSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ DSA ECDSA ΕΠΙΘΕΣΕΙΣ ΚΕΦΑΛΑΙΟ 3: ΥΛΟΠΟΙΗΣΗ ΤΗΣ ΕΠΙΘΕΣΗΣ ΣΤΟ SAGE ΠΕΡΙΓΡΑΦΗ ΤΟΥ ΚΩΔΙΚΑ ΠΕΙΡΑΜΑ ΣΥΜΠΕΡΑΣΜΑΤΑ ΠΑΡΑΡΤΗΜΑ: ΚΩΔΙΚΑΣ ΒΙΒΛΙΟΓΡΑΦΙΑ ΕΥΡΕΤΗΡΙΟ... 52

4 ΠΕΡΙΛΗΨΗ Στην παρούσα εργασία γίνεται υλοποίηση στο Sage της επίθεσης με πλέγματα στην ψηφιακή υπογραφή DSA, όπως αυτή περιγράφεται στο paper με τίτλο Lattice attacks on Digital Signature Schemes [14] και στην συνέχεια εξετάζεται το ποσοστό επιτυχίας της συγκεκριμένης μεθόδου με συγκεκριμένα δεδομένα εισόδου. 1

5 ABSTRACT In this particular thesis we make an implementation in Sage of the attack with lattices, which is described in the paper with title Lattice attacks on Digital Signature Schemes [14] and then is examined the success ratio of this particular procedure for some specific insert data. 2

6 ΕΥΧΑΡΙΣΤΙΕΣ Εγκάρδιες ευχαριστίες στον κ. Δρ. Κ. Δραζιώτη για την αμέριστη βοήθεια του στην ολοκλήρωση της πτυχιακής εργασίας. Ευχαριστώ επίσης θερμά την οικογένεια μου, για την βοήθεια και συμπαράστασή της κατά την διάρκεια εκπόνησης της πτυχιακής εργασίας. 7 Ιουνίου 2015 Πολυχρόνης Ψαράς 3

7 ΛΙΣΤΑ ΣΧΗΜΑΤΩΝ Εικόνα 1: Ένα πλέγμα στον Ευκλείδειο χώρο.. 7 Εικόνα 2: Πλέγμα στο R Εικόνα 3: Διαφορετικές βάσεις που ορίζουν το ίδιο πλέγμα Εικόνα 4: Διαδοχικό ελάχιστο ενός πλέγματος Εικόνα 5: Ορθοκανονικοποίηση Gram-Schmidt Εικόνα 6: Το πρόβλημα του μικρότερου διανύσματος (SVP) Εικόνα 7: Το πρόβλημα του πλησιέστερου διανύσματος (CVP) Εικόνα 8: Κρυπτογράφηση και αποκρυπτογράφηση ενός μηνύματος...20 Εικόνα 9: Man in the middle attack.. 23 Εικόνα 10: DSA Εικόνα 11: Κώδικας 1ο κομμάτι Εικόνα 12: Κώδικας 2ο κομμάτι Εικόνα 13: Κώδικας 3ο κομμάτι...36 Εικόνα 14: Κώδικας 4ο κομμάτι Εικόνα 15: Κώδικας 5ο κομμάτι Εικόνα 16: Κώδικας 6ο κομμάτι Εικόνα 17: Κώδικας 7ο κομμάτι Εικόνα 18: Κώδικας 8ο κομμάτι Εικόνα 19: Κώδικας 9ο κομμάτι...42 Εικόνα 20: Ιστόγραμμα e= Εικόνα 21: Ιστόγραμμα e= Εικόνα 22: Ιστόγραμμα e=

8 ΛΙΣΤΑ ΠΙΝΑΚΩΝ Πίνακας 1: Πίνακας paper...41 Πίνακας 2: Πίνακας τιμών paper Πίνακας 3: Πίνακας e= Πίνακας 4: Πίνακας e= Πίνακας 5: Πίνακας e=

9 ΚΕΦΑΛΑΙΟ 1: ΕΙΣΑΓΩΓΗ 1.1 ΑΝΤΙΚΕΙΜΕΝΟ ΤΗΣ ΠΑΡΟΥΣΑΣ ΕΡΓΑΣΙΑΣ ΕΙΝΑΙ Η εργασία δομείται σε κεφάλαια ως εξής: Στο Κεφάλαιο 1, Εισαγωγή στα Πλέγματα και στους Αλγορίθμους τους Στο Κεφάλαιο 2, Κρυπτογραφία και Ψηφιακές Υπογραφές Στο Κεφάλαιο 3, Υλοποίηση της Επίθεσης στο SAGE Στα Συμπεράσματα παρουσιάζονται συνοπτικά τα αποτελέσματα της παρούσας πτυχιακής εργασίας. Στο Παράρτημα παρουσιάζεται η ολοκληρωμένη υλοποίηση του προγράμματος σε μορφή κώδικα. Εν συνεχεία παρουσιάζεται αλφαβητικά η βιβλιογραφία και οι δικτυακοί τόποι που αναφέρονται στην εργασία. Τέλος παρουσιάζεται το ευρετήριο των όρων οι οποίοι χρησιμοποιούνται σε αυτή την εργασία για την διευκόλυνση του αναγνώστη. 6

10 1.2 ΕΙΣΑΓΩΓΗ Πλέγμα (Lattice) είναι ένα σύνολο σημείων στον Ευκλείδειο χώρο με περιοδική δομή (Εικόνα 1). Εικόνα 1: Ένα πλέγμα στον Ευκλείδειο χώρο Τα πλέγματα είναι ιδιαίτερα χρήσιμα, καθώς μπορούν να χρησιμοποιηθούν σαν εργαλείο για να επιλύσουν ένα ευρύ φάσμα προβλημάτων. Χάρη στις μοναδικές ιδιότητες που τα συνοδεύουν, σχετικά με την υπολογιστική πολυπλοκότητα, βρίσκουν εφαρμογή στον κλάδο της κρυπτογραφίας και της κρυπτανάλυσης καθώς και στον χώρο της ασφάλειας του κυβερνοχώρου (cybersecurity). Συγκεκριμένα χρησιμοποιούνται για την δημιουργία ασφαλών κρυπτοσυστημάτων καθώς και για την κρυπτανάλυση άλλων. Για παράδειγμα υπάρχει επίθεση στην ψηφιακή υπογραφή DSA και ECDSA [7], [10], [14], [31] επίσης η επίθεση του Coppersmith [5], [6] στο σύστημα του RSA, που βασίζονται στα πλεγματα. Έχουν ιδιαίτερη εφαρμογή στα μαθηματικά (π.χ θεωρία συνόλων, θεωρία αριθμών, στον κλάδο της γεωμετρίας κτλ.) και κατ επέκταση αποτελούν ιδιαίτερο θέμα μελέτης στην επιστήμη των υπολογιστών χάρη στους σημαντικούς αλγόριθμους τους. Τα πλέγματα άρχισαν να χρησιμοποιούνται και να μελετώνται στα μαθηματικά στα τέλη του 18ου αιώνα. Από τους σημαντικότερους μαθηματικούς που τα μελέτησαν είναι οι Lagrange, Gauss και ο Minkowski. Από υπολογιστική άποψη τα πλέγματα άρχισαν να μελετώνται γύρω στον Αρχικά χρησιμοποιήθηκαν για να σπάσουν διάφορα κρυπτοσυστήματα π.χ. το knapsack [4], [21], ενώ με το πέρασμα των χρόνων και μετά το 1990 άρχισαν να χρησιμοποιούνται και για το σχεδιασμό νέων κρυπτοσυστημάτων. Κάποιοι από τους επιστήμονες που συνέβαλαν με τις εργασίες τους και τις μελέτες τους στην εξέλιξη τους είναι οι Hendrik Lenstra, Arjen Lenstra και László Lovatz που ανακάλυψαν τον αλγόριθμο LLL[23] (για την εύρεση καλών βάσεων ενός πλέγματος). Στην παρούσα διπλωματική εργασία μελετάται η κρυπτανάλυση της ψηφιακής υπογραφής (DSA-Digital Signature Algorithm) με την χρήση της θεωρίας πλέγματος και των αλγορίθμων LLL [23] και Babai [2]. Βασίζεται στο paper των N.A Howgrave-Graham και N.P Smart [14]. 7

11 1.3 ΟΡΙΣΜΟΙ Στην ενότητα αυτή παρουσιάζονται κάποιοι βασικοί ορισμοί σχετικοί με τα πλέγματα [26]. Συγκεκριμένα δίνονται οι ορισμοί του πλέγματος, του span, του θεμελιώδους παραλληλεπιπέδου, του μοναδιαίου πίνακα και της ορίζουσας ΠΛΕΓΜΑ (LATTICE) Ορισμός 1 Πλέγμα (Lattice): Δοθέντος n γραμμικών ανεξάρτητων διανυσμάτων πλέγμα που παράγεται από αυτά ορίζεται σαν:, το. Εικόνα 2: Πλέγμα στο R 2 Το σύνολο των διανυσμάτων ονομάζεται βάση του πλέγματος. Τα πλέγματα έχουν πολλές βάσεις (άπειρες). Κάποιες βάσεις είναι καλύτερες από άλλες. «Καλές» βάσεις είναι αυτές με σχεδόν ορθογώνια διανύσματα τα οποία έχουν μικρές Ευκλείδειες νόρμες. Τέτοιες βάσεις μας επιτρέπουν να λύσουμε συγκεκριμένες παραλλαγές του CVP (Closest Vector Problem) πολύ αποτελεσματικά. Εάν ορίσουμε το σαν ένα πίνακα του οποίου οι στήλες είναι τότε το πλέγμα που δημιουργείται από το είναι : = }. Η βαθμίδα (rank) του πλέγματος είναι n και η διάσταση του είναι m. Εάν πλήρες (full-rank lattice). τότε το πλέγμα λέγεται 8

12 Όπως αναφέραμε η βάση ενός πλέγματος δεν είναι μοναδική. Για παράδειγμα το B1= και το Β2= δημιουργούν το ίδιο πλέγμα στο. Αυτές οι βάσεις ονομάζονται ισοδύναμες SPAN Εικόνα 3: Διαφορετικές βάσεις που ορίζουν το ίδιο πλέγμα Ορισμός 2 (Span) [26]: Το span του πλέγματος L(B) είναι ο γραμμικός χώρος υπεράνω του R που παράγεται από τα διανύσματα ενός πλέγματος, ΘΕΜΕΛΙΩΔΕΣ ΠΑΡΑΛΛΗΛΕΠΙΠΕΔΟ Ορισμός 3 Θεμελιώδες παραλληλεπίπεδο [12],[26] (fundamental parallelepiped): Για κάθε βάση Β ενός πλέγματος ορίζουμε: Το ) εξαρτάται από την βάση ΟΡΘΟΜΟΝΑΔΙΑΙΟΣ ΠΙΝΑΚΑΣ Για να καθορίσουμε αν δύο βάσεις είναι ισοδύναμες [12],[26], δηλαδή ορίζουν το ίδιο πλέγμα (συμβολικά ) Είναι απαραίτητος ο παρακάτω ορισμός. Ορισμός 4 Ορθομοναδιαίος πίνακας (unimodular matrix): Ένας πίνακας καλείται ορθομοναδιαίος εάν. Για παράδειγμα ο πίνακας είναι ορθομοναδιαίος. Λήμμα 1: Εάν U ορθομοναδιαίος τότε ο είναι επίσης ορθομοναδιαίος και συγκεκριμένα 9

13 Λήμμα 2: Δύο βάσεις ) είναι ισοδύναμες αν και μόνο αν για κάποιο ορθομοναδιαίο πίνακα U. Σαν άμεσο συμπέρασμα προκύπτει ότι ο ορθομοναδιαίος. είναι βάση του του πλέγματος L μόνο εάν είναι ο Β είναι Άλλος τρόπος για να δούμε εάν δυο βάσεις είναι ισοδύναμες φαίνεται στο παρακάτω λήμμα: Λήμμα 3: Δύο βάσεις είναι ισοδύναμες αν και μόνο αν η μία μπορεί να παραχθεί από την άλλη με χρήση των παρακάτω λειτουργιών στις στήλες: ανταλλαγή ΟΡΙΖΟΥΣΑ Ορισμός 5 Ορίζουσα[12], [26] (determinant): Έστω είναι πλέγμα βαθμίδας n. Ονομάζουμε ορίζουσα του, που συμβολίζεται με ως το n-διάστατο όγκο του παραλληλεπιπέδου Αποδεικνύεται ότι. Στην ειδική περίπτωση που το είναι full-rank πλέγμα, άρα ο Β είναι τετραγωνικός πίνακας τότε έχουμε. Η ορίζουσα ενός πλέγματος είναι καλά ορισμένη και δεν εξαρτάται από την επιλογή της βάσης του πλέγματος. 1.4 ΝΟΡΜΕΣ Παρακάτω δίνεται ο ορισμός της Ευκλείδειας νόρμας [20], [26]. Τα περισσότερα προβλήματα στα πλέγματα σχετίζονται με αποστάσεις. Η απόσταση μεταξύ δύο σημείων ορίζεται ως η νόρμα της διαφοράς τους: Μία νόρμα στο R n ορίζεται σαν μια συνάρτηση για την οποία ικανοποιούνται: α) για όλα τα και = 0. β) για όλα τα. (θετική ομοιογένεια) γ) για όλα τα. (τριγωνική ανισότητα). Υπάρχουν οι εξής κατηγορίες νορμών: α) Η 1-νόρμα που υπολογίζεται από τον τύπο: β) Η 2-νόρμα που λέγεται και Ευκλείδεια νόρμα (απόσταση) και υπολογίζεται από τον παρακάτω τύπο: 10

14 γ) Για κάθε ακέραιο έχουμε την p-νόρμα με το εξής τύπο: δ) Η ορίζεται ως εξής: 1.5 ΕΛΑΧΙΣΤΗ ΑΠΟΣΤΑΣΗ Ορισμός 6: Για κάθε πλέγμα η ελάχιστη απόσταση του είναι η μικρότερη απόσταση ανάμεσα σε οποιαδήποτε δύο σημεία του πλέγματος [26]: Παρατηρούμε ότι αυτό είναι ισοδύναμο με το μήκος του μικρότερου μη μηδενικού διανύσματος του πλέγματος. Δηλαδή : Θεώρημα 1: Για κάθε βάση του πλέγματος με Gram-Schmidt ορθογωνοποίηση, ισχύει ότι:.. [26]. 1.6 ΑΝΙΣΟΤΗΤΑ HADAMARD- ΑΝΙΣΟΤΗΤΑ HERMITE Παρακάτω αναφέρονται μερικά βασικά θεωρήματα για τα πλέγματα. Tο παρακάτω θεώρημα διατυπώθηκε από τον Jacques Hadamard το Θεώρημα 2 (Ανισότητα του Hadamard): Έστω ένα πλέγμα και,,, γραμμικά ανεξάρτητα διανύσματα στο. Τότε ισχύει η ανισότητα: Το παραπάνω γίνεται ισότητα μόνο εάν τα διανύσματα είναι βάση του πλέγματος και είναι ανά δύο ορθογώνια [9].. Θεώρημα 3 (Ανισότητα του Hermite): Κάθε πλέγμα Λ έχει μια βάση παρακάτω ανισότητα [24]: η οποία ικανοποιεί την... (Λ). 11

15 Εάν το παραπάνω θεώρημα εφαρμοστεί σε ένα διάνυσμα βάσης με την μικρότερη πιθανή νόρμα τότε προκύπτει το παρακάτω πόρισμα. Πόρισμα 1: Για κάθε πλέγμα ικανοποιείται η παρακάτω ανισότητα: όπου το μήκος του μικρότερου διανυσματος του πλέγματος., 1.7 ΔΙΑΔΟΧΙΚΑ ΕΛΑΧΙΣΤΑ Εάν το w είναι το μικρότερο διάνυσμα στο πλέγμα, το ίδιο θα ισχύει και για το αντίθετο του, δηλαδή το. Ο Minkowski διατύπωσε το παρακάτω: Έστω ένα πλέγμα ακολούθως: με βαθμίδα n. Το ι-οστό διαδοχικό ελάχιστο (successive minimum) ορίζεται ως, όπου είναι μία σφαίρα με ακτίνα r και κέντρο το 0. Εικόνα 4: Διαδοχικό ελάχιστο ενός πλέγματος Δηλαδή για παράδειγμα το 5 ο ελάχιστο ( ) πλέγματος, είναι η ακτίνα της μικρότερης σφαίρας που περιέχει 5 γραμμικά, ανεξάρτητα και μη μηδενικά σημεία του πλέγματος. Το πρώτο διαδοχικό ελάχιστο του άρα είναι προφανές ότι θα ισχύει: είναι το ίδιο με το μήκος του μικρότερου διανύσματος του πλέγματος και ΘΕΩΡΗΜΑΤΑ MINKOWSKI Θεώρημα 4 (Πρώτο θεώρημα του Minkowski): Για κάθε πλήρες (full-rank) πλέγμα με βαθμίδα n ισχύει [12], [27]: 12

16 Θεώρημα 5 (Δεύτερο θεώρημα του Minkowski): Για κάθε πλήρες (full-rank) πλέγμα με βαθμίδα n ισχύει [12], [27]: ΟΡΘΟΓΩΝΟΠΟΙΗΣΗ GRAM-SCHMIDT H ορθογωνοποίηση Gram-Schmidt [22] είναι μια θεμελιώδης διαδικασία στην γραμμική άλγεβρα, η οποία παίρνει ένα σύνολο από οποιαδήποτε n γραμμικά ανεξάρτητα διανύσματα και δημιουργεί ένα σύνολο από n ορθογώνια διανύσματα. Ορθογώνια διανύσματα (κάθετα μεταξύ τους) είναι αυτά με εσωτερικό γινόμενο ίσο με μηδέν. Επισημαίνεται ότι η συγκεκριμένη μέθοδος χρησιμοποιείται στο πρόβλημα που παρουσιάζεται στο Κεφάλαιο 4 της παρούσας εργασίας. Εικόνα 5: Ορθοκανονικοιπήση Gram-Schmidt Λήμμα 1: Η Gram-Schmidt ορθογωνοποίηση της βάσης μπορεί να υπολογιστεί από:. Με άλλα λόγια, είναι συνιστώσα του ορθογώνια στο. Αλγόριθμος 1: Gram-Schmidt Έστω { } μία βάση ενός διανυσματικού χώρου V με εσωτερικό γινόμενο. Βήμα 1: Θέτουμε: 13

17 Βήμα 2: Ορίζουμε: Τα στοιχεία αποτελούν μια ορθοκανονική βάση του V. Αν παραλείψουμε το βήμα δύο, ο αλγόριθμος επιστρέφει μόνο ορθογώνια διανύματα. 1.9 ΑΛΓΟΡΙΘΜΟΣ LLL O αλγόριθμος Lenstra Lenstra Lovász (LLL) είναι ένας πολυωνυμικού χρόνου αλγόριθμος αναγωγής της βάσης ενός πλέγματος[12], [23], [26]. Εφευρέθηκε το 1982 από τους Arjen Lenstra, Hendrik Lenstra και László Lovász. Ο στόχος της αναγωγής ενός πλέγματος (Lattice reduction) είναι να πάρει σαν είσοδο την βάση ενός πλέγματος και να υπολογίσει μια νέα βάση για το ίδιο πλεγμα. Αυτή η νέα βάση θα πρέπει να έχει διανύσματα, τα οποία να είναι όσο τον δυνατόν ποιο κοντά στο να είναι ορθογώνια και όσο ποιο μικρά γίνεται. Η ασφάλεια πολλών κρυπτοσυστημάτων και ψηφιακών υπογραφών βασίζεται στην δυσκολία του να λύσει κάποιος τα προβλήματα CVP και SVP. Κάτω από προϋποθέσεις ο συγκεκριμένος αλγόριθμος μπορεί να βρει προσεγγιστικές λύσεις για τα CVP και SVP. Η προσέγγιση είναι εκθετική ως προς την βαθμίδα του πλέγματος. Ο αλγόριθμος LLL έχει κάποιες πολύ σημαντικές εφαρμογές και αναφέρεται και χρησιμοποιείται ευρέως. Βασίζεται στην ορθογωνοποίηση Gram-Schmidt. Ο συγκεκριμένος αλγόριθμος έχει ιδιαίτερη σημασία στην κρυπτογραφία και στην ασφάλεια που αυτή παρέχει. Η χρήση του παρουσιάζεται εκτενέστερα στο Κεφάλαιο 4. Παρακάτω δίνεται ο ορισμός της LLL-ανηγμένης βάσης. Ορισμός 7: Μια βάση παράμετρο δ ( ενός πλέγματος L καλείται LLL-ανηγμένη (LLL-reduced) με ), αν ικανοποιούνται οι παρακάτω συνθήκες: για 14

18 Οι Arjen Lenstra,Hendrik Lenstra και László Lovász όρισαν σαν τιμή του. Τα είναι η Gram-Schmidt ορθοκανονικοποίηση της και. Αλγόριθμος 2: LLL Σαν είσοδο παίρνει την βάση. Σαν έξοδο δίνει σε πολυωνημικό χρόνο την ανηγμένη βάση για το πλέγμα Τα βήματα του αλγορίθμου παρατίθενται παρακάτω: Βήμα 1: Αρχικά υπολογίζουμε από την Gram-Schmidt ορθογωνοποίηση τα. Βήμα 2: (Βήμα αναγωγής (reduction step)): Για μέχρι επανέλαβε Για μέχρι επανέλαβε όπου Βήμα 3: (Βήμα αντιμετάθεσης (Swap step)): Εάν τότε πήγαινε στο Βήμα 1 Βήμα 4: Έξοδος: CLOSEST VECTOR PROBLEM (CVP) -SHORTEST VECTOR PROBLEM (SVP) Από τα πλέον σημαντικά και θεμελιώδη προβλήματα που σχετίζονται με τα πλέγματα είναι αυτό της εύρεσης του μικρότερου μη μηδενικού διανύσματος σε ένα πλέγμα και αυτό της εύρεσης του εγγύτερου διανύσματος ενός πλέγματος σε ένα δοσμένο που δεν ανήκει στο πλέγμα. Μπορεί να φαίνονται απλά όμως στην πραγματικότητα είναι ιδιαίτερα δύσκολα προβλήματα και η δυσκολία τους εξαρτάται από το μέγεθος του n. Τα προβλήματα αυτά ανήκουν στην κατηγορία των NP-hard προβλημάτων. Παρακάτω δίνονται οι ορισμοί αυτών των προβλημάτων καθώς και η σχηματική τους αναπαράσταση [1] για τη 2-νόρμα. 15

19 Ορισμός 8: SVP (Shortest vector problem): Ψάχνουμε να βρούμε το μικρότερο (ως προς την Ευκλείδεια νόρμα) μη-μηδενικό διάνυσμα σε ένα πλέγμα. Εικόνα 6: Το πρόβλημα του μικρότερου διανύσματος (SVP) Ορισμός 9: CVP (Closest vector problem): Ψάχνουμε να βρούμε ένα διάνυσμα του πλέγματος βρίσκεται ποιο κοντά σε ένα σημείο p(που μπορεί να μην είναι σημείο του πλέγματος). που Εικόνα 7: Το πρόβλημα του εγγύτερου διανύσματος (CVP) 16

20 1.11 ΑΛΓΟΡΙΘΜΟΣ ΤΟΥ BABAI Ο αλγόριθμος του Babai [2], [12] δημοσιεύτηκε το 1986 και περιγράφει προσεγγιστικές λύσεις για το CVP. Babai s rounding off διαδικασία: είναι γρήγορη και απλή αλλά δεν εγγυάται ότι το αποτέλεσμα θα είναι το μικρότερο διάνυσμα στο πλέγμα. Έστω ένα πλέγμα που ανήκει στο και μια βάση },και ένα. Υπολογίζουμε πραγματικούς αριθμούς τέτοιους ώστε. Μετά υπολογίζουμε το διάνυσμα πλέγματος. Παρακάτω παρουσιάζεται ένας προσεγγιστικός αλγόριθμος ο οποίος δίνει σαν έξοδο ένα διάνυσμα του πλέγματος το οποίο είναι κοντά στον επιθυμητό σημείο t. Η ακρίβεια του αλγορίθμου εξαρτάται από το βαθμό του πλέγματος. Ο αλγόριθμος τρέχει σε πολυωνυμικό χρόνο. Αλγόριθμος 3: Babai s nearest plane [12] Αρχικά ο αλγόριθμος παίρνει σαν είσοδο μια LLL βάση και ένα διάνυσμα. Στην συνέχεια υπολογίζεται η Gram-Schmidt βάση Θέτουμε. Για μέχρι κάνε: Υπολογίσε Βάλε Βάλε Επέστρεψε. 17

21 ΚΕΦΑΛΑΙΟ 2: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ 2.1 ΕΙΣΑΓΩΓΗ Στο συγκεκριμένο κεφάλαιο θα αναφερθούμε σε ιστορικά στοιχεία αναφορικά με την κρυπτογραφία ενώ θα δούμε και κάποια σύγχρονα συστήματα. Εν συνεχεία θα δώσουμε κάποιους γενικούς ορισμούς για την κρυπτογραφία και τις ψηφιακές υπογραφές. Θα μελετήσουμε γενικούς τρόπους επίθεσης σε κρυπτοσυστήματα και ψηφιακές υπογραφές. Επιπλέον θα πούμε γενικά στοιχεία για τις συναρτήσεις κατακερματισμου και το πρόβλημα του διακριτού λογαρίθμου. Θα ορίσουμε τα σημαντικότερα ασύμμετρα κρυπτοσυστήματα και τις αντίστοιχες ψηφιακές υπογραφές και θα αναφερθούμε σε κάποιες γνωστές επιθέσεις. Αναλυτικότερα θα αναφερθούμε στο κρυπτοσύστημα και στην ψηφιακή υπογραφή RSA[34], στο κρυπτοσύστημα και στην ψηφιακή υπογραφή Rabin [32], [33], στο κρυπτοσύστημα και στην ψηφιακή υπογραφή ElGamal [8] και τέλος στην ψηφιακή υπογραφή DSA-ECDSA [11]. 2.2 ΙΣΤΟΡΙΚΑ ΣΤΟΙΧΕΙΑ Παρακάτω αναφέρονται μερικά ιστορικά στοιχεία σχετικά με την ιστορία της κρυπτογραφίας [16], [17]. Από το 1900 π.χ οι Αιγύπτιοι χρησιμοποιούσαν ιερογλυφικά σε διαφορετική μορφή από την συνηθισμένη για να αποκρυφτεί το περιεχόμενο από αγνώστους. Οι Έλληνες χρησιμοποίησαν μια τεχνική που αποτελούνταν από μια ταινία και ένα κύλινδρο για να προστατέψουν μηνύματα από μη επιθυμητούς χρήστες. Οι Ρωμαίοι χρησιμοποιούσαν μα τεχνική που ονομάζεται Κρυπτοσύστημα του Καίσαρα (Caesar Shift Cipher). Κρυπτοσύστημα του Καίσαρα: εδώ μετατοπίζουμε τα γράμματα του αρχικού κειμένου που θέλουμε να στείλουμε κατά μία θέση v στο αντίστοιχο αλφάβητο. Για παράδειγμα αν θέλουμε να στείλουμε το μήνυμα καλημέρα σε κάποιον αν μετατοπίσουμε κάθε γράμμα κατά μία συγκεκριμένη θέση (εδώ τρεις θέσεις στα δεξιά) λαμβάνουμε το κρυπτογραφημένο μήνυμα νδξκοθυδ. Κρυπτοσύστημα αντικατάστασης: το συγκεκριμένο μοιάζει λίγο με το προηγούμενο κρυπτοσύστημα με την διαφορά ότι εδώ κάθε γράμμα το αντιστοιχίζουμε με ένα άλλο τυχαίο και διαφορετικό από όλα τα υπόλοιπα γράμματα. Δηλαδή κάθε α το αντικαταστούμε με λ, κάθε β με το ν κ.α. Επίσης γνωστά είναι, το κρυπτοσύστημα Playfair (το 1854 από τον Charles Wheatstone) και το κρυπτοσύστημα Vigenere (το 1553 από τον Giovan Batista Belaso). Από το η μηχανή Enigma χρησιμοποιήθηκε από τους Γερμανούς για κρυπτογράφηση μηνυμάτων. Ο Άλαν Τουρινγκ και άλλοι κατάφεραν να αποκωδικοποιήσουν την παραπάνω μηχανή. Το 1976 η IBM δημιούργησε τον DES για τις ΗΠΑ, τον πρώτο σύχρονο συμμετρικό αλγόριθμο τμήματος. Το 1976 οι Whitfield Diffie και Martin Hellman ανακάλυψαν την κρυπτογραφία δημοσίου κλειδιού. Η εργασία τους έλυσε και το πρόβλημα ανταλλαγής κλειδιού και εισήγαγαν την έννοια της συνάρτησης καταπακτής. Η πρώτη υλοποίηση μιας τέτοιας συνάρτησης ήταν το συστημα RSA. 18

22 2.3 ΟΡΙΣΜΟΙ Παρακάτω δίνονται κάποιο βασικοί ορισμοί στον κλάδο της κρυπτογραφίας [25], [30], [37], [38]. Ορισμός 10: Κρυπτογραφία ορίζεται ως το επιστημονικό πεδίο που ασχολείται με την μετατροπή των πληροφοριών(κωδικοποίηση των μηνυμάτων), με στόχο να διασφαλιστεί η ασφάλεια των πληροφοριών από μη εξουσιoδοτημένους χρήστες. Ορισμό 11: Αρχικό κείμενο (plaintext-cleartext) είναι το αρχικό μήνυμα το οποίο σκοπεύουμε να κρυπτογραφήσουμε. Ορισμός 12: Κρυπτογραφημένο κείμενο ή κρυπτογράφημα (ciphertext) ονομάζουμε το κρυπτογραφημένο μήνυμα (το αλλαγμένο μήνυμα). Ορισμός 13: Κρυπτογράφηση (encryption) είναι η διαδικασία της μετατροπής του αρχικού μηνύματος σε κρυπτογραφημένο μήνυμα. Ορισμός 14: Αποκρυπτογράφηση (decryption) είναι η αντίστροφη διαδικασία από την κρυπτογράφηση και αναφέρεται στην μετατροπή του κρυπτογραφήματος στο αρχικό κείμενο. Εικόνα 8: Κρυπτογράφηση και αποκρυπτογράφηση ενός μηνύματος Ορισμός 15: Ο αλγόριθμος κρυπτογράφησης (encryption algorithm) είναι η διαδικασία που κωδικοποιεί και αποκωδικοποιεί την πληροφορία. Ορισμός 16: Κρυπτογραφικό κλειδί είναι μια συμβολοσειρά που χρησιμοποιείται για κρυπτογράφηση και αποκρυπτογράφηση κάποιου μηνύματος. Μπορεί να είναι είτε δημόσιο είτε ιδιωτικό. Ορισμός 17: Κρυπτανάλυση (cryptanalysis) αναφέρεται στην διαδικασία της παραβίασης ενός κρυπτογραφήματος χωρίς να γνωρίζουμε το κλειδί της αποκρυπτογράφησης και έτσι επιτύχουμε να βρούμε το αρχικό μήνυμα. Ορισμός 18: Κρυπτολογία είναι ο επιστημονικός κλάδος που ασχολείται με την δημιουργία νέων κρυπτογραφικών τεχνικών καθώς και με την μελέτη της διαδικασίας παραβίασης αυτών. Οι αλγόριθμοι κρυπτογράφησης χωρίζονται στις παρακάτω δύο κατηγορίες: στους συμμετρικούς (symmetric) ή ιδιωτικού κλειδιού (private key) στους ασύμμετρους (asymmetric) ή δημόσιου κλειδιού (public key) Ορισμός 19: Συμμετρικοί κρυπτογραφικοί αλγόριθμοι είναι αυτοί που χρησιμοποιούν το ίδιο κλειδί (ιδιωτικό κλειδί) για την κρυπτογράφηση και την αποκρυπτογράφηση των δεδομένων. Το κλειδί αυτό είναι μυστικό και είναι γνωστό μόνο στους εξουσιοδοτημένους χρήστες. Θα πρέπει λοιπόν πριν γίνει η κρυπτογράφηση με κάποιο τρόπο να συμφωνηθεί ποιο θα είναι το κλειδί και να μεταδοθεί μέσω κάποιου ασφαλούς καναλιού επικοινωνίας ή να γίνει με την φυσική παρουσία των εμπλεκομένων. Η ασφαλής μετάδοση του μυστικού κλειδιού είναι το μεγαλύτερο πρόβλημα των συμμετρικών αλγορίθμων κρυπτογράφησης. Οι συμμετρικοί αλγόριθμοι χωρίζονται σε δύο κατηγορίες: 19

23 τους αλγορίθμους τμήματος (block ciphers), τους αλγορίθμους ροής (stream ciphers) Στους αλγορίθμους τμήματος κρυπτογραφείται μια ολόκληρη ομάδα από bits και όχι κάθε bit ξεχωριστά. Από τους σημαντικότερους αλγορίθμους αυτής τη κατηγορίας είναι o DES (και οι παραλλαγές του: ο triple-des, ο DESX, o S-DES), o IDEA, o RC5, o AES, o Blowfish κ.α. Στους αλγορίθμους ροής κρυπτογραφείται ένα bit την φορά. Μερικοί αλγόριθμοι ροής είναι ο Grain (από τους Martin Hell, Thomas Johansson και Willi Meier το 1994), ο ISSAC (από τον Robert J.Jenkins Jr. Το 1996), o Rabbit (από τους Martin Boesgaard, Mette Vesterager, Thomas Pedersen, Jesper Christiansen και Ove Scavenius το 2003), ο XOR, o one-time pad (OTP) και ο RC4. Ορισμός 20: Ασύμμετροι κρυπτογραφικοί αλγόριθμοι είναι αυτοί στους οποίους χρησιμοποιείται ένα κλειδί (δημόσιο κλειδί) για κρυπτογράφηση του μηνύματος και ένα άλλο κλειδί (ιδιωτικό κλειδί) για την αποκρυπτογράφηση του μηνύματος. Ανάμεσα στα δύο κλειδιά υπάρχει κάποια σύνδεση αλλά η γνώση του ενός (του δημοσίου) δεν μπορεί να οδηγήσει στο άλλο (ιδιωτικό). Έτσι εάν κάποιος κρυπτογραφήσει ένα μήνυμα με το δημόσιο κλειδί, θα πρέπει να γνωρίζει και να χρησιμοποιήσει το ιδιωτικό κλειδί για να καταφέρει να αποκρυπτογραφήσει το μήνυμα. Στις επόμενες ενότητες του κεφαλαίου αυτού παρουσιάζουμε μερικούς από αυτούς τους αλγορίθμους. Ορισμός 21: Ψηφιακή υπογραφή είναι μια μαθηματική τεχνική που χρησιμοποιείται για να πιστοποιήσει την αυθεντικότητα και την ακεραιότητα ενός μηνύματος, μια ηλεκτρονικής συναλλαγής και του λογισμικού (software). Έστω ότι ο Α στέλνει ένα υπογεγραμμένο μήνυμα στον Β. Ο Β θα πρέπει να μπορεί να πιστοποιεί ότι το μήνυμα είναι από τον Α, καθώς επίσης θα πρέπει να είναι αδύνατο κάποιος τρίτος να πλαστογραφήσει την υπογραφή του Α. Στις επόμενες ενότητες του κεφαλαίου αυτού παρουσιάζουμε κάποιες ψηφιακές υπογραφές. Ορισμός 22: Μονόδρομες συναρτήσεις Hash(one-way hash functions): Οι συναρτήσεις hash είναι ένας μετασχηματισμός όπου παίρνει ένα μήνυμα m οποιουδήποτε μήκους και το μετασχηματίζει σε ένα m^' το οποίο έχει συγκεκριμένο μήκος. Η διαδικασία του να υπολογίσουμαι από το m το m^' είναι εύκολη, αλλά η αντίστροφη διαδικασία είναι πολύ δύσκολη. Επιπλέον για το ίδιο μήνυμα m, μια δεδομένη συνάρτηση hash θα παράγει πάντα το ίδιο m^'. Ενώ διαφορετικά μηνύματα m έχουν και διαφορετικές τιμές hash. Δηλαδή έστω x, και εφαρμόζουμε μια συνάρτηση κατακερματισμού τότε μπορούμε εύκολα να υπολογίσουμε την f(x). Αν όμως έχουμε την f(x) τότε είναι δύσκολο να την αντιστρέψουμε και να βρούμε το x. Υπάρχουν δύο κατηγορίες αλγορίθμων με συναρτήσεις κατακερματισμού. Κώδικας ανίχνευσης τροποποίησης (MDC-Modification Detection Code): συναρτήσεις κατακερματισμού χωρίς κλειδί. Κώδικας αυθεντικοποίησης μηνύματος (MAC-Message Authentication Codes): συναρτήσεις κατακερματισμού με χρήση κάποιου μυστικού κλειδιού. Οι συναρτήσεις hash χρησιμοποιούνται σε αρκετά κρυπτοσυστήματα και ψηφιακές υπογραφές. Από τις ποιο γνωστές συναρτήσεις hash είναι ο MD2 (αναπτύχθηκε από τον Rivest το 1989), ο MD4 (αναπτύχθηκε από τον Rivest το 1990), o MD5 (αναπτύχθηκε από τον Rivest το 1991) και οι SHA και SHA-1 (και οι δύο αναπτύχθηκαν από την Εθνική Υπηρεσία Ασφάλειας των ΗΠΑ). 20

24 2.4 ΠΡΟΒΛΗΜΑ ΔΙΑΚΡΙΤΟΥ ΛΟΓΑΡΙΘΜΟΥ Ορισμός 23: Έστω μια κυκλική ομάδα τάξης και ένας γεννήτορας της. Για οποιαδήποτε στοιχείο της ομάδας G, ο διακριτός λογάριθμος του στην βάση είναι ο μοναδικός ακέραιος,, για τον οποίο. Παρακάτω δίνεται ο ορισμός του προβλήματος του διακριτού λογαρίθμου [25]. Ορισμός 24: Δοθέντος ενός πρώτου p, ενός γεννήτορα α του και ενός στοιχείου b του, να βρεθεί ακέραιος x, για τον οποίο,. Παρακάτω δίνεται ο ορισμός του γενικευμένου προβλήματος του διακριτού λογαρίθμου. Ορισμός 25: Έστω μια πεπερασμένη κυκλική ομάδα τάξης n, ένας γεννήτορας α της και ένα τυχαίο στοιχείο, να βρεθεί ακέραιος x,, τέτοιος ώστε. 2.5 ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΣΕ ΚΡΥΠΤΟΣΥΣΤΗΜΑΤΑ Ο επιτιθέμενος προσπαθεί είτε να αποκαλύψει το αρχικό κείμενο είτε να βρει το κλειδί εάν αναφερόμαστε σε κρυπτοσυστήματα [25], [38]. Η παραπάνω διαδικασία όπως αναφέραμε και προηγουμένως ονομάζεται κρυπτανάλυση. Κάποιες από τις βασικότερες κρυπταναλυτικές επιθέσεις είναι οι παρακάτω: Ciphertext-only attack: ο επιτιθέμενος έχει στην κατοχή του ένα ή περισσότερα κρυπτογραφημένα μηνύματα και προσπαθεί να ανακτήσει το αρχικό μήνυμα ή να βρει το κλειδί κρυπτογράφησης που χρησιμοποιήθηκε Known-plaintext attack: ο επιτιθέμενος έχει στην κατοχή του ένα ή περισσότερα κρυπτογραφημένα μηνύματα καθώς και τα αντίστοιχα αρχικά μηνύματα (πριν την κρυπτογράφηση) και προσπαθεί να βρει το κλειδί που χρησιμοποιήθηκε Chosen-plaintext attack: ο επιτιθέμενος έχει στην κατοχή του ένα επιλεγμένο τμήμα του αρχικού κειμένου σε συνδυασμό με το κρυπτογράφημα που παράγεται από το μυστικό κλειδί Man-in-the-middle-attack: ο επιτιθέμενος με κάποιο τρόπο εγκαθίσταται ανάμεσα στην επικοινωνία μεταξύ δύο ατόμων που ανταλλάσουν κλειδιά. Έτσι μπορεί να ανταλλάξει με κάθε άτομο διαφορετικό κλειδί. Τα άτομα που επικοινωνούν μεταξύ τους χρησιμοποιούν κλειδιά τα οποία είναι γνωστά στον επιτιθέμενο. Τα δύο άτομα νομίζουν ότι επικοινωνούν με ασφάλεια αλλά στην πραγματικότητα ο επιτιθέμενος γνωρίζει τα μηνύματα που αποστέλλονται και μπορεί να παρακολουθεί την διαδικασία και αν θέλει, να την τροποποιεί Όπως φαίνεται και στην Εικόνα 9 παρακάτω, ο Α στέλνει στον Β ένα κλειδί x, το οποίο όμως δεν φτάνει στον Β, αλλά το υποκλέπτει ο Ε, το αλλάζει και στέλνει στον Β το x. Ο Β παίρνει το x και στέλνει στον Α το y, το οποίο δεν φτάνει ποτέ στον Α, αφού το υποκλέπτει ο Ε, ο οποίος το αλλάζει και στέλνει στον Α το y. Ο Α και ο Β δεν γνωρίζουν ότι έχουν αλλαγμένα κλειδιά ούτε ότι ο Ε μπορεί να παρακολουθεί την συνομιλία τους, αφού γνωρίζει τα κλειδιά τους. 21

25 Α Β Αποστολή κλειδιού στον Α Αποστολή κλειδιού στον Β Ε Εικόνα 9: Man in the middle attack ΤΥΠΟΙ ΕΠΙΘΕΣΕΩΝ ΣΕ ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ Στις ψηφιακές υπογραφές ο επιτιθέμενος στοχεύει στην πλαστογράφηση μια ψηφιακής υπογραφής, δηλαδή να δημιουργήσει δικές του υπογραφές που θα γίνονται δεκτές ως έγκυρες [25]. Οι βασικότεροι τύποι επιθέσεων σε ψηφιακές υπογραφές είναι: Key-only attack: ο επιτιθέμενος γνωρίζει μόνο το δημόσιο κλειδί του υπογράφοντα. Message attack: ο επιτιθέμενος γνωρίζει κάποια τυχαία ή επιλεγμένα ζεύγη υπογραφών και αντίστοιχων μηνυμάτων. Χωρίζεται στις παρακάτω υποκατηγορίες: - 1-known-message attack: Ο επιτιθέμενος γνωρίζει έναν αριθμό μηνυμάτων με τις αντίστοιχες υπογραφές τους, τα οποία όμως δεν τα επέλεξε αυτός. - 2-chosen-message attack: Ο επιτιθέμενος αποκτά κάποιες υπογραφές από ένα σύνολο επιλεγμένων μηνυμάτων πριν προσπαθήσει να σπάσει την υπογραφή (εξαιτίας αυτού του χαρακτηριστικού χαρακτηρίζεται σαν μη-προσαρμόσιμη (non-adaptive). - 3-adaptive chosen-message attack: Ο επιτιθέμενος ζητά υπογραφές μηνυμάτων που σχετίζονται με το δημόσιο κλειδί της υπογραφής ενώ ζητά υπογραφές μηνυμάτων που να έχουν κάποια σχέση με προηγούμενες υπογραφές ή μηνύματα Το σπάσιμο μιας ψηφιακής υπογραφής χωρίζεται στις παρακάτω κατηγορίες: Ολικό σπάσιμο (total break): Ο επιτιθέμενος καταφέρνει με κάποιο τρόπο να υπολογίσει το ιδιωτικό κλειδί και πλέον μπορεί δημιουργήσει έγκυρα υπογεγραμμένα μηνύματα Επιλεκτική πλαστογράφηση (selective forgery): Ο επιτιθέμενος καταφέρνει να δημιουργήσει έγκυρες ψηφιακές υπογραφές για ένα ή περισσότερα επιλεγμένα μηνύματα 22

26 Υπαρκτή πλαστογράφηση (existential forgery): επιτιθέμενος καταφέρνει να πλαστογραφήσει μια υπογραφή για ένα τουλάχιστον μήνυμα 2.6 RSA Ο RSA είναι ο πρώτος αλγόριθμος κρυπτογράφησης δημόσιου κλειδιού (ασύμμετρης κρυπτογράφησης) που αναπτύχθηκε από τους Ron Rivest, Adi Shamir και Leonard Adleman το 1978 [25], [30], [34], [37]. Το όνομά του προέρχεται από τα αρχικά των ονομάτων των δημιουργών του (Rivest, Shamir, Adleman). Εκτός από την κρυπτογράφηση μηνυμάτων μπορεί επίσης να χρησιμοποιηθεί και ως ψηφιακή υπογραφή. Ο αλγόριθμος RSA χρησιμοποιεί δύο κρυπτογραφικά κλειδιά, το δημόσιο που κρυπτογραφεί το μήνυμα και το ιδιωτικό που αποκρυπτογραφεί το μήνυμα. Στις ψηφιακές υπογραφές, χρησιμοποιούμρε το ιδιωτικό κλείδι για να υπογράψουμε και το δημόσιο για επαλήθευση. Η ασφάλεια του αλγορίθμου RSA βασίζεται στην δυσκολία εύρεσης e-οστών ριζών modn, όταν δεν γνωρίζουμε την παραγοντοποίση του n RSA ΚΡΥΠΤΟΣΥΣΤΗΜΑ Διαδικασία δημιουργίας των κλειδιών Παρακάτω δημιουργούνται δύο κλειδιά. Ένα δημόσιο και ένα ιδιωτικό κλειδί. Έστω A μια οντότητα. Η διαδικασία δημιουργίας των κλειδιών είναι η ακόλουθη: Αρχικά ο επιλέγει δύο μεγάλους πρώτους αριθμούς (π.χ 1024 bits) p και q τέτοιοι ώστε. Οι αριθμοί αυτοί κρατούνται μυστικοί Στην συνέχεια ο υπολογίζει το Ο Α υπολογίζει το γινόμενο (συνάρτηση Euler) το οποίο παραμένει μυστικό, Επιλέγει ένα τυχαίο ακέραιο e ( ) τέτοιο ώστε. Τέλος ο υπολογίζει τον μοναδικό ακέραιο d με ο οποίος προκύπτει από. Το δημόσιο κλειδί (είναι γνωστό σε όλους) αποτελείται από το ζεύγος (n,e). Το ιδιωτικό κλειδί (είναι γνωστό στην οντότητα ) αποτελείται από το ζεύγος (n,d). Διαδικασία κρυπτογράφησης ενός μηνύματος Παρακάτω περιγράφεται η διαδικασία που πρέπει να ακολουθήσει μια οντότητα Β, για να κρυπτογραφήσει ένα μήνυμα με την χρήση του RSA. Έστω m είναι το μήνυμα προς κρυπτογράφηση. Για να κρυπτογραφήσει η οντότητα το μήνυμα θα πρέπει να χρησιμοποιήσει το δημόσιο κλειδί (n,e)που δημιούργησε προηγουμένως η οντότητα. Πρέπει να υπολογιστεί το, όπου το c είναι το κρυπτογραφημένο μήνυμα που θα στείλει ο στον. Διαδικασία αποκρυπτογράφησης ενός μηνύματος 23

27 Παρακάτω περιγράφεται η διαδικασία που πρέπει να ακολουθήσει μια οντότητα το μήνυμα c που υπολόγισε και έστειλε πριν η οντότητα. για να αποκρυπτογραφήσει Ο για να αποκρυπτογραφήσει το μήνυμα c που έλαβε, θα χρησιμοποιήσει το ιδιωτικό του κλειδί (n,d). Πρέπει να υπολογίσει το. Ο προηγούμενος τρόπος κρυπτογράφησης ενός μηνύματος δεν είναι ασφαλής. Πολλές φορες ονομάζεται textbook RSA RSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ Εκτός από ανταλλαγή μηνυμάτων ο RSA επιτρέπει και την ψηφιακή υπογραφή μηνυμάτων. Παρακάτω παρουσιάζεται η διαδικασία δημιουργίας κλειδιών καθώς και ο τρόπος λειτουργίας της ψηφιακής υπογραφής RSA. Έστω ότι έχουμε δύο οντότητες και που επικοινωνούν και εφαρμόζουν την RSA ψηφιακή υπογραφή για να υπογράψουν τα μηνύματά τους. Διαδικασία δημιουργίας των κλειδιών Παρακάτω δημιουργούνται δύο κλειδιά, ένα δημόσιο και ένα ιδιωτικό κλειδί. Η οντότητα πραγματοποιεί την ακόλουθη διαδικασία (η διαδικασία είναι η ίδια μ'αυτήν που περιγράφηκε παραπάνω για το κρυπτοσύστημα RSA): Αρχικά ο επιλέγει δύο μεγάλους πρώτους αριθμούς (π.χ 1024 bits) p και q τέτοιοι ώστε. Οι αριθμοί αυτοί κρατούνται μυστικοί. Στην συνέχεια ο υπολογίζει το. Ο Α υπολογίζει το γινόμενο (συνάρτηση Euler)το οποίο παραμένει μυστικό,. Επιλέγει ένα τυχαίο ακέραιο e ( ) τέτοιο ώστε. Τέλος ο υπολογίζει τον μοναδικό αριθμό d, ο οποίος προκύπτει από. Το δημόσιο κλειδί (είναι γνωστό σε όλους) αποτελείται από το ζεύγος (n,e). Το ιδιωτικό κλειδί (είναι γνωστό στην οντότητα ) αποτελείται από το ζεύγος (n,d). Διαδικασία υπογραφής ενός μηνύματος Έστω ότι η οντότητα θέλει να υπογράψει το μήνυμα m που θα στείλει στην οντότητα. Η διαδικασία για να υπογράψει ο το μήνυμα είναι η ακόλουθη: Για το πρέπει να ισχύει. Ο υπολογίζει το με την χρήση του ιδιωτικού κλειδιού d. Το s είναι η υπογραφή του για το μήνυμα m. 24

28 Διαδικασία πιστοποίησης της υπογραφής Για να πιστοποιήσει η οντότητα ότι η υπογραφή s είναι της οντότητας και για να ανακτήσει το μήνυμα, θα χρησιμοποιήσει το δημόσιο κλειδί (n,e) του. Η διαδικασία της επαλήθευσης είναι η παρακάτω: Θα πρέπει να χρησιμοποιήσει το δημόσιο κλειδί της οντότητας Α, το κλειδί (n,e), για να υπολογίσει το. Στην πράξη για λόγους περαιτέρω ασφάλειας χρησιμοποιείται μια συνάρτηση hash στο μήνυμα υπογράφεται το hash του μηνύματος και όχι το ίδιο το μήνυμα. και 2.7 RABIN Προτάθηκε το 1979 από τον Michael O. Rabin [13], [25], [32], [33] και ανήκει στην κατηγορία των ασύμμετρων κρυπτοσυστημάτων. Η ασφάλεια του έγκειται στη δυσκoλία παραγοντοποίησης μεγάλων ακέραιων αριθμών RABIN ΚΡΥΠΤΟΣΥΣΤΗΜΑ Έστω ότι μια οντότητα Α θέλει να κρυπτογραφήσει ένα μήνυμα με αλγόριθμο του Rabin και να το στείλει σε μια οντότητα Β. Παρακάτω περιγράφεται η συγκεκριμένη διαδικασία. Διαδικασία δημιουργίας κλειδιών Δημιουργούνται δύο κλειδιά ένα δημόσιο και ένα ιδιωτικό κλειδί. Η διαδικασία που ακολουθεί μια οντότητα Α για την δημιουργία κλειδιών είναι: Αρχικά επιλέγει δύο τυχαίους πολύ μεγάλους πρώτους αριθμούς με αλλά περίπου του ίδιου μήκους (αν ισχύει διευκολύνονται οι υπολογισμοί). Στη συνέχεια υπολογίζει το n όπου. Το δημόσιο κλειδί του είναι το n και το ιδιωτικό το ζεύγος. Διαδικασία κρυπτογράφησης ενός μηνύματος Η διαδικασία που ακολουθεί η οντότητα είναι η ακόλουθη: για να κρυπτογραφήσει το μήνυμα m που θα στείλει στην οντότητα Η οντότητα χρησιμοποιεί το δημόσιο κλειδί n που έλαβε από την οντότητα. Στη συνέχεια αναπαριστά το μήνυμα σαν έναν ακέραιο αριθμό, Υπολογίζει το. Στην συνέχεια το κρυπτογραφημένο μήνυμα c στέλνεται στην οντότητα Α. Διαδικασία αποκρυπτογράφησης του μηνύματος Η οντότητα θα χρησιμοποιήσει το ιδιωτικό κλειδί (p,q) για να αποκρυπτογραφήσει το μήνυμα c που υπολογίστηκε και έστειλε πριν η οντότητα. Η διαδικασία που ακολουθεί η οντότητα για να αποκρυπτογραφήσει το μήνυμα είναι η ακόλουθη: Για να βρει το αρχικό μήνυμα m από το η οντότητα υπολογίζει το 25

29 Υπάρχουν 4 δυνατές ρίζες-λύσεις για τις πιθανές τιμές του. Το μήνυμα ισούται με μία από αυτές τις λύσεις (θα πρέπει να γίνει χρήση του κινέζικου θεωρήματος). Εάν πάρουμε απλοποιείται η διαδικασία και υπάρχει ένας τρόπος για εύκολο υπολογισμό. Εδώ χρησιμοποιήσαμε το κριτήριο Euler για να υπολογίσουμε ότι. Ως εκ τούτου οι δύο τετραγωνικές ρίζες του είναι. Παρόμοια οι δύο τετραγωνικές ρίζες του είναι. Μετά μπορούμε να πάρουμε τις τέσσερις τετραγωνικές ρίζες του c mod n χρησιμοποιώντας το κινέζικο θεώρημα ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ ΤΟΥ RABIN Μαζί με το κρυπτοσύστημα του ο Rabin το 1979 περιέγραψε και την αντίστοιχη ψηφιακή υπογραφή [35]. Διαδικασία δημιουργίας κλειδιών Για την παραγωγή των κλειδιών η οντότητα ακολουθεί την εξής διαδικασία: Αρχικά επιλέγει δύο τυχαίους (τουλάχιστον 1024-bits) πρώτους αριθμούς Στη συνέχεια υπολογίζει το n όπου. Το δημόσιο κλειδί του είναι το και τo ιδιωτικό το ζεύγος,. Διαδικασία υπογραφής του μηνύματος Η διαδικασία που ακολουθεί η οντότητα για να υπογράψει ένα μήνυμα είναι: Επιλέγει ένα τυχαίο padding και υπολογίζει το Η(mU) (το Η είναι μία ασφαλής συνάρτηση κατακερματισμού) Στην συνέχεια υπολογίζει τις λύσεις της ισοτιμίας. Το ζεύγος (U,x) είναι η υπογραφή του μηνύματος,όπου είναι μία λύση της Διαδικασία πιστοποίησης της υπογραφής. Η οντότητα που θα λάβει το υπογεγραμμένο μήνυμα (m,u,x) για να ελέγξει εάν είναι γνήσια πρέπει να υπολογίσει και. Εάν ισχύει ) τότε το μήνυμα θεωρείται γνήσιο. 26

30 2.8 EL GAMAL Το κρυπτοσύστημα El Gamal βασίζεται στην δυσκολία εύρεσης του διακριτού λογάριθμου και περιγράφτηκε από τον Taher Elgamal το 1985 [8], [13], [36], [37]. Ανήκει στην κατηγορία της ασύμμετρης κρυπτογραφίας. Η ασφάλειά του στηρίζεται στην δυσκολία της πρακτικής επίλυσης του προβλήματος του διακριτού λογαρίθμου EL GAMAL ΚΡΥΠΤΟΣΥΣΤΗΜΑ Έστω ότι μια οντότητα Α θέλει να κρυπτογραφήσει ένα μήνυμα με αλγόριθμο του El Gamal και να το στείλει σε μια οντότητα Β. Παρακάτω περιγράφεται η συγκεκριμένη διαδικασία. Διαδικασία δημιουργίας των κλειδιών Δημιουργούνται δύο κλειδιά ένα δημόσιο και ένα ιδιωτικό κλειδί. Η διαδικασία που ακολουθεί μια οντότητα για την δημιουργία κλειδιών είναι: Επιλέγεται ένας πρώτος και τυχαίος αριθμός p και ένας γεννήτορας g της ομάδας. Στην συνέχεια επιλέγεται ένας φυσικός αριθμός, με και υπολογίζει το. Το δημόσιο κλειδί είναι το ( ) και το ιδιωτικό κλειδί είναι το. Διαδικασία κρυπτογράφησης ενός μηνύματος Έστω ότι η οντότητα Β θέλει να κρυπτογραφήσει ένα μήνυμα m. Θα το κάνει χρησιμοποιώντας το δημόσιο κλειδί του για να κρυπτογραφήσει το μήνυμα. Αναλυτικότερα: Παίρνει το δημόσιο κλειδί του, την τριπλέτα ( ). Μετασχηματίζει το μήνυμα m που θα στείλει, σε έναν ακέραιο που ανήκει στο διάστημα [0,p-1]. Επιλέγει έναν τυχαίο ακέραιο k, με. Τέλος υπολογίζει τα και και στέλνει στην οντότητα το κρυπτογραφημένο κείμενο Διαδικασία αποκρυπτογράφησης ενός μηνύματος Η οντότητα Α για να αποκρυπτογραφήσει το μήνυμα θα πρέπει να κάνει τα ακόλουθα: Να υπολογίσει την τιμή του. Τέλος βρίσκει το m υπολογίζοντας το EL GAMAL ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ Το 1984 ο Taher ElGamal περιέγραψε μια ψηφιακή υπογραφή η ασφάλεια της οποίας βασίζεται στο πρόβλημα του διακριτού λογάριθμου. Δεν είναι ιδιαίτερα δημοφιλής και για τον λόγο αυτό χρησιμοποιείται μια παραλλαγή της, η ψηφιακή υπογραφή DSA που περιγράφεται στην επόμενη ενότητα. 27

31 Παρακάτω περιγράφεται η ακριβής μεθοδολογία που ακολουθείται στην ψηφιακή υπογραφή El Gamal για την δημιουργία των κλειδιών, καθώς και η διαδικασία για την υπογραφή ενός μηνύματος και στην συνέχεια ο τρόπος επαλήθευσής της. Στις διαδικασίες που περιγράφονται συμμετέχουν δύο οντότητες, η και η. Διαδικασία δημιουργίας των κλειδιών Μια οντότητα θα ακολουθήσει την παρακάτω διαδικασία για να δημιουργήσει τα κλειδιά για την υπογραφή. Επιλέγεται ένας πρώτος και τυχαίος αριθμός p και ένας γεννήτορας g της ομάδας. Στην συνέχεια επιλέγεται ένας φυσικός αριθμός, με και υπολογίζει το.. Το δημόσιο κλειδί είναι το ( ) και το ιδιωτικό κλειδί είναι το. Διαδικασία υπογραφής ενός μηνύματος Για να υπογράψει η οντότητα ένα μήνυμα m πρέπει να κάνει την ακόλουθη διαδικασία: Αρχικά επιλέγεται ένας τυχαίος ακέραιος k, για τον οποίο πρέπει να ισχύει,. Υπολογίζεται το. Στην συνέχεια υπολογίζεται το το. H υπογραφή του είναι το ζεύγος Συνήθως χρησιμοποιείται αντί του μηνύματος το όπου είναι μια συνάρτηση κατακερματισμού. Διαδικασία πιστοποίησης της υπογραφής Μια οντότητα Β για να πιστοποιήσει ότι η υπογραφή ανήκει στην οντότητα πρέπει να κάνει τα ακόλουθα: Αρχικά παίρνει το δημόσιο κλειδί ( ) της οντότητας. Πιστοποιεί εάν ισχύει. Αν ισχύει τότε συνεχίζει την διαδικασία. Σε διαφορετική περίπτωση απορρίπτει την υπογραφή. Στην συνέχεια υπολογίζει, Στην συνέχεια υπολογίζει το. Τέλος εάν τότε δέχεται σαν αυθεντική την υπογραφή 2.9 DSA - ECDSA DSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ O Digital Signature Algorithm (αλγόριθμος ψηφιακής υπογραφής) (DSA) είναι μια αποτελεσματικότερη παραλλαγή της ψηφιακής υπογραφής του El Gamal και προτάθηκε το 1991 από τον David W. Kravitz, ο 28

32 οποιος ήταν πρώην υπάλληλος της NSA [11], [25], [37]. Παρακάτω αναλύονται τα βήματα που ακολουθούνται στην ψηφιακή υπογραφή DSA, όπως ορίζεται από το FIPS [5], για την δημιουργία των κλειδιών, καθώς και η διαδικασία για την υπογραφή ενός μηνύματος και στην συνέχεια ο τρόπος επαλήθευσης της υπογραφής. Στις διαδικασίες που περιγράφονται συμμετέχουν δύο οντότητες, η Α και η Β. Διαδικασία δημιουργίας κλειδιών Εικόνα 10: DSA Η διαδικασία που ακολουθεί μια οντότητα για την δημιουργία των κλειδιών είναι ο παρακάτω: Επιλέγεται ένας πρώτος αριθμός μεγέθους 160bits. Επιλέγεται ένα, με. Επιλέγεται ένας πρώτος αριθμός, με για το οποίο πρέπει να ισχύει ότι το διαιρεί το Έστω α ένας γεννήτορας του. Υπολογίζεται ο αριθμός. Επιλέγεται ένα τυχαίο a, τέτοιο ώστε. Υπολογίζεται ο. Το δημόσιο κλειδί αποτελείται από τα και το ιδιωτικό είναι το a. 29

33 Διαδικασία υπογραφής ενός μηνύματος Χρησιμοποιείται μια κρυπτογραφικά ασφαλής συνάρτηση κατακερματισμού, έστω h, FIPS [11] προτείνει την SHA-1 σαν συνάρτηση hash. Για την υπογραφή ενός μηνύματος m ακολουθείται η παρακάτω διαδικασία: Επιλέγεται ένας τυχαίος ακέραιος k τέτοιος ώστε να ισχύει 0<k<q. Υπολογίζει το. Υπολογίζει το. Υπολογίζει το. H υπογραφή είναι το Διαδικασία επαλήθευσης της υπογραφής Η οντότητα για να επαληθεύση την υπογραφή πρέπει να κάνει τα παρακάτω: Θα χρησιμοποιήσει το δημόσιο κλειδί Θα πρέπει να πιστοποιήσει ότι ισχύουν τα και. Αν δεν ισχύουν τότε η υπογραφή δεν θεωρείται έγκυρη. Υπολογίζεται το. Υπολογίζεται το. Υπολογίζεται το. Υπολογίζεται το. Θεωρείται έγκυρη η υπογραφή εάν ισχύουν ECDSA ΨΗΦΙΑΚΗ ΥΠΟΓΡΑΦΗ Παρακάτω παρουσιάζεται μια παραλλαγή της υπογραφής DSA, η Elliptic Curve Digital Signature Algorithm [11], [30] (ECDSA) (1998) η οποία είναι το ανάλογο της DSA στις ελλειπτικές καμπύλες. Διαδικασία δημιουργίας κλειδιών Μια οντότητα ακολουθεί την παρακάτω διαδικασία για να φτιάξει το δημόσιο το ιδιωτικό κλειδί: Το είναι μια ελλειπτική καμπύλη επί του και ένα σημείο της με τάξη πρώτο αριθμό, όπου πρώτος αριθμός. Η οντότητα επιλέγει το ιδιωτικό κλειδί της τυχαία, έναν τυχαίο αριθμό με τιμή στο διάστημα. Μετά υπολογίζει το. Το είναι το ιδιωτικό κλειδί και το είναι το δημόσιο κλειδί. Διαδικασία υπογραφής ενός μηνύματος Η οντότητα για να υπογράψει ένα μήνυμα m ακολουθεί την παρακάτω διαδικασία: 30

34 Αρχικά επιλέγεται ένας ψευδοτυχαίος ακέραιος με τιμή στο διάστημα. Στην συνέχεια υπολογίζει τα και, όπου το είναι ένας ακέραιος με τιμή εντός του διαστήματος. Εάν θα πρέπει να ξεκινήσει η διαδικασία από την αρχή. Μετά υπολογίζει το. Έστω ότι h είναι μια συνάρτηση hash, υπολογίζεται το. Εάν s=0 θα πρέπει να ξεκινήσει η διαδικασία από την αρχή. Η υπογραφή του μηνύματος m είναι το ζεύγος Διαδικασία επαλήθευσης της υπογραφής Για να πιστοποιήσει μια οντότητα την υπογραφή της οντότητας πρέπει να ακολουθήσει την παρακάτω διαδικασία: Αρχικά θα πρέπει να χρησιμοποιήσει το δημόσιο κλειδί της οντότητας. Να επαληθεύσει εάν όντως τα r,s είναι ακέραιοι και ανήκουν στο διάστημα Στην συνέχεια υπολογίζει τα και. Μετά υπολογίζει τα και. Εν συνεχεία υπολογίζει τα και Τέλος εάν τότε αποδέχεται την υπογραφή, διαφορετικά δεν την αποδέχεται DSA ECDSA ΕΠΙΘΕΣΕΙΣ Εκτός των επιθέσεων που αναφέρθηκαν στην ενότητα 2.1 κάποιες βασικές επιθέσεις στις ψηφιακές υπογραφές DSA και ECDSA είναι: Bleichenbacher βρήκε το 2001 [3] μια επίθεση στην DSA εκμεταλλευόμενος τις αδυναμίες της PRG που πρότεινε η NIST (FIPS ). Οι Nguyen και Shparlinski κάνοντας χρήση πλεγμάτων [29], [28]. 31

35 ΚΕΦΑΛΑΙΟ 3: ΥΛΟΠΟΙΗΣΗ ΤΗΣ ΕΠΙΘΕΣΗΣ ΣΤΟ SAGE 3.1 ΠΕΡΙΓΡΑΦΗ ΤΟΥ ΚΩΔΙΚΑ Το πρόγραμμα υλοποιήθηκε με το πρόγραμμα SAGE Notebook v.6.5. Το SageMath είναι ένα ανοιχτού κώδικα (open source) [18] μαθηματικό πρόγραμμα το οποίο καλύπτει αρκετούς τομείς των μαθηματικών (όπως είναι η γεωμετρία, η άλγεβρα, η θεωρία αριθμών, η κρυπτογραφία κ.α) και βασίζεται στην γλώσσα προγραμματισμού Python. Δημιουργός του είναι ο William Stein, ο οποίος είναι μαθηματικός στο πανεπιστήμιο της Ουάσιγκτον και η πρώτη έκδοση του SageMath εκδόθηκε τον Φεβρουάριο του 2004 [15], [18]. Η τελευταία έκδοση του προγράμματος που είναι διαθέσιμη αυτή την στιγμή είναι η έκδοση 6.6. Το πρόγραμμα που υλοποιήθηκε βασίζεται στο paper Lattice attacks on Digital Signature Schemes [14] και υλοποιεί την συγκεκριμένη επίθεση με πλέγματα στην ψηφιακή υπογραφή DSA. Η επίθεση αυτη μπορεί να εφαρμοστεί και στην ECDSA. Κάποιοι βασικοί παράμετροι που πρέπει να ληφθούν υπόψη για την κατανόηση του προγράμματος είναι οι παρακάτω: Ο επιτιθέμενος (αυτός που θέλει δηλαδή να βρει το ιδιωτικό κλειδί a της υπογραφής) γνωρίζει με κάποιο τρόπο(π.χ με υλοποίηση fault attack), κάποιο αριθμό bits τόσο του ιδιωτικού κλειδιού a, όσο και αρκετών εφήμερων κλειδιών k. Πρέπει να τονίσουμε ότι το ιδιωτικό κλειδί είναι το ίδιο για όλα τα μηνύματα ενώ τα εφήμερα κλειδιά είναι διαφορετικά. Ο αριθμός των bit που γνωρίζουμε είναι ο ίδιος τόσο για το ιδιωτικό όσο και για τα εφήμερα κλειδιά (δηλαδή αν ξέρουμε 5 bit του ιδιωτικού κλειδιού, 5 bit θα γνωρίζουμε και για όλα τα εφήμερα κλειδιά). Τέλος ο αριθμός των μηνυμάτων θα συμβολίζεται με msg και ο αριθμός των γνωστών bit με e (για να είμαστε ποιο ακριβείς το e<1, και για να βρούμε τα γνωστά bit αρκεί να κάνουμε 160 e, το 160 αναφέρεται στο μέγεθος των κλειδιών που είναι 160 bit). Επιπλέον τα bit που γνωρίζουμε, παίρνουμε ότι είναι τα LSB (Least Significant Bits) των μηνυμάτων (αναφερόμαστε τόσο στο ιδιωτικό κλειδί a όσο και για τα εφήμερα κλειδιά). Δηλαδή εκτός του ότι τα γνωστά bits είναι ίδια στον αριθμό μεταξύ των κλειδιών, βρίσκονται και στην ίδια θέση. Με κάποιες μικρές αλλαγές στο κώδικα που παρουσιάζεται μπορεί να εφαρμοστεί και για το MSB (Most Significant Bits), είτε για κάποια συνεχόμενα bits στο μέσο των κλειδιών. Με την επίθεση που εφαρμόζουμε προσπαθούμε να βρούμε τα εναπομείναντα άγνωστα bits του ιδιωτικού κλειδιού a. Παρακάτω αναλύεται τμηματικά το πρόγραμμα που υλοποιήθηκε και εφαρμόζει την συγκεκριμένη επίθεση. Στο παράρτημα Α υπάρχει ολόκληρος ο κώδικας του προγράμματος. 32

36 Εικόνα 11: Κώδικας 1ο κομμάτι Εδώ κάνουμε import τις απαραίτητες βιβλιοθήκες για το πρόγραμμα. Αρχικά κάνουμε import os καθώς χρησιμοποιούμε την urandom() για να δημιουργήσουμε τυχαίους αριθμούς. Κάνουμε import binascii καθώς θα χρησιμοποιήσουμε την binascii.b2a_hex() για την δεκαεξαδική αναπαράσταση ενός δυαδικού. Στην συνέχεια από την Crypto.Util.number κάνουμε import bytes_to_long η οποία μετατρέπει ένα byte string σε long ακέραιο. Από την sage.crypto.util κάνουμε import least_significant_bits η οποία επιστρέφει τα LSB. Στην συνέχεια από την Crypto.PublicKey κάνουμε import DSA καθώς χρησιμοποιούμε την συνάρτηση generate() για να κατασκευάσουμε κατάλληλα κλειδιά και παραμέτρους για την DSA. Τέλος από την Crypto.Random κάνουμε import random καθώς την χρησιμοποιούμε για την δημιουργία τυχαίων αριθμών. Εικόνα 12: Κώδικας 2ο κομμάτι Εδώ κατασκευάζουμε μια συνάρτηση για τον αλγόριθμο του Babai (Babai s nearest plane algorithm που περιγράφηκε στην ενότητα 2.10 [2], [12]). 33

37 Η συνάρτηση παίρνει σαν όρισμα τον πίνακα Μ και την λίστα target (ο πίνακας και η λίστα αναλύονται παρακάτω πως προέκυψαν και κατασκευάστηκαν). Στην συνέχεια με την συνάρτηση nrows() παίρνουμε τον αριθμό των γραμμών του πίνακα Μ. Στην συνέχεια κατασκευάζουμε ένα μηδενικό διάνυσμα w, με μηδενικά όσα και οι γραμμές του πίνακα που υπολογίσαμε πριν. Εφαρμόζουμε τον αλγόριθμο LLL (περιγράφηκε στην ενότητα 2.8 [23]) με εντολή LLL (, αυτό γίνεται με την ). Μετά σ αυτόν το πίνακα (δηλαδή μετά την εφαρμογή LLL) κάνουμε ορθογωνονοποιήση Gram Schmidt (ενότητα 2.7 κεφάλαιο [22]), με την εντολή gram_schmidt()[0]. Εν συνεχεία μετατρέπουμε την λίστα target σε διάνυσμα και το εκχωρούμε στο διάνυσμα w. Μετά επαναληπτικά για κάθε γραμμή του πίνακα κάνουμε την παρακάτω διαδικασία. Πρώτα κάνουμε, για να γίνει η παρακάτω διαδικασία από την τελευταία γραμμή του πίνακα προς την πρώτη (όπως ορίζει ο ψευδοκώδικας του αλγορίθμου του Babai). Υπολογίζουμε τα εσωτερικά γινόμενα (με χρήση της εντολής dot_product ) του διανύσματος w με την ορθοκανονικοποίηση Gram Schmidt της γραμμής i και το εκχωρούμε στην μεταβλητή a, καθώς και το εσωτερικό γινόμενο της ορθοκανονικοποίησης Gram Schmidt της γραμμής i με την ορθογωνονοποιήση Gram Schmidt της γραμμής i και τα εκχωρούμε στην μεταβλητή b. Μετά υπολογίζουμε το a. Στην συνέχεια στην λίστα Y[] βάζουμε σαν στοιχεία με την εντολή append() (η οποία προσθέτει ένα στοιχείο στο τέλος της κάθε λίστας) το στρογγυλοποιημένο κατά 0.5 ακέραιο μέρος του L πολλαπλασιασμένο με την i-οστή γραμμή του πίνακα Μ (μετά την εφαρμογή του LLL). Μετά κάνουμε την παρακάτω πράξη:. Τέλος η συνάρτηση του babai επιστρέφει το άθροισμα των στοιχείων της λίστας Y[]. Για να βρεθεί το άθροισμα των στοιχείων μιας λίστας χρησιμοποιείται η εντολή sum(). 34

38 Εικόνα 13: Κώδικας 3ο κομμάτι Απο εδώ μέχρι το τέλος της ανάλυσης του κώδικα, όλα περικλείονται μέσα σε μια συνάρτηση, η οποία καλεί κάποια στιγμή την συνάρτηση babai() που αναλύσαμε πριν. Την συνάρτηση αυτήν την ονομάζουμε smart() και παίρνει σαν όρισματα το e και το msg. Στην συνέχεια κατασκευάζουμε την συνάρτηση randfunc() με όρισμα το n. Η συγκεκριμένη συνάρτηση δημιουργεί τυχαίους αριθμούς, καθώς δέχεται έναν ακέραιο n και επιστρέφει ένα string από τυχαία δεδομένα n bytes. Η εντολή DSAkey=DSA.generate(int(1024), randfunc); δημιουργεί ένα νέο τυχαίο κλειδί DSA, παίρνει σαν όρισμα έναν ακέραιο (εδώ 1024bits, γενικά μεταξύ του και πολλαπλάσιο του 64) και καλεί και την συνάρτηση randfunc() που ορίσαμε προηγουμένως. Στην συνέχεια με την χρήση της DSAkey δημιουργούμε ένα p (1024 bits), το δημόσιο κλειδί gk (1024 bits), το ιδιωτικό κλειδί a (160 bits), τον γεννήτορα πεπερασμένου σώματος g (1024 bits) και το q (160 bits). Στην συνέχεια κατασκευάζουμε τα εφήμερα κλειδιά τα οποία θα έχουν πλήθος όσο είναι και το πλήθος των μηνυμάτων (δηλαδή msg). Έτσι με μια επανάληψη φτιάχνουμε όλα τα κλειδιά k που τα χειριζόμαστε σαν λίστα. Με την εντολή int(binascii.b2a_hex(os.urandom(20)),16) φτιάχνουμε τυχαία, 160 bit κλειδιά. Η urandom() είναι συνάρτηση του συστήματος και γι αυτό είναι αρκετά ασφαλής και γρήγορη, για αυτήν την τυχαία δημιουργία κλειδιών. Στην συνέχεια ελέγχουμε αν k1<q και με την εντολή append() (η οποία προσθέτει ένα στοιχείο στο τέλος της κάθε λίστας) προσθέτουμε τα k1 στην λίστα k[] με τα εφήμερα κλειδιά.με τις εντολές FF = FiniteField(p,"g1"); και g1=ff(g); oρίζουμε τo πεπερασμένo σώμα (finite field). 35

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

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτογραφία Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτοσυστήματα Δημοσίου κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Προτάθηκαν το 1976 Κάθε συμμετέχων στο

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ασύμμετρη Κρυπτογράφηση (Κρυπτογραφία Δημόσιου Κλειδιού) Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ψηφιακές Υπογραφές Ορίζονται πάνω σε μηνύματα και είναι αριθμοί που εξαρτώνται από κάποιο

Διαβάστε περισσότερα

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

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Lab 3 Η Aσύμμετρη Kρυπτογραφία ή Κρυπτογραφία Δημοσίου Κλειδιού χρησιμοποιεί δύο διαφορετικά κλειδιά για την κρυπτογράφηση και αποκρυπτογράφηση. Eπινοήθηκε στο τέλος της δεκαετίας

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Ιστορία Ασύμμετρης Κρυπτογραφίας Η αρχή έγινε το 1976 με την εργασία των Diffie-Hellman

Διαβάστε περισσότερα

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

Κρυπτογραφία. Κεφάλαιο 1 Γενική επισκόπηση Κρυπτογραφία Κεφάλαιο 1 Γενική επισκόπηση Ανασκόπηση ύλης Στόχοι της κρυπτογραφίας Ιστορικό Γενικά χαρακτηριστικά Κλασσική κρυπτογραφία Συμμετρικού κλειδιού (block ciphers stream ciphers) Δημοσίου κλειδιού

Διαβάστε περισσότερα

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

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 5: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές Κεφάλαιο 8 8.3.4 Τεχνικές Ασφάλειας Συμμετρική Κρυπτογράφηση Ασυμμετρική Κρυπτογράφηση Ψηφιακές Υπογραφές Σελ. 320-325 Γεώργιος Γιαννόπουλος ΠΕ19, ggiannop (at) sch.gr http://diktya-epal-g.ggia.info/ Creative

Διαβάστε περισσότερα

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

Αλγόριθµοι δηµόσιου κλειδιού Αλγόριθµοι δηµόσιου κλειδιού Αλγόριθµοι δηµόσιου κλειδιού Ηδιανοµή του κλειδιού είναι ο πιο αδύναµος κρίκος στα περισσότερα κρυπτογραφικά συστήµατα Diffie και Hellman, 1976 (Stanford Un.) πρότειναν ένα

Διαβάστε περισσότερα

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

Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές Εισαγωγή στην Κρυπτογραφία και τις Ψηφιακές Υπογραφές Βαγγέλης Φλώρος, BSc, MSc Τµήµα Πληροφορικής και Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήµιο Αθηνών Εν αρχή είναι... Η Πληροφορία - Αρχείο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Πρόλογος 1. 1 Μαθηµατικό υπόβαθρο 9 Πρόλογος 1 Μαθηµατικό υπόβαθρο 7 1 Μαθηµατικό υπόβαθρο 9 1.1 Η αριθµητική υπολοίπων.............. 10 1.2 Η πολυωνυµική αριθµητική............ 14 1.3 Θεωρία πεπερασµένων οµάδων και σωµάτων.... 17 1.4 Πράξεις

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Συνολικό Πλαίσιο Ασφάλεια ΠΕΣ Εμπιστευτικότητα Ακεραιότητα Πιστοποίηση Μη-αποποίηση Κρυπτογράφηση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια Περιεχόμενα Πλευρές Ασφάλειας Ιδιωτικό Απόρρητο Μέθοδος Μυστικού Κλειδιού (Συμμετρική Κρυπτογράφηση) Μέθοδος Δημόσιου Κλειδιού (Ασύμμετρη

Διαβάστε περισσότερα

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

Κεφάλαιο 21. Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κεφάλαιο 21 Κρυπτογραφία δημόσιου κλειδιού και πιστοποίηση ταυτότητας μηνυμάτων Κρυπτογράφηση δημόσιου κλειδιού RSA Αναπτύχθηκε το 1977 από τους Rivest, Shamir και Adleman στο MIT Ο πιο γνωστός και ευρέως

Διαβάστε περισσότερα

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

Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια ΣΤΟΧΟΙ ΚΕΦΑΛΑΙΟΥ Ορισµός τριών στόχων ασφάλειας - Εµπιστευτικότητα, ακεραιότητα και διαθεσιµότητα Επιθέσεις Υπηρεσίες και Τεχνικές

Διαβάστε περισσότερα

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

Αριθμοθεωρητικοί Αλγόριθμοι Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος

Διαβάστε περισσότερα

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

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Ασφάλεια Δεδομένων. Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής στην Επιστήμη των Υπολογιστών 2015-16 Ασφάλεια Δεδομένων http://www.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Οι απειλές Ένας κακόβουλος χρήστης Καταγράφει μηνύματα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Ψηφιακή Υπογραφή και Αυθεντικοποίηση Μηνύματος Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο

Διαβάστε περισσότερα

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

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 8 η. Βασίλης Στεφανής Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ Διάλεξη 8 η Βασίλης Στεφανής Περιεχόμενα Τι είναι κρυπτογραφία Ιστορική αναδρομή Αλγόριθμοι: Καίσαρα Μονοαλφαβιτικοί Vigenere Vernam Κρυπτογραφία σήμερα Κρυπτογραφία Σκοπός Αποστολέας

Διαβάστε περισσότερα

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

ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία ΕΠΛ 674: Εργαστήριο 1 Ασφάλεια Επικοινωνιακών Συστημάτων - Κρυπτογραφία Παύλος Αντωνίου Γραφείο: ΘΕΕ 02 B176 Εαρινό Εξάμηνο 2011 Department of Computer Science Ασφάλεια - Απειλές Ασφάλεια Γενικά (Ι) Τα

Διαβάστε περισσότερα

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

ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή 2. Θεωρία αριθμών Αλγεβρικές δομές  3. Οι κρυπταλγόριθμοι και οι ιδιότητές τους ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή... 1 1.1. Ορισμοί και ορολογία... 2 1.1.1. Συμμετρικά και ασύμμετρα κρυπτοσυστήματα... 4 1.1.2. Κρυπτογραφικές υπηρεσίες και πρωτόκολλα... 9 1.1.3. Αρχές μέτρησης κρυπτογραφικής

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Συναρτήσεις Κατακερματισμού και Πιστοποίηση Μηνύματος Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο

Διαβάστε περισσότερα

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

ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής. Συμμετρική Κρυπτογραφία ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής Συμμετρική Κρυπτογραφία Εισαγωγή Στην συνηθισμένη κρυπτογραφία, ο αποστολέας και ο παραλήπτης ενός μηνύματος γνωρίζουν και χρησιμοποιούν το ίδιο μυστικό κλειδί.

Διαβάστε περισσότερα

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

Εισαγωγή στην επιστήμη της Πληροφορικής και των. Aσφάλεια Εισαγωγή στην επιστήμη της Πληροφορικής και των Τηλεπικοινωνιών Aσφάλεια Περιεχόμενα Πλευρές Ασφάλειας Ιδιωτικό Απόρρητο Μέθοδος Μυστικού Κλειδιού (Συμμετρική Κρυπτογράφηση) Μέθοδος Δημόσιου Κλειδιού (Ασύμμετρη

Διαβάστε περισσότερα

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

KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ KΕΦΑΛΑΙΟ 5 ΨΗΦΙΑΚΕΣ ΥΠΟΓΡΑΦΕΣ 1 Γενικά Η ψηφιακή υπογραφή είναι µια µέθοδος ηλεκτρονικής υπογραφής όπου ο παραλήπτης ενός υπογεγραµµένου ηλεκτρονικού µηνύµατος µπορεί να διαπιστώσει τη γνησιότητα του,

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Εισαγωγή- Βασικές Έννοιες Διδάσκων : Δρ. Παρασκευάς Κίτσος diceslab.cied.teiwest.gr Επίκουρος Καθηγητής Εργαστήριο Σχεδίασης Ψηφιακών Ολοκληρωμένων Κυκλωμάτων

Διαβάστε περισσότερα

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ

Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ Ασφάλεια Τηλεπικοινωνιακών Συστημάτων ΣΤΑΥΡΟΣ Ν ΝΙΚΟΛΟΠΟΥΛΟΣ 03 ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΚΡΥΠΤΟΛΟΓΙΑ Περιγραφή μαθήματος Η Κρυπτολογία είναι κλάδος των Μαθηματικών, που ασχολείται με: Ανάλυση Λογικών Μαθηματικών

Διαβάστε περισσότερα

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

ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρήτης ΕΠΠ Εργαστήριο Ασφάλεια Πληροφοριακών Συστηµάτων ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΤΕΙ Κρητης Τµηµα Εφαρµοσµενης Πληροφορικης Και Πολυµεσων Fysarakis Konstantinos, PhD kfysarakis@staff.teicrete.gr Εισαγωγή

Διαβάστε περισσότερα

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

Οι απειλές. Απόρρητο επικοινωνίας. Αρχές ασφάλειας δεδομένων. Απόρρητο (privacy) Μέσω κρυπτογράφησης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής στην Επιστήμη των Υπολογιστών 2014-015 Ασφάλεια Δεδομένων http://www.ionio.gr/~mistral/tp/csintro/ Οι απειλές Ένας κακόβουλος χρήστης Καταγράφει μηνύματα που ανταλλάσσονται

Διαβάστε περισσότερα

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

El Gamal Αλγόριθμος. Κώστας Λιμνιώτης Κρυπτογραφία - Εργαστηριακό μάθημα 7 2 Κρυπτογραφία Εργαστηριακό μάθημα 7 (Αλγόριθμοι Δημοσίου Κλειδιού) α) El Gamal β) Diffie-Hellman αλγόριθμος για την ανταλλαγή συμμετρικού κλειδιού κρυπτογράφησης El Gamal Αλγόριθμος Παράμετροι συστήματος:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Ασφάλεια Πληροφοριακών Συστημάτων Ασφάλεια Πληροφοριακών Συστημάτων Κρυπτογραφία/Ψηφιακές Υπογραφές Διάλεξη 2η Δρ. Β. Βασιλειάδης Τμ. Διοίκησης Επιχειρήσεων, ΤΕΙ Δυτ. Ελλάδας Kρυπτανάλυση Προσπαθούμε να σπάσουμε τον κώδικα. Ξέρουμε το

Διαβάστε περισσότερα

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

1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών; 1. Τι είναι ακεραιότητα δεδομένων, με ποιους μηχανισμούς επιτυγχάνετε κ πότε θα χρησιμοποιούσατε τον καθένα εξ αυτών; Η ακεραιότητα δεδομένων(data integrity) Είναι η ιδιότητα που μας εξασφαλίζει ότι δεδομένα

Διαβάστε περισσότερα

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

Cryptography and Network Security Chapter 13. Fifth Edition by William Stallings Cryptography and Network Security Chapter 13 Fifth Edition by William Stallings Chapter 13 Digital Signatures To guard against the baneful influence exerted by strangers is therefore an elementary dictate

Διαβάστε περισσότερα

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

Πρόβληµα 2 (15 µονάδες) ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΕΦΑΡΜΟΓΕΣ, 2013-2014 ΔΙΔΑΣΚΩΝ: Ε. Μαρκάκης Πρόβληµα 1 (5 µονάδες) 2 η Σειρά Ασκήσεων Προθεσµία Παράδοσης: 19/1/2014 Υπολογίστε

Διαβάστε περισσότερα

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ. Δ Εξάμηνο ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο Εισαγωγή- Βασικές Έννοιες Διδάσκων : Δρ. Παρασκευάς Κίτσος Επίκουρος Καθηγητής e-mail: pkitsos@teimes.gr, pkitsos@ieee.org Αντίρριο 2015 1 ΤΙ ΕΙΝΑΙ Η ΚΡΥΠΤΟΛΟΓΙΑ?

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κρυπτοσύστημα RSA (Rivest, Shamir, Adlemann, 1977) Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Κρυπτογραφία Δημοσίου Κλειδιού Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Κρυπτοσύστημα

Διαβάστε περισσότερα

Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου

Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου Κρυπτογράφηση Αποκρυπτογράφηση Ερευνητική εργασία Β'1 1 ο Γενικό Λύκειο Ευόσμου 2013-2014 Project Ορισμοί Ιστορία Η αποκρυπτογράφηση στις μέρες μας Κρυπτογράφηση Αποκρυπτογράφηση Αποκρυπτογραφημένο-Κρυπτογραφημένο

Διαβάστε περισσότερα

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

Ηλεκτρονικό εμπόριο. HE 7 Τεχνολογίες ασφάλειας Ηλεκτρονικό εμπόριο HE 7 Τεχνολογίες ασφάλειας Πρόκληση ανάπτυξης ασφαλών συστημάτων Η υποδομή του διαδικτύου παρουσίαζε έλλειψη υπηρεσιών ασφάλειας καθώς η οικογένεια πρωτοκόλλων TCP/IP στην οποία στηρίζεται

Διαβάστε περισσότερα

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας

Κρυπ Κρ το υπ γραφία Κρυπ Κρ το υπ λογίας Διαχείριση και Ασφάλεια Τηλεπικοινωνιακών Συστημάτων Κρυπτογραφία Κρυπτογραφία Η Κρυπτογραφία (cryptography) είναι ένας κλάδος της επιστήμης της Κρυπτολογίας (cryptology), η οποία ασχολείται με την μελέτη

Διαβάστε περισσότερα

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

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Συμμετρικά κρυπτοσυστήματα Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ 1

Διαβάστε περισσότερα

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Τμήμα Τηλεπληροφορικής & Διοίκησης Κατάλογος Περιεχομένων ΕΙΣΑΓΩΓΉ ΣΤΟ CRYPTOOL... 3 DOWNLOADING CRYPTOOL... 3 ΜΗΧΑΝΙΣΜΟΊ ΚΑΙ ΑΛΓΌΡΙΘΜΟΙ ΚΡΥΠΤΟΓΡΑΦΊΑΣ ΣΤΟ CRYPTOOL...

Διαβάστε περισσότερα

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

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ) Ενότητα 6: ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ ΔΙΔΑΣΚΩΝ: ΚΩΝΣΤΑΝΤΙΝΟΣ ΧΕΙΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

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

ρ. Κ. Σ. Χειλάς, ίκτυα Η/Υ ΙΙΙ, Τ.Ε.Ι. Σερρών, 2007 Ψηφιακές υπογραφές Ψηφιακές υπογραφές Υπάρχει ανάγκη αντικατάστασης των χειρόγραφων υπογραφών µε ψηφιακές (ΨΥ) Αυτές πρέπει να διαθέτουν τα εξής χαρακτηριστικά: Ο παραλήπτης πρέπει να είναι σε θέση να

Διαβάστε περισσότερα

Κατάλογος Σχηµάτων. Κατάλογος Πινάκων. I Θεµέλια 27

Κατάλογος Σχηµάτων. Κατάλογος Πινάκων. I Θεµέλια 27 Κατάλογος Σχηµάτων Κατάλογος Πινάκων ix xv xx I Θεµέλια 27 1 Μαθηµατικά 29 1.1 Κριτήρια διαιρετότητας................ 30 1.2 Μέγιστος κοινός διαιρέτης και Ευκλείδειος αλγόριθµος 31 1.3 Πρώτοι αριθµοί....................

Διαβάστε περισσότερα

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

Κεφάλαιο 2. Κρυπτογραφικά εργαλεία Κεφάλαιο 2 Κρυπτογραφικά εργαλεία Συμμετρική κρυπτογράφηση Καθολικά αποδεκτή τεχνική που χρησιμοποιείται για τη διαφύλαξη της εμπιστευτικότητας δεδομένων τα οποία μεταδίδονται ή αποθηκεύονται Γνωστή και

Διαβάστε περισσότερα

Στοιχεία Κρυπτογραφίας

Στοιχεία Κρυπτογραφίας Κεφάλαιο 1 ο Στοιχεία Κρυπτογραφίας 1.1 Εισαγωγή Κρυπτογραφία (cryptography) είναι η μελέτη τεχνικών που βασίζονται σε μαθηματικά προβλήματα με δύσκολη επίλυση, με σκοπό την εξασφάλιση της α- σφάλειας

Διαβάστε περισσότερα

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

Threshold Cryptography Algorithms. Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους Threshold Cryptography Algorithms Εργασία στα πλαίσια του μαθήματος Τεχνολογίες Υπολογιστικού Νέφους Ορισμός Το σύστημα το οποίο τεμαχίζει ένα κλειδί k σε n τεμάχια έτσι ώστε οποιοσδήποτε συνδυασμός πλήθους

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Γενικά Μία μέθοδος κρυπτογραφίας δημοσίου κλειδιού Αντί για δακτύλιους της μορφής Z n χρησιμοποιεί ελλειπτικές καμπύλες ορισμένες σε πεπερασμένα σώματ

Γενικά Μία μέθοδος κρυπτογραφίας δημοσίου κλειδιού Αντί για δακτύλιους της μορφής Z n χρησιμοποιεί ελλειπτικές καμπύλες ορισμένες σε πεπερασμένα σώματ Γενικά Μία μέθοδος κρυπτογραφίας δημοσίου κλειδιού Αντί για δακτύλιους της μορφής Z n χρησιμοποιεί ελλειπτικές καμπύλες ορισμένες σε πεπερασμένα σώματα Βασίζεται στο πρόβλημα του διακριτού λογαρίθμου Αυξημένη

Διαβάστε περισσότερα

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

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΜΣ ΕΠΙΧΕΙΡΗΜΑΤΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΕΣ ΤΗΣ ΚΡΥΠΤΟΓΡΑΦΙΑΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΑΠΟΣΤΟΛΙΔΟΥ ΚΥΡΙΑΚΗ ΕΠΙΒΛΕΠΩΝ: ΜΠΙΣΜΠΑΣ ΑΝΤΩΝΙΟΣ, Καθηγητής

Διαβάστε περισσότερα

Συμμετρικά κρυπτοσυστήματα

Συμμετρικά κρυπτοσυστήματα Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Συμμετρικά κρυπτοσυστήματα Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Δίκτυα Feistel Σημαντικές

Διαβάστε περισσότερα

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

Πληροφορική Ι. Μάθημα 10 ο Ασφάλεια. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Δρ. Γκόγκος Χρήστος Οι διαφάνειες έχουν βασιστεί στο βιβλίο «Εισαγωγή στην επιστήμη των υπολογιστών» του B. Forouzanκαι Firoyz Mosharraf(2 η έκδοση-2010) Εκδόσεις Κλειδάριθμος Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου

Διαβάστε περισσότερα

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

Ασφάλεια Υπολογιστικών Συστηµάτων Ορισµοί Κρυπτογράφηση: η διεργασία µετασχηµατισµού ενός µηνύµατος µεταξύ ενός αποστολέα και ενός παραλήπτη σε µια ακατανόητη µορφή ώστε αυτό να µην είναι αναγνώσιµο από τρίτους Αποκρυπτογράφηση: η διεργασία

Διαβάστε περισσότερα

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

Κρυπτογραφία Δημοσίου Κλειδιού Στοιχεία Θεωρίας Αριθμών και Εφαρμογές στην Κρυπτογραφία Κρυπτογραφία Δημοσίου Κλειδιού Άρης Παγουρτζής Στάθης Ζάχος Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών Εθνικού Mετσόβιου Πολυτεχνείου

Διαβάστε περισσότερα

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

Βασικές Έννοιες Κρυπτογραφίας Βασικές Έννοιες Κρυπτογραφίας Παύλος Εφραιμίδης Κρυπτογραφία Βασικές Έννοιες 1 Τι θα μάθουμε Obscurity vs. Security Βασικές υπηρεσίες κρυπτογραφίας: Confidentiality, Authentication, Integrity, Non- Repudiation

Διαβάστε περισσότερα

Χρήστος Ξενάκης Τμήμα Ψηφιακών Συστημάτων

Χρήστος Ξενάκης Τμήμα Ψηφιακών Συστημάτων Βασικά Θέματα Κρυπτογραφίας Χρήστος Ξενάκης Τμήμα Ψηφιακών Συστημάτων Πανεπιστήμιο Πειραιά Αντικείμενο μελέτης Εφαρμοσμένη Κρυπτογραφία, απαραίτητη για την Ασφάλεια Δικτύων Υπολογιστών Χαρακτηριστικά των

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Stream ciphers Η διαδικασία κωδικοποίησης για έναν stream cipher συνοψίζεται παρακάτω: 1.

Διαβάστε περισσότερα

Κρυπτογραφία και Πολυπλοκότητα Factoring for large r

Κρυπτογραφία και Πολυπλοκότητα Factoring for large r ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΜΑΘΗΜΑΤΙΚΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Κρυπτογραφία και Πολυπλοκότητα Factoring for large r Μελισσάρης Παπανικολάου Νικόλαος Α.Μ. 09104221 nikolasm@gmail.com Περίληψη

Διαβάστε περισσότερα

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

W i. Subset Sum Μια παραλλαγή του προβλήματος knapsack είναι το πρόβλημα Subset Sum, το οποίο δεν λαμβάνει υπόψιν την αξία των αντικειμένων: 6/4/2017 Μετά την πρόταση των ασύρματων πρωτοκόλλων από τους Diffie-Hellman το 1976, το 1978 προτάθηκε ένα πρωτόκολλο από τους Merkle-Hellman το οποίο βασίστηκε στο ότι δεν μπορούμε να λύσουμε γρήγορα

Διαβάστε περισσότερα

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

ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ ΥΠΟΛΟΓΙΣΤΙΚΗ ΚΡΥΠΤΟΓΡΑΦΙΑ Εισαγωγή Άρης Παγουρτζής Στάθης Ζάχος Σχολή ΗΜΜΥ ΕΜΠ Διοικητικά του μαθήματος Διδάσκοντες Στάθης Ζάχος Άρης Παγουρτζής Πέτρος Ποτίκας (2017-18) Βοηθοί διδασκαλίας Παναγιώτης Γροντάς

Διαβάστε περισσότερα

Συμμετρική Κρυπτογραφία

Συμμετρική Κρυπτογραφία ΤΕΙ Κρήτης Τμήμα Μηχανικών Πληροφορικής Ασφάλεια Πληροφοριακών Συστημάτων Εργαστήριο Συμμετρική Κρυπτογραφία Konstantinos Fysarakis, PhD kfysarakis@staff.teicrete.gr Εισαγωγή } Στην συνηθισμένη κρυπτογραφία,

Διαβάστε περισσότερα

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

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 11η Διάλεξη: Ασφάλεια στο Web Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 1 Εισαγωγικά Βασικές

Διαβάστε περισσότερα

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

Cryptography and Network Security Chapter 9. Fifth Edition by William Stallings Cryptography and Network Security Chapter 9 Fifth Edition by William Stallings Chapter 9 Κρυπτογραφια Δημοσιου Κλειδιου και RSA Every Egyptian received two names, which were known respectively as the true

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou ιαχείριση Κλειδιών Ορισμός: Εγκαθίδρυση κλειδιού (key establishment) είναι η διαδικασία

Διαβάστε περισσότερα

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

Κρυπτογραφία. Κωνσταντίνου Ελισάβετ Κρυπτογραφία Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Συμμετρικά Κρυπτοσυστήματα κλειδί k Αρχικό κείμενο (m) Αλγόριθμος Κρυπτογράφησης Ε c = E k (m) Κρυπτογραφημένο

Διαβάστε περισσότερα

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

Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA. Κασαπίδης Γεώργιος -Μαθηµατικός Κρυπτογραφία ηµόσιου Κλειδιού Η µέθοδος RSA Τον Απρίλιο του 977 οι Ρόναλντ Ρίβεστ, Άντι Σαµίρ και Λέοναρντ Άντλεµαν, ερευνητές στο Ινστιτούτο Τεχνολογίας της Μασσαχουσέτης (ΜΙΤ) µετά από ένα χρόνο προσπαθειών

Διαβάστε περισσότερα

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

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ Παύλος Εφραιμίδης Βασικές Έννοιες Κρυπτογραφίας Ασφ Υπολ Συστ 1 Βασικές υπηρεσίες/εφαρμογές κρυπτογραφίες: Confidentiality, Authentication, Integrity, Non- Repudiation Βασικές έννοιες κρυπτογραφίας 2 3

Διαβάστε περισσότερα

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

Ασφάλεια Υπολογιστικών Συστημάτων Ασφάλεια Υπολογιστικών Συστημάτων Ενότητα 3: Κρυπτογραφία δημόσιου κλειδιού Νικολάου Σπύρος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Αννα Νταγιου ΑΕΜ: 432. Εξαμηνο 8. Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε.

Αννα Νταγιου ΑΕΜ: 432. Εξαμηνο 8. Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε. Αννα Νταγιου ΑΕΜ: 432 Εξαμηνο 8 Ερώτηση 1. Πληκτρολογήστε την εντολή: openssl help Παρατηρήστε τις πληροφορίες που λαµβάνετε. Παρόµοια, πληκτρολογήστε την εντολή: openssl ciphers v Ποιοι συµµετρικοί αλγόριθµοι

Διαβάστε περισσότερα

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας Κρυπτογραφία Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Block ciphers και ψευδοτυχαίες

Διαβάστε περισσότερα

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

Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα Διαχείριση Ασφάλειας και Εμπιστοσύνης σε Πολιτισμικά Περιβάλλοντα Ενότητα 5: ΚΡΥΠΤΟΓΡΑΦΗΣΗ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος

Διαβάστε περισσότερα

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

6 ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ 6 ΑΣΥΜΜΕΤΡΗ ΚΡΥΠΤΟΓΡΑΦΙΑ 6.1. Εισαγωγή Οι σύγχρονες κρυπτογραφικές λύσεις συμπεριλαμβάνουν κρυπτογραφία δημόσιου κλειδιού ή αλλιώς, ασύμμετρη κρυπτογραφία. Η ασύμμετρη κρυπτογραφία βασίζεται αποκλειστικά

Διαβάστε περισσότερα

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

Παύλος Εφραιμίδης. Βασικές Έννοιες Κρυπτογραφίας. Ασφ Υπολ Συστ Παύλος Εφραιμίδης Βασικές Έννοιες Κρυπτογραφίας Ασφ Υπολ Συστ 1 θα εξετάσουμε τα ακόλουθα εργαλεία κρυπτογραφίας: ψηφιακές υπογραφές κατακερματισμός (hashing) συνόψεις μηνυμάτων μ (message digests) ψευδοτυχαίοι

Διαβάστε περισσότερα

Κρυπτογραφία. Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

Κρυπτογραφία. Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας Κρυπτογραφία Κρυπτοσυστήματα πακέτου (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Block ciphers και ψευδοτυχαίες

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

Διαβάστε περισσότερα

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

Πρόσφατες κατευθύνσεις Η Παρούσα Κατάσταση σε θέµατα ΚΡΥΠΤΟΓΡΑΦΙΑΣ Κων/νος Χαλάτσης, Τµ. Π&Τ, ΕΚΠΑ Παρούσα κατάσταση - Προβλήµατα Cryptography (σχόλια για κρυπτοσυστήµατα) http://axion.physics.ubc.ca/crypt.html Snake Oil Warning

Διαβάστε περισσότερα

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

Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Υπολογιστική Θεωρία Αριθμών και Κρυπτογραφία Ψηφιακές Υπογραφές Υπογραφές Επιπρόσθετης Λειτουργικότητας Άρης Παγουρτζής Στάθης Ζάχος Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών

Διαβάστε περισσότερα

Κρυπτογραφία. Κρυπτοσυστήματα τμήματος (Block ciphers) Άρης Παγουρτζής Στάθης Ζάχος Πέτρος Ποτίκας

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων. Συναρτήσεις Κατακερματισμού ΤΕΙ ΚΡΗΤΗΣ ΤΜΉΜΑ ΜΗΧΑΝΙΚΏΝ ΠΛΗΡΟΦΟΡΙΚΉΣ Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων Συναρτήσεις Κατακερματισμού Ο όρος συνάρτηση κατακερματισμού (hash function) υποδηλώνει ένα μετασχηματισμό που παίρνει

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Αυθεντικοποίηση μηνύματος και Κρυπτογραφία δημόσιου κλειδιού Αυθεντικοποίηση μηνύματος και Κρυπτογραφία δημόσιου κλειδιού Μ. Αναγνώστου 13 Νοεμβρίου 2018 Συναρτήσεις κατακερματισμού Απλές συναρτήσεις κατακερματισμού Κρυπτογραφικές συναρτήσεις κατακερματισμού Secure

Διαβάστε περισσότερα

a 1d L(A) = {m 1 a m d a d : m i Z} a 11 a A = M B, B = N A, k=1

a 1d L(A) = {m 1 a m d a d : m i Z} a 11 a A = M B, B = N A, k=1 Α44 ΚΡΥΠΤΟΓΡΑΦΙΑ ΣΗΜΕΙΩΣΕΙΣ #12 ΘΕΟ ΟΥΛΟΣ ΓΑΡΕΦΑΛΑΚΗΣ 1 Πλεγµατα Εστω ο διανυσµατικός χώρος R d διάστασης d Ο χώρος R d έρχεται µε ένα εσωτερικό γινόµενο x, y = d i=1 x iy i και τη σχετική νόρµα x = x,

Διαβάστε περισσότερα

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

Ασφάλεια Πληροφοριακών Συστημάτων Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Ασφάλεια Πληροφοριακών Συστημάτων Ενότητα 6: Κρυπτογραφία Ι Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

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

Εφαρμοσμένη Κρυπτογραφία Ι Εφαρμοσμένη Κρυπτογραφία Ι Κωνσταντίνου Ελισάβετ ekonstantinou@aegean.gr http://www.icsd.aegean.gr/ekonstantinou Συμμετρικά Κρυπτοσυστήματα κλειδί k Αρχικό κείμενο (m) Αλγόριθμος Κρυπτογράφησης Ε c = E

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 11: Αριθμητική υπολοίπων-δυνάμεις Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

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

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Ελένη Μπακάλη Άρης Παγουρτζής

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 131: ΑΡΧΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I ΕΡΓΑΣΙΑ 2 ΕΡΓΑΣΙΑ Διδάσκων: Γιώργος Χρυσάνθου Υπεύθυνος Άσκησης: Πύρρος Μπράτσκας Ημερομηνία Ανάθεσης: 3/10/015 Ημερομηνία Παράδοσης: 09/11/015 09:00 π.μ. I.Στόχος Στόχος αυτής της εργασίας είναι η χρησιμοποίηση

Διαβάστε περισσότερα

Hash Functions. μεγεθος h = H(M) ολους. στο μηνυμα. στο συγκεκριμενο hash (one-way property)

Hash Functions. μεγεθος h = H(M) ολους. στο μηνυμα. στο συγκεκριμενο hash (one-way property) Hash Functions Συρρικνωνει μηνυμα οποιουδηποτε μηκους σε σταθερο μεγεθος h = H(M) Συνηθως θεωρουμε οτι η hash function ειναι γνωστη σε ολους Το hash χρησιμοποιειται για να ανιχνευσει τυχον αλλαγες στο

Διαβάστε περισσότερα

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

Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Κρυπτογραφία Δημόσιου Κλειδιού II Αλγόριθμος RSA Τμήμα Μηχ. Πληροφορικής ΤΕΙ Κρήτης Κρυπτογραφία Δημόσιου Κλειδιού -RSA 1 Κρυπτογραφία Δημόσιου Κλειδιού - Ιστορία Ηνωμένες Πολιτείες 1975: Ο Diffie οραματίζεται

Διαβάστε περισσότερα

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

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Ελένη Μπακάλη Άρης Παγουρτζής

Διαβάστε περισσότερα