Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεMuriel Economides Τροποποιήθηκε πριν 9 χρόνια
1
Ασφάλεια Δικτύων (Computer Security)
2
Τι Εννοούμε με τον Όρο Ασφάλεια Δικτύων; Ασφάλεια Μόνο ο αποστολέας και ο προοριζόμενος παραλήπτης μπορούν να διαβάσουν και να κατανοήσουν ένα μήνυμα. Ο αποστολέας το κρυπτογραφεί (encrypt) Ο παραλήπτης το αποκρυπτογραφεί (decrypt). Πιστοποίηση Αυθεντικότητας (authentication) Αποστολέας και παραλήπτης μπορούν να επιβεβαιώσουν την ταυτότητα τους. Ακεραιότητα Μηνύματος (message integrity) Αποστολέας και παραλήπτης μπορούν να επιβεβαιώσουν ότι το μήνυμα δεν αλλοιώθηκε ή ξαναστάλθηκε χωρίς να γίνει αντιληπτό.
3
Κρυπτογραφία Κρυπτογραφία είναι η «επιστήμη» η οποία ασχολείται με την μη καταστρεπτική αλλοίωση δεδομένων με τέτοιο τρόπο έτσι ώστε να μην μπορούν να κατανοηθούν από οποιοδήποτε Μη καταστρεπτική αλλοίωση: πρέπει να υπάρχει τρόπος ο ιδιοκτήτης ή ο προοριζόμενος παραλήπτης να μπορεί να αναπαράξει τα αρχικά δεδομένα Ασφάλεια Ακεραιότητα Μηνυμάτων Κρυπτογραφία Υπηρεσίες Ασφάλειας Μυστικό κλειδί (π.χ. DES) Φανερό κλειδί (π.χ. RSA) Message Digest (e.g. MD5) Μυστικότητα (privacy) Πιστοποίηση Αυθεντικότητας
4
Περίληψη Απειλές Ασφάλειας στο Διαδίκτυο Παραδοσιακή Κρυπτογραφία Βασικές Αρχές Κρυπτογραφίας Αλγόριθμοι Μυστικού Κλειδιού (secrete key encryption) Αλγόριθμοι Φανερού Κλειδιού (public key encryption) Ψηφιακές Υπογραφές Πρωτόκολλα Πιστοποίησης Αυθεντικότητας
5
Απειλές Ασφάλειας στο Διαδίκτυο Packet Sniffing Κάποιος μπορεί να χρησιμοποιήσει ένα δέκτη για να «κρυφάκουει» όλα τα πακέτα που μεταδίδονται μέσα από μέσα εκπομπής Μπορεί να διαβάζει όλες τις μη κρυπτογραφημένες πληροφορίες που μεταδίδονται Μπορεί επίσης να αποθηκεύει ακόμα και κρυπτογραφημένες πληροφορίες A B C src:B dest:A payload
6
Απειλές Ασφάλειας στο Διαδίκτυο IP Spoofing (παραπλάνηση) Κάποιος μπορεί να προγραμματίσει μια εφαρμογή η οποία να δημιουργεί πακέτα στα οποία η διεύθυνση αποστολέα να είναι αλλαγμένη (προσποιείται ότι είναι κάποιος άλλος) Ο παραλήπτης δεν μπορεί να ξέρε αν ο αποστολέας είναι όντως ο ιδιοκτήτης της διεύθυνσης που αναγράφεται στην επικεφαλίδα του πακέτου. A B C src:B dest:A payload
7
Απειλές Ασφάλειας στο Διαδίκτυο Αποστέρηση Υπηρεσιών (Denial of Service) Αποστολή πλημμυράς πακέτων στα οποία δεν μπορεί να αντεπεξέλθει ο παραλήπτης Κατανεμημένη αποστέρηση υπηρεσιών (Distributed Denial of Service) A B C SYN
8
Κρυπτογραφία Κ Α =Κ Β : Συμμετρικός αλγόριθμος όπου το κλειδί πρέπει να είναι μυστικό Κ Α ≠ Κ Β : Μη συμμετρικός αλγόριθμος όπου το ένα κλειδί είναι μυστικό φανερό (δημόσιο).
9
Παραδοσιακή Κρυπτογραφία Κρυπτογραφία Αντικατάστασης (substitution cipher) Κάθε γράμμα αντικαθίσταται με κάποιο άλλο plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: mnbvcxzasdfghjklpoiuytrewq Plaintext: bob. i love you. alice ciphertext: nkn. s gktc wky. mgsbc Παράδειγμα Πόσο δύσκολο είναι να σπάσει κάποιος αυτόν τον αλγόριθμο; Βρίσκοντας όλες τις δυνατέ περιπτώσεις Χρησιμοποιώντας άλλες τεχνικές
10
Κρυπτογραφία Μετατροπής (Transposition Cipher) Αλλάζει η σειρά με την οποία μπαίνουν τα γράμματα Πώς μπορεί κάποιος να σπάσει αυτόν τον αλγόριθμο;
11
Βάση μιας Χρήσης (One-Time Pads) Αυτός ο αλγόριθμος δεν μπορεί να σπάσει, αλλά όμως δεν είναι καθόλου πρακτικός.
12
Αρχές Κρυπτογραφίας Τα κρυπτογραφημένα μηνύματα πρέπει να περιέχουν πλεονάζουσες μη αναγκαίες πληροφορίες (redundancy) Τέτοιες πληροφορίες μπορούν να χρησιμοποιηθούν από τον παραλήπτη για να ανιχνεύσει κατά πόσο το μήνυμα έχει τις σωστές πληροφορίες. Ο παραλήπτης μπορεί να χρησιμοποιήσει αλγόριθμους επιδιόρθωσης σφαλμάτων για να διορθώσει πιθανές παρεμβολές από διαρρήκτες. Τα κρυπτογραφημένα μηνύματα πρέπει να έχουν τρόπο με τον οποίο να ανιχνεύεται κατά πόσο το μήνυμα έχει επεξεργαστεί προηγουμένως (freshness) Δεν πρέπει να επιτρέπεται η χρήση ενός κρυπτογραφημένου μηνύματος περισσότερες από μια φορές
13
Πρότυπο Κρυπτογράφησης Δεδομένων (Data Encryption Standard DES)
14
Τριπλό DES Κρυπτογράφηση. Αποκρυπτογράφηση.
15
Προχωρημένο Πρότυπο Κρυπτογράφησης (Advanced Encryption Standard). Απαιτήσεις του νέου αλγορίθμου Ο αλγόριθμος πρέπει να είναι συμμετρικός Ο πλήρης σχεδιασμός του αλγόριθμου πρέπει να είναι δημόσιος Το μήκος των κλειδιών πρέπει να υποστηρίζει 128, 192 και 258 bits. Θα πρέπει να μπορεί να εφαρμοστεί είτε σε υλικό είτε σε λογισμικό. Θα πρέπει όποιος θέλει να μπορεί να τον χρησιμοποιήσει χωρίς διακρίσεις. Rijndael (Joan Daemen και Vincent Rijmen).
16
Αλγόριθμοι Κρυπτογραφίας με Συμμετρικό Κλειδί Πρόβλημα: Πώς ο αποστολέας και παραλήπτης ανταλλάσσουν το κοινό κλειδί;
17
Αλγόριθμοι με Φανερό (Δημόσιο) Κλειδί (Public Key Encryption) Υπάρχουν δύο κλειδιά (ένα μυστικό και ένα φανερό) Ο αποστολέας χρησιμοποιεί το φανερό κλειδί για την κρυπτογράφηση Ο παραλήπτης χρησιμοποιεί το μυστικό κλειδί για την αποκρυπτογράφηση
18
Αλγόριθμοι με Φανερό (Δημόσιο) Κλειδί Το πρόβλημα έχει τις εξής δύο απαιτήσεις Χρειάζονται δύο συναρτήσεις e Κ1 ( ) και d Κ2 ( ) έτσι ώστε Χρειάζονται δυο κλειδιά Κ1 (φανερό) και Κ2 (μυστικό) για τις συναρτήσεις e Κ1 ( ) και d Κ2 ( ) RSA: Rivest, Shamir, Adelson algorithm
19
Αλγόριθμος RSA Επιλέξτε δύο μεγάλους πρώτους αριθμούς p, q (π.χ., 1024 bits) Υπολογίστε τα γινόμενα n=pq και z=(p-1)(q-1) Επιλέξτε αριθμό e (όπου e<n) έτσι ώστε να μην υπάρχουν κοινοί παράγοντες μεταξύ e και z (e και z πρέπει να είναι «πρώτοι» μεταξύ τους) Επιλέξτε αριθμό d έτσι ώστε ed-1 να διαιρείται ακριβώς από το z (δηλαδή ed mod z = 1) Το φανερό κλειδί είναι το (n,e) και το μυστικό κλειδί είναι το (n,d).
20
Κρυπτογράφηση Αποκρυπτογράφηση RSA Δεδομένων των κλειδιών (n,e) και (n,d). Για την κρυπτογράφηση του μηνύματος m υπολογίζουμε Για να αποκρυπτογραφήσουμε το κρυπτογραφημένο μήνυμα χρησιμοποιούμε c = m mod n e (δηλαδή το υπόλοιπο της διαίρεσης m e δια n) m = c mod n d (δηλαδή το υπόλοιπο της διαίρεσης c d δια n) m = (m mod n) e mod n d Magic!
21
Παράδειγμα Ο Bob επέλεξε p =5, q= 7 Τότε n= pq= 35, z=(p-1)(q-1)= 24 Επέλεξε επίσης e= 5 (έτσι ώστε να μην διαιρεί το z) Επέλεξε επίσης το d=29 (έτσι ώστε ed-1 να διαιρείται από το z) Κρυπτογράφηση του γράμματος μ: m=12, m e = 1524832 c= m e mod n = 17 Αποκρυπτογράφηση c d = 481968572106750915091411825223072000 m= c d mod n = 12 = μ
22
Επισκόπηση Μηνύματος (Message Digest) Κρυπτογραφημένο άθροισμά ελέγχου Συνηθισμένο άθροισμα ελέγχου το οποίο είναι κρυπτογραφημένο έτσι ώστε ένα αλλάξει κάποιος το μήνυμα να μπορεί να ανιχνευτεί Μονόδρομη συνάρτηση Δεδομένου του αθροίσματος ελέγχου πρέπει να είναι αδύνατο να υπολογίσουμε το μήνυμα που το δημιούργησε. Δύο διαφορετικά μηνύματα δεν πρέπει να έχουν το ίδιο άθροισμα ελέγχου Συσχετισμός Δεδομένου του αθροίσματος ελέγχου για κάποιο μήνυμα, εάν μπορούμε να υπολογίσουμε ακριβώς το ίδιο άθροισμα ελέγχου, τότε πιθανότητα το συγκεκριμένο άθροισμα ελέγχου έχει παραχθεί από το δεδομένο μήνυμα
23
Secure Hash Algorithm (SHA-1) Οι 16 λέξεις (words) αρχικοποιούν τις λέξεις W o …W 15 Οι υπόλοιπες 16 έως79, υπολογίζονται σαν συναρτήσεις των προηγούμενων 5 προσωρινές μεταβλητές παίρνουν τιμές οι οποίες είναι συναρτήσεις των δεδομένων Το τελικό του αποτέλεσμα προστίθεται στα Η 0 …Η 4 Το τελικό αποτέλεσμα Η 0 …Η 4 για το Μ i είναι το αρχικό του Μ i+1
24
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice;
25
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice;
26
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας Μπορεί ο Bob να εμπιστευτεί ότι όντως μιλά με την Alice; I am Alice encrypt(password)
27
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί R είναι ένας τυχαίος αριθμός ο οποίος θα χρησιμοποιηθεί μόνο μια φορά.
28
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί Hi, I am Alice RBRB K AB (R B ), R A RARA Hi, I am Alice, R A R B K AB (R A ), K AB (R B )
29
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί Hi, I am Alice, R T R B, K AB (R T ), Hi, I am Alice, R B R B2, K AB (R B ), K AB (R B ) Second Session Ο Bob νομίζει ότι μιλά με την Alice
30
Πρωτόκολλα Πιστοποίηση Αυθεντικότητας με Κοινό Κλειδί Hi, I am Alice RARA RARA Hi I am Bob K AB (R A ) Second Session H Alice νομίζει ότι μιλά με τoν Bob K AB (R A ) R A2 K AB (R A2 )
31
Γενικοί Κανόνες Πιστοποίησης Ταυτότητας Αυτός που αρχίζει μια συνδιάλεξη πρέπει να είναι ο πρώτος ο οποίος θα πρέπει να αποδείξει την ταυτότητα του, πριν ο παραλήπτης δώσει οποιαδήποτε στοιχεία για την δική του ταυτότητα. Ο δύο θα πρέπει να χρησιμοποιούν δύο διαφορετικά κλειδιά ακόμα και για αλγορίθμους κοινού κλειδιού Οι τυχαίοι αριθμοί (challenges) που χρησιμοποιούν τα δύο μέρη θα πρέπει να προέρχονται από διαφορετικά σύνολα. Το πρωτόκολλο πρέπει να είναι σχεδιασμένο να αποφεύγει επιθέσεις από παράλληλες συνδέσεις.
32
Πρωτόκολλο Ανταλλαγής Κοινού Κλειδιού Πως ο Bob και η Alice μπορούν να συμφωνήσουν σε ένα κοινό κλειδί; Μπορούν να συναντηθούν και αφού επιβεβαιώσουν τις ταυτότητες τους να συμφωνήσουν σε ένα κοινό κλειδί. The Diffie-Hellman Key Exchange n, g, g x mod n g y mod n Η Alice επιλέγει ένα μεγάλο (512- bit) αριθμό x O Bob επιλέγει ένα μεγάλο (512- bit) αριθμό y Επιλέγουν 2 μεγάλους αριθμούς g και n όπου n είναι πρώτος ως επίσης και ο (n-1)/2. Οι αριθμοί αυτοί είναι φανεροί H Trudy μπορεί να δει τους n, g, g x mod n, g y mod n, αλλά δεν μπορεί να υπολογίσει το g xy mod n.
33
Αδυναμία Πρωτοκόλλου Ανταλλαγής Κοινού Κλειδιού Πως μπορεί η Trudy να σπάσει το πρωτόκολλο; n, g, g x mod n g z mod n Η Alice επιλέγει x O Bob επιλέγει y Η Trudy επιλέγει z n, g, g z mod n g y mod n
34
Κέντρα Διανομής Κλειδιών (Key Distribution Center KDC) Η διαχείριση πολλών κλειδιών είναι δύσκολή για πολυσύχναστες υπηρεσίες Η Alice και ο Bob στη συνέχεια χρησιμοποιούν το session key K S Πως η Trudy μπορεί να εκμεταλλευθεί το πρωτόκολλο; Η Trudy μπορεί να αποθηκεύσει το κρυπτογραφημένο μήνυμα (K S (.)) και μετά να το στέλνει συνέχεια (Replay Attack) Session Key
35
Κέντρα Διανομής Κλειδιών (Key Distribution Center KDC) Η διαχείριση πολλών κλειδιών είναι δύσκολή για πολυσύχναστες υπηρεσίες Η Alice και ο Bob στη συνέχεια χρησιμοποιούν το session key K S Πως η Trudy μπορεί να εκμεταλλευθεί το πρωτόκολλο; Η Trudy μπορεί να αποθηκεύσει το κρυπτογραφημένο μήνυμα (K S (.)) και μετά να το στέλνει συνέχεια (Replay Attack) Κακή Λύση: Χρήση χρονομέτρων και τυχαίων αριθμών… Session Key
36
Needham-Schroeder Authentication
37
Otway-Rees Authentication
38
Kerberos Authentication
39
Πιστοποίηση Ταυτότητας με Φανερό Κλειδί
40
Πιστοποιητικά Ταυτότητας (Authenticity Certificates) Πρόβλημα: Πως ξέρει η Alice ότι πήρε το σωστό κλειδί και όντως επικοινωνεί με τον Bob; AliceBobTrudy Hi, I am Alice, send me E B Here is the key E T E T ( Message )E B ( Message )
41
Πιστοποιητικά Ταυτότητας (Αυθεντικότητας) (Authenticity Certificates) Εάν ο Bob θέλει να είναι σίγουρος ότι όσοι θέλουν να επικοινωνήσουν μαζί του, θα επικοινωνούν μόνο μαζί του, πάει σε μια Πιστοποιούσα Αρχή (Certification Authority) η οποία αφού εξακριβώσει την ταυτότητα του Bob εκδίδει το πιο κάτω πιστοποιητικό. Η Πιστοποιούσα Αρχή (Certification Authority CA) χρησιμοποιεί το μυστικό της κλειδί για να δημιουργήσει το SHA-1
42
Πιστοποιητικά Αυθεντικότητας (Authenticity Certificates) Εάν η Trudy δοκιμάσει να αντικαταστήσει το κλειδί του Bob στο πιστοποιητικό, τότε η Alice μπορεί εύκολα να το ανιχνεύσει! Παίρνοντας το φανερό κλειδί της πιστοποιούσας αρχής, ελέγχει το SHA-1, το οποίο δεν θα ταιριάζει με αυτό που θα άρμοζε στο δεδομένο πιστοποιητικό. Η Trudy δεν έχει το μυστικό κλειδί της πιστοποιούσας αρχής έτσι δεν μπορεί να αλλάξει το SHA-1 να αντικατοπτρίζει το πιστοποιητικό του Bob με το δικό της κλειδί AliceBobTrudy Hi, I am Alice, send me your certificate with E B Here is the key E T E T ( Message )E B ( Message )
43
Πιστοποιητικά Αυθεντικότητας (Authenticity Certificates) Εάν κάποιος θέλει να πιστοποιήσει ότι έχει κάποια ιδιότητα (π.χ., είναι μεγαλύτερος από 18 ετών). Πάει σε μια αρχή η οποία του εκδίδει ένα πιστοποιητικό το οποίο λέει πως το φανερό αυτό κλειδί ανήκει σε κάποιον ο οποίος είναι πέραν των 18 ετών. User A WWW Here is my certificate E A (Random Number R) R=D A (E A (R )) Με αυτό τον τρόπο ο εξυπηρετητής ξέρει πως ο Α είναι κάτοχος του πιστοποιητικού
44
Υποδομή Πιστοποίησης Φανερών Κλειδιών Ιεραρχική Υποδομή Κάθε πιστοποιούσα αρχή έχει πιστοποιητικό από την αμέσως προηγούμενη αρχή. Ποιον εμπιστεύεστε για το Root;
45
Ψηφιακές Υπογραφές με Κοινό Κλειδί Big Brother Σε κάθε περίπτωση ο Bob αποθηκεύει το μήνυμα P καθώς και το κρυπτογράφημα K BB (A, t, P). Ένα υπάρξει αμφισβήτηση ότι όντως το μήνυμα στάλθηκε από την Alice, τότε ο Bob Παρουσιάζει το κρυπτογραφημένο μήνυμα Κ BB (A, t, P) Καλεί τον BB (τον οποίο όλοι εμπιστεύονται) για να αποκρυπτογραφήσει το μήνυμα Πως αποδεικνύεται πως το μήνυμα στάλθηκε από την Alice;
46
Ψηφιακές Υπογραφές με Φανερό Κλειδί Σε κάθε περίπτωση ο Bob αποθηκεύει το μήνυμα P καθώς και το κρυπτογράφημα D Α (P). Ένα υπάρξει αμφισβήτηση ότι όντως το μήνυμα στάλθηκε από την Alice, τότε ο Bob Παρουσιάζει το κρυπτογραφημένο μήνυμα D A (P) Χρησιμοποιεί το φανερό κλειδί της Alice για να αποκρυπτογραφήσει το μήνυμα και να δείξει ότι όντως το μήνυμα στάλθηκε από την Alice. Πως αποδεικνύεται πως το μήνυμα στάλθηκε από την Alice;
47
Firewalls Τι συμβαίνει στην περίπτωση ασύρματων δικτύων;
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.