0e966acae824e56498bd3bc209cfcce2.ppt
- Количество слайдов: 45
Αν. Καθ. Π. Γεωργιάδης ΠΜΣ 36 Ασφάλεια Υπολογιστικών Συστημάτων Lecture 6 Υπ. Δρ. Κ. Παπαπαναγιώτου conpap@di. uoa. gr Δρ. Μαριάς Ιωάννης marias@mm. di. uoa. gr
Περιεχόμενα n Συστήματα και Πρωτόκολλα αυθεντικοποίησης n n ΠΜΣ 36 / 2006 Kerberos Pretty Good Privacy (PGP) Simple PKI/SDSI – ANSI X 9. 68 Personal PKI Lecture 6 2
Kerberos n Το Kerberos παρέχει υπηρεσίες αυθεντικοποίησης χρήστη σε δικτυακά και κατανεμημένα περιβάλλοντα, χρησιμοποιώντας μία έμπιστη τρίτη οντότητα (TTP) n n Αναπτύχθηκε από το Project Athena του MIT n n n http: //web. mit. edu/kerberos/www/ Βασίζεται σε αλγορίθμους συμμετρικής κρυπτογράφησης Αυθεντικοποιεί δύο μέρη n n ΠΜΣ 36 / 2006 TTP αποτελεί την KDC Μονομερώς (Client 2 Server) Αμοιβαία (C 2 S/ S 2 C) Χωρίς να αποκαλύπτει κοινό μυστικό (π. χ. , password) Χρησιμοποιεί ως βάση τον αλγόριθμο Needham – Schroeder. Lecture 6 3
Kerberos n Χρησιμοποιείται, μεταξύ άλλων, στα Windows 2000 για την αυθεντικοποίηση των χρηστών στο σύστημα και τη χρήση δικτυακών πόρων n n n Χρησιμοποιείται και για να υποστηρίξει εφαρμογές Single Sign On (SSO) Τελευταία έκδοση: v 5 (RFC 1510) n ΠΜΣ 36 / 2006 Το κοινό μυστικό είναι ένα κλειδί που βασίζεται στο συνθηματικό του χρήστη H v 4 χρησιμοποιείται ακόμα, ενώ οι εκδόσεις 1 -3 δεν δημοσιεύτηκαν Lecture 6 4
Χρησιμότητα n n n ΠΜΣ 36 / 2006 Το Kerberos αντιμετωπίζει το πρόβλημα της αυθεντικοποίησης σε ένα δικτυακό περιβάλλον, όπου διάφορες υπηρεσίες παρέχονται από ανεξάρτητα συστήματα τα οποία επικοινωνούν μεταξύ τους μέσω δικτύου Οι υπηρεσίες μπορούν να παρέχονται μόνο σε χρήστες μετά από εξουσιοδότηση Το Kerberos αντικαθιστά την ανάγκη επιμέρους αυθεντικοποίησης σε κάθε σύστημα, με ένα κεντρικό σύστημα που διαχειρίζεται όλες τις σχέσεις εμπιστοσύνης μεταξύ υπηρεσιών και χρηστών Lecture 6 5
Απαιτήσεις n n Ασφάλεια: Ένας ωτακουστής δεν θα πρέπει να μπορεί να χρησιμοποιήσει τις πληροφορίες που λαμβάνει για να ιδιοποιηθεί την ταυτότητα ενός χρήστη Αξιοπιστία: Εφόσον ο έλεγχος πρόσβασης στις υπηρεσίες γίνεται από το Kerberos, πιθανή έλλειψη διαθεσιμότητάς του θα συνεπάγεται και μη διαθεσιμότητα των υπηρεσιών. Συνεπώς ο Kerberos θα πρέπει να είναι πάντα διαθέσιμος n n n Διαφάνεια: Ο χρήστης δεν θα πρέπει να αντιλαμβάνεται την ύπαρξη του συστήματος ελέγχου προσπέλασης, πέρα από την απαίτηση εισαγωγής ενός συνθηματικού. Κλιμάκωση: Πρέπει να μπορεί να υποστηρίξει μεγάλο αριθμό clients και servers, n ΠΜΣ 36 / 2006 υλοποιείται μέσα από μια κατανεμημένη αρχιτεκτονική (κατά specs) μέσα από μία κατανεμημένη αρχιτεκτονική domains (realms) Lecture 6 6
Διανομή Κλειδιών μέσω TTP n Σενάριο με συμμετρικά κλειδιά n n n Θα μπορούσαν να χρησιμοποιηθούν αλγόριθμοι ασύμμετρης κρυπτογραφίας Εναλλακτικά, θα μπορούσε να χρησιμοποιηθεί μία έμπιστη τρίτη οντότητα (KDC) που θα βοηθά τους χρήστες να αυθεντικοποιούνται μόνο απέναντί της n n ΠΜΣ 36 / 2006 Δίκτυο n κόμβων Κάθε ζεύγος κόμβων θέλει να επικοινωνήσει με ασφάλεια Απαιτούνται n(n-1)/2 κλειδιά και κάθε κόμβος πρέπει να διαθέτει n-1 κλειδιά Κατόπιν μοιράζονται κλειδιά συνόδου (διάλεξη 2η) Τελικά: Χρήση πρωτοκόλλου Needham - Schroeder Lecture 6 7
Needham – Schroeder Κλειδιά n Κάθε κόμβος H μοιράζεται ένα κλειδί μακράς διάρκειας KH, T με το KDC, T. n n ΠΜΣ 36 / 2006 Η Alice μοιράζεται ένα κλειδί μακράς διάρκειας KA, T με το KDC. Ο Bob επίσης μοιράζεται ένα κλειδί μακράς διάρκειας KB, T με το KDC. Αρχικά η Alice και ο Bob δεν μοιράζονται κάποιο κοινό κλειδί. Η Alice και ο Bob χρησιμοποιούν το KDC ώστε να αυθεντικοποιούνται ο ένας απέναντι στον άλλον (έμμεσα) και να συμφωνήσουν σε ένα κλειδί συνόδου. Lecture 6 8
Needham – Schroeder Το πρωτόκολλο KDC 1 2 Alice Εγκαθίδρυση κοινού κλειδιού συνόδου Κ μεταξύ Alice και Bob μέσω ΤΤΡ n A T: A || B || NA n T A: ΕKA, T{NA || B || K || ΕKB, T{K || A}} n A B: ΕKB, T{K || A} n B A: NB n A B: ΕK{NB -1||B} 3 Bob 4 5 ΠΜΣ 36 / 2006 Lecture 6 9
Needham – Schroeder Αναλυτικά 1: Η Alice στέλνει στο KDC ένα μήνυμα που περιέχει το όνομα της, το όνομα του Βob και ένα τυχαίο αριθμό (ή αύξοντα) 2: Το KDC δημιουργεί ένα (ψευδο)τυχαίο κλειδί συνόδου, το οποίο το δίνει στην Alice. Στο στάδιο αυτό αυθεντικοποιείται απέναντι στην Alice. 3: H Alice στέλνει το κλειδί συνόδου κρυπτογραφημένο από KDC στον Bob. 4: O Bob στέλνει στην Alice ένα τυχαίο αριθμό (ή αύξοντα) 5: Η Αlice αυθεντικοποιείται απέναντι στον Bob χρησιμοποιώντας το κλειδί συνόδου K που πλέον μπορούν και να μοιράζονται ΠΜΣ 36 / 2006 Lecture 6 10
Πλεονεκτήματα - Μειονεκτήματα n Πλεονεκτήματα n n n Απαιτούνται μόνο n κλειδιά στο KDC Απαιτείται μόνο ένα κλειδί μακράς διάρκειας στον κάθε κόμβο (αντί n-1) Χρήση Συμμετρικής Κρυπτογραφίας Ο Βob μπορεί να είναι offline στα βήματα 1 και 2, ομοίως και o KDC στα βήματα 3, 4, 5. Μειονεκτήματα n KDC: Μοναδικό σημείο κατάρρευσης n n n ΠΜΣ 36 / 2006 Φόρτος μηνυμάτων στο KDC Απαίτηση για έμπιστο KDC Απαίτηση για καλή διαχείριση κλειδιών μακράς διαρκείας από τους κόμβους Lecture 6 11
Στοιχεία του Kerberos n Kerberos Key Distribution Centre (KDC) n n n Ticket Granting Servers (TGSs) n n Παρέχουν υπηρεσίες σε clients βασιζόμενοι στην αυθεντικοποίηση που πραγματοποιούν οι KDC και TGS Realm n ΠΜΣ 36 / 2006 Χρήστες που επιθυμούν να έχουν πρόσβαση σε υπηρεσίες που παρέχονται από servers του δικτύου Server n n Εκδίδουν εισιτήρια προς οντότητες που ζητούν πρόσβαση σε δικτυακές υπηρεσίες Client n n γνωστό και σαν Kerberos Authentication Server (KAS) αυθεντικοποιεί χρήστες (ή και άλλες οντότητες) και εκδίδει εισιτήρια, τα οποία είναι έγκυρα για μία σύνοδο To σύνολο των client και server που διαχειριστικά ανήκουν σε ένα ζεύγος KDC/TGS Lecture 6 12
Πρωτόκολλο TGS KDC (ticketgranting server) (Authentication Server, AS) 2 1 C (client) 3 1. 2. 3. 4. 5. 6. Αίτηση για Ticket-Granting Ticket Αίτηση για Server Ticket Αίτηση για Service Ασφαλής επικοινωνία 4 5 S (server) 6 ΠΜΣ 36 / 2006 Lecture 6 13
Φάσεις του πρωτοκόλλου n n ΠΜΣ 36 / 2006 Φάση 1: Στα μηνύματα 1 και 2, χρησιμοποιείται το κλειδί μακράς διάρκειας για αυθεντικοποίηση μεταξύ Client και KDC. To KDC δίνει ένα κλειδί μικρής διάρκειας και ένα ticket granting ticket (TGT). Φάση 2: Στα μηνύματα 3 και 4, χρησιμοποιούνται το κλειδί μικρής διάρκειας και το TGT για αυθεντικοποίηση μεταξύ Client και TGS. Ο TGS δίνει ένα κλειδί συνόδου και ένα εισιτήριο (ticket). Φάση 3: Στα μηνύματα 5 και 6, χρησιμοποιούνται το κλειδί συνόδου και το εισιτήριο για αυθεντικοποίηση μεταξύ Client και Server και για την εγκαθίδρυση ασφαλούς συνόδου. Οι Φάσεις 2 και 3 συνήθως επαναλαμβάνονται πολλές φορές για κάθε 1η φάση. Lecture 6 14
Ροή Μηνυμάτων Network security essentials (International edition), William Stallings, Prentice-Hall, 2002. ISBN: 0131202715 ΠΜΣ 36 / 2006 Lecture 6 15
Μηνύματα Authentication phase ü Απόκτηση Ticket-Granting Ticket (TGT) ü Once per user logon session 1. C KDC: IDtgs||IDC||TS 1 2. KDC C: EKc{Kc, tgs|| IDtgs || TS 2 || Lifetime 2 || Tickettgs} Tickettgs : = Ekkdc, tgs{Kc, tgs|| IDc || ADc || IDtgs || TS 2 || Lifetime 2 } ΠΜΣ 36 / 2006 Lecture 6 16
Μηνύματα Ticket Granting Service phase ü Απόκτηση Service-Granting Ticket ü Once per type of service 3. C TGS: IDS|| Tickettgs||Authenticatorc 4. TGS C: Ekc, tgs{Kc, s|| IDs|| TS 4 || Tickets} Tickettgs : = Ekkdc, tgs{Kc, tgs|| IDc || ADc || IDtgs || TS 2 || Lifetime 2} Tickets : = Eks{Kc, s|| IDc || ADc || IDs || TS 4 || Lifetime 4} Authenticatorc : = Ekc, tgs{IDc || ADc || TS 3} ΠΜΣ 36 / 2006 Lecture 6 17
Μηνύματα Client-Server Authentication phase ü Πρόσβαση σε υπηρεσία ü Once per service session 5. C S: Tickets||Authenticator’c 6. S C: Ekc, s{TS 5 +1} Tickets : = Eks{Kc, s|| IDc || ADc || IDs || TS 4 || Lifetime 4} Authenticator’c : = Ekc, s{IDc || ADc || TS 5} ΠΜΣ 36 / 2006 Lecture 6 18
Αυθεντικοποίηση σε Διαφορετικά Realms n Το Kerberos υποστηρίζει αυθεντικοποίηση σε διαφορετικά realms n n n Clients που ανήκουν σε ένα realms μπορούν να έχουν πρόσβαση σε servers άλλου realm. Απαιτείται προ-συμφωνία μεταξύ των σχετικών KDC/TGS. Χρησιμοποιούνται forwardable tickets. n n Ένας Client στο realm A ζητεί ένα TGT από τον TGS για να το χρησιμοποιήσει σε ένα άλλο realm B. Ο TGS του realm A δίνει ένα TGT για το realm B. n n n ΠΜΣ 36 / 2006 Ο TGS πρέπει να γνωρίζει το κλειδί KKDC, TGS που ισχύει στο realm B. Ο TGS στο realm A εισάγει ένα forwardable flag στο TGT που εκδίδει. Ο Client από το realm A μπορεί να χρησιμοποιήσει το TGT στο realm B. Lecture 6 19
Επικοινωνία Μεταξύ Realms Network security essentials (International edition), William Stallings, Prentice-Hall, 2002. ISBN: 0131202715 ΠΜΣ 36 / 2006 Lecture 6 20
Διαφορές v 4 – v 5 n n ΠΜΣ 36 / 2006 To v 4 χρησιμοποιεί DES ενώ το v 5 μπορεί να χρησιμοποιήσει οποιονδήποτε αλγόριθμο. Το v 4 βασίζεται στις διευθύνσεις του πρωτοκόλλου IP ενώ το v 5 μπορεί να χρησιμοποιήσει οποιεσδήποτε διευθύνσεις. Τα εισιτήρια στο v 4 μπορούν να είναι μέχρι 21 ώρες, ενώ στο v 5 έχουν συγκεκριμένους χρόνους αρχής και τέλους. Τα μηνύματα 2 και 4 κρυπτογραφούνταν 2 φορές στη v 4. Lecture 6 21
Ανοικτά Θέματα n n n Ανάκληση: Τα TGT ισχύουν μέχρι να λήξουν, συνήθως σε 10 ώρες. Διαχείριση κλειδιών: μέσα σε ένα realm: Κλειδιά μακράς διαρκείας πρέπει να ανταλλαχθούν μεταξύ KDC και TGS, TGS και Server, KDC και Client. Απαιτείται συγχρονισμός των ρολογιών, εφόσον χρησιμοποιούνται χρονικές ενδείξεις. Διαθεσιμότητα: απαιτούνται online έμπιστοι KDC και TGS. Key storage: short-term keys και ticket-granting tickets είναι αποθηκευμένα σε μη προστατευόμενους client hosts. Συνθηματικά: στις περισσότερες υλοποιήσεις το κλειδί μακράς διαρκείας μεταξύ Client και KDC (KKDC, C) βασίζεται σε ένα συνθηματικό που εισάγει ο χρήστης στην αρχή της συνόδου n n ΠΜΣ 36 / 2006 Επιθέσεις με χρήση λεξικού είναι δυνατές π. χ. : http: //citeseer. ist. psu. edu/wu 99 realworld. html Τελικά η ασφάλεια του συστήματος εξαρτάται από τους χρήστες και την ποιότητα των συνθηματικών. Ευπάθειες στον Κώδικα : κάθε τόσο βρίσκονται αρκετές: http: //web. mit. edu/kerberos/www/advisories/ Lecture 6 22
Single Sign On (SSO) n n ΠΜΣ 36 / 2006 O Kerberos είναι ένα παράδειγμα συστήματος Single Sign On (SSO). Ο χρήστης εισάγει ένα μόνο συνθηματικό για να αποκτήσει πρόσβαση σε πολλαπλές υπηρεσίες και εφαρμογές. Microsoft Passport: παράδειγμα web-based εφαρμογής SSO solution. Liberty Alliance: μία ανοικτή προσπάθεια δημιουργίας προτύπων για την επίτευξη μιας federated network identity, έννοιας που σχετίζεται με το SSO. Lecture 6 23
PGP - Pretty Good Privacy n Παρέχει σε μηνύματα υπηρεσίες n n Παρέχει Υπηρεσίες Key management n n n Generation, distribution, revocation of public/private keys Generation distribution of session keys Δεν απαιτεί την ύπαρξη κεντρικών Αρχών Πιστοποίησης (CA) n ΠΜΣ 36 / 2006 Αυθεντικοποίησης της πηγής προέλευσης Confidentiality Compression Κάθε κόμβος είναι CA Lecture 6 24
PGP - Pretty Good Privacy n Αναπτύχθηκε από τον Phil Zimmermann το 1991 (first version) n n n Open. PGP – RFC 2440 – n n www. ietf. org/html. charters/openpgp-charter. html Αν και μπορεί να χρησιμοποιηθεί για να κρυπτογραφήσει οποιαδήποτε δεδομένα, χρησιμοποιείται κυρίως για e-mail n ΠΜΣ 36 / 2006 Commercial version by PGP Corp. : www. pgp. com Freeware version : www. pgpi. org Υπάρχει ενσωματωμένο στους περισσότερους email clients Lecture 6 25
Αυθεντικοποίηση/ Κρυπτογράφηση στο PGP n n n Χρησιμοποιεί συνδυασμό ασύμμετρης και συμμετρικής κρυπτογραφίας Ο αποστολέας κρυπτογραφεί χρησιμοποιώντας συμμετρικούς αλγορίθμους και ένα κλειδί συνόδου το μήνυμα Το κλειδί συνόδου κρυπτογραφείται με το δημόσιο κλειδί του παραλήπτη και αποστέλλεται μαζί με το μήνυμα Ο παραλήπτης αποκρυπτογραφεί το κλειδί συνόδου χρησιμοποιώντας το ιδιωτικό του κλειδί Με το κλειδί συνόδου αποκρυπτογραφεί το μήνυμα Υποστηριζόμενοι αλγόριθμοι n n ΠΜΣ 36 / 2006 Συμμετρικοί: DES, 3 DES, AES, κλπ. Ασύμμετροι: RSA, El Gamal, κλπ. Lecture 6 26
Αυθεντικοποίηση/ Κρυπτογράφηση στο PGP Δημόσιο κλειδί παραλήπτη Κλειδί συνόδου Μήνυμα Ιδιωτικό κλειδί παραλήπτη Κρυπτογραφημένο κλειδί συνόδου Κλειδί συνόδου Αποκρυπτογράφηση Κρυπτογράφηση Μήνυμα Κρυπτογραφημένο μήνυμα ΠΜΣ 36 / 2006 Lecture 6 27
Διαχείριση Κλειδιών n Κάθε χρήστης μπορεί να έχει πολλά ζεύγη κλειδιών: ιδιωτικόδημόσιο n τα ζεύγη κλειδιών αποθηκεύονται σε κλειδοθήκες (key rings) n Private key ring n n Public key ring n n n Ποιο public key θα πιστοποιήσει μια υπογραφή ? Ποιο private key θα αποκρυπτογραφήσει το session key ? Μετάδοση όλου του public key είναι «σπατάλη» Σχετίζοντας ένα τυχαίο ID στο public key προκαλεί διαχειριστικό πρόβλημα PGP key ID: least significant 64 bits του public key n n ΠΜΣ 36 / 2006 Αποθηκεύει τα public keys που ανήκουν σε άλλους χρήστες Δυσκολίες n n Αποθηκεύει τα ζεύγη public– private keys που ανήκουν στον ιδιοκτήτη Σχεδόν σίγουρα μοναδικό για ένα χρήστη DEADBEEF attack Lecture 6 28
Διαχείριση Κλειδιών n Κάθε χρήστης έχει ένα πιστοποιητικό που πιστοποιεί την αντιστοιχία χρήστη-δημόσιου κλειδιού n n Τοπική έννοια «χρήστη» όχι καθολικό Χ. 500 Το πιστοποιητικό μπορεί να υπογράψει οποιοσδήποτε τρίτος «δέχεται» την αντιστοιχία αυτή n Υπάρχουν διάφορες διαβαθμίσεις εμπιστοσύνης σε αυτή την υπογραφή n n ΠΜΣ 36 / 2006 Όσες περισσότερες υπογραφές μαζεύει Ποιο το μοντέλο εμπιστοσύνης; Lecture 6 29
Web of Trust Owner Trust n Επίπεδα εμπιστοσύνης που τίθενται από χρήστη n Κάθε χρήστης μπορεί να αποκτήσει μία ή περισσότερες υπογραφές για το πιστοποιητικό του n n n ΠΜΣ 36 / 2006 αυξάνει την αξιοπιστία του Εάν ο χρήστης Α εμπιστεύεται το πιστοποιητικό του Β και ο Β εμπιστεύεται το πιστοποιητικό του Γ, τότε ο Α μπορεί να εμπιστευτεί το πιστοποιητικό του Γ Η αλυσίδα εμπιστοσύνης μπορεί να εξαρτάται από το βαθμό εμπιστοσύνης σε κάθε πιστοποιητικό ξεχωριστά Lecture 6 30
Web of Trust n Σε νεότερες εκδόσεις εισάγεται η έννοια των «υπογραφών εμπιστοσύνης» που μπορούν να υποστηρίξουν τη δημιουργία Αρχών Πιστοποίησης n n ΠΜΣ 36 / 2006 Η «υπογραφή εμπιστοσύνης» επιβεβαιώνει την αντιστοιχία κλειδιού-οντότητας και διαβεβαιώνει πως ο ιδιοκτήτης του κλειδιού είναι αρκετά έμπιστος να υπογράφει άλλα πιστοποιητικά Μία μορφή distributed CAs Lecture 6 31
Εναλλακτικές Υποδομές Δημόσιου Κλειδιού n Ψηφιακά Πιστοποιητικά n Συνδέουν ονόματα με κλειδιά n n n Δημόσια διαθέσιμες λίστες πιστοποιητικών δημιουργούν ένα τύπο «τηλεφωνικών» καταλόγων Kohnfelder (1978): n ΠΜΣ 36 / 2006 Δημόσια άμεσα, άρα και ιδιωτικά έμμεσα Εάν δεν υπάρχει άμεσος και αξιόπιστος τρόπος διαμοιρασμού των κλειδιών, καλύτερα να εμπιστευτούμε κάποια έμπιστη τρίτη οντότητα Lecture 6 32
Καθολικά Ονόματα n Χ. 500 και X. 509 n n Distinguished Name: ένα παγκόσμιο όνομα που χαρακτηρίζει μοναδικά μία οντότητα. Εύκολα υλοποιήσιμο σε μικρές κοινωνίες n n Μη εφικτό σε παγκόσμια κλίμακα n n ΠΜΣ 36 / 2006 Όλοι είναι γνωστοί με τα ονόματά τους Δεν υπάρχει παγκόσμιος κανόνας ονοματοδοσίας Πολλές εταιρίες δραστηριοποιούνται στο χώρο, δίνοντας η καθεμία ονόματα με διαφορετικό τρόπο Lecture 6 33
Πιστοποιητικό X. 509 ΠΜΣ 36 / 2006 Lecture 6 34
SPKI n n n ΠΜΣ 36 / 2006 Simple PKI Χρησιμοποιεί «τοπικά» ονόματα Δεν απαιτείται να είναι καθολικά μοναδικά Πρέπει να είναι μοναδικά στα πλαίσια της οντότητας που τα διαχειρίζεται Διευκολύνει τη δημιουργία λιστών ελέγχου πρόσβασης (ACL – Access Control Lists) Lecture 6 35
Ονοματολογία SDSI n n Simple Distributed Security Infrastructure Αναπτύχθηκε παράλληλα με το SPKI, και αργότερα ενοποιήθηκαν Σύμφωνα με το SDSI 2. 0 ένα βασικό όνομα αποτελείται από 2 στοιχεία: τη λέξη name και το όνομα π. χ. n george: (name fred) n n Σύνθετα ονόματα n n ΠΜΣ 36 / 2006 Ο george oρίζει το όνομα fred: (name sam) george: (name fred sam) Lecture 6 36
Διεθνοποίηση Ονομάτων SDSI n n n Κάποιες εφαρμογές απαιτούν παγκοσμίως μοναδικά ονόματα Στην ασύμμετρη κρυπτογραφία έχουμε ήδη ένα μοναδικό χαρακτηριστικό: το ιδιωτικό κλειδί Κάθε ιδιωτικό κλειδί σχετίζεται μοναδικά με το αντίστοιχο δημόσιο Υπολογιστικά η σύνοψη του δημόσιου κλειδιού είναι επίσης μοναδική Ένα όνομα SDSI παίρνει τη μορφή: n n ΠΜΣ 36 / 2006 (name (ΣύνοψηΚλειδιούΕκδότη) Όνομα) π. χ. : (name (|TLCg. PLFl. GTzg. Ubca. YLW 8 k. GTEn. Uk=|) jim) Lecture 6 37
Πιστοποιητικά SPKI n Πιστοποιητικά Ονομάτων n n n Πιστοποιούν ότι ένα όνομα ανήκει στον εκδότη του πιστοποιητικού Δίνουν συμβολικά ονόματα σε κλειδιά ή ομάδες κλειδιών C: (K, A, S, V) n n n ΠΜΣ 36 / 2006 K: Το δημόσιο κλειδί του εκδότη Α: Τοπικό όνομα S: Όνομα ή Κλειδί που προσδίδει επιπλέον χαρακτηριστικά στο συγκεκριμένο Όνομα V: Διάρκεια ισχύος Το πιστοποιητικό υπογράφεται ψηφιακά από τον εκδότη Lecture 6 38
Πιστοποιητικά SPKI (2) n Πιστοποιητικά Αυθεντικοποίησης n n n Αυθεντικοποιούν ένα χρήστη Αντιστοιχούν συγκεκριμένα δικαιώματα σε κλειδιά ή ομάδες κλειδιών C: (K, S, d, T, V) n n n ΠΜΣ 36 / 2006 K: Το δημόσιο κλειδί του εκδότη, ο οποίος αυθεντικοποιεί τον χρήστη S: Το υποκείμενο που αυθεντικοποιείται d: delegation bit: Δίνει δικαίωμα μεταφοράς των συγκεκριμένων δικαιωμάτων και σε άλλα κλειδιά του ίδιου χρήστη T: Δικαιώματα που δίνονται V: Διάρκεια ισχύος Lecture 6 39
X 9. 68 Domain Certificates n ANSI 2001: n n n Χωρίζει ένα PKI σε domains Χρησιμοποιεί τοπικά ονόματα στα domains n n κατ’ αναλογία με SPKI Επιβάλλει αυστηρούς συντακτικούς κανόνες n n ΠΜΣ 36 / 2006 Digital Certificates for Mobile/Wireless and High Transaction Volume Financial Systems περιορίζει το μέγεθος των πιστοποιητικών και απλουστεύσει την επεξεργασία τους Lecture 6 40
X. 509 vs X 9. 68 n X. 509: Ένα πιστοποιητικό περιλαμβάνει: n n Όνομα εκδότη (distinguished name) Σειριακός Αριθμός Όνομα κατόχου (distinguished name) X 9. 68: Τα παραπάνω αντικαθίστανται από δύο πεδία: n n Πλεονεκτήματα X 9. 68 n n ΠΜΣ 36 / 2006 root. Name: καθορίζει τον ιδιοκτήτη του πιστοποιητικού ρίζας του domain local. Name: λίστα ονομάτων που σχηματίζουν μία ιεραρχία, όπως τα σύνθετα ονόματα SDSI. Το δεξιότερο όνομα είναι το όνομα του κατόχου Μικρότερο μέγεθος επειδή δε χρησιμοποιούνται DNs Ευκολία στη δημιουργία της αλυσίδας εμπιστοσύνης Lecture 6 41
Personal PKI n n Δίκτυα Προσωπικών Επικοινωνιών (Personal Area Networks – PAN) Οι χρήστες τους δεν έχουν τρόπο n n n Μπορεί να υλοποιηθεί μία περιορισμένη υποδομή PKI n n ΠΜΣ 36 / 2006 Να ανταλλάξουν μυστικά συμμετρικά κλειδιά Να προμηθευτούν δημόσια κλειδιά από μία κεντρική υποδομή PKI Θεωρούμε ότι ένας κόμβος λειτουργεί σαν Personal CA O Personal CA εκδίδει πιστοποιητικά για όλους τους χρήστες του δικτύου Lecture 6 42
Προβλήματα στο Personal PKI n Ανανέωση Πιστοποιητικών και Κλειδιών n n Ανάκληση Πιστοποιητικών n n Το ιδιωτικό κλειδί ενός χρήστη μπορεί να κλαπεί Το ιδιωτικό κλειδί της Personal CA μπορεί να κλαπεί Σε κάθε περίπτωση όλοι οι χρήστες του δικτύου πρέπει να ενημερωθούν Διαχείριση εμπιστοσύνης n n n ΠΜΣ 36 / 2006 Όταν παρέλθει η ημερομηνία λήξης του πιστοποιητικού αυτό πρέπει να ανανεωθεί Η Personal CA πρέπει να είναι καθολικά έμπιστη Πρέπει να υποστηρίζεται η ανανέωση κλειδιού της Personal CA Η συσκευή που εκτελεί χρέη Personal CA μπορεί να κλαπεί ή να χαθεί Lecture 6 43
Υλοποίηση n Πρωτόκολλο ανταλλαγής δημόσιων κλειδιών για την έκδοση πιστοποιητικών χρηστών. n n n Η Personal CA συλλέγει όλα τα δημόσια κλειδιά-πιστοποιητικά των χρηστών. Μόλις κάποιο λήξει ενημερώνει τον χρήστη και εκδίδει νέο αν κάτι τέτοιο απαιτείται Ανάκληση πιστοποιητικών n n n Απαιτεί φυσική επαφή χρήστη-Personal CA για να εισάγει ένα αναγνωριστικό της συσκευής Μονίμως online Personal CA: OCSP Κατά περιόδους offline CA: περιοδικός διαμοιρασμός CRLs Ανανέωση κλειδιών ρίζας n n Διαμοιρασμός νέου πιστοποιητικού ρίζας υπογεγραμμένο με το παλιό κλειδί Σε περίπτωση κλοπής n n ΠΜΣ 36 / 2006 χρήση πολλαπλών Personal CA Επιλογή νέας Personal CA Lecture 6 44
Απαιτήσεις n n ΠΜΣ 36 / 2006 Το ζεύγος κλειδιών της Personal CA πρέπει να έχει δημιουργηθεί στη συσκευή ή να έχει τοποθετηθεί με ασφάλεια στη συσκευή κατά την κατασκευή της Η παρακολούθηση από τρίτους των μηνυμάτων που ανταλλάσσονται δε θα πρέπει να οδηγεί στην αποκάλυψη μυστικής πληροφορίας Κανένας ωτακουστής δε θα πρέπει να μπορεί να τροποποιήσει τα μηνύματα μεταξύ κόμβων και Personal CA με τρόπο τέτοιο, ώστε να δημιουργηθεί ένα πιστοποιητικό για λανθασμένη συσκευή, ή να περιέχει μη έγκυρα στοιχεία (π. χ. διαφορετικό δημόσιο κλειδί) Η επικοινωνία που χρειάζεται για να μεταδοθεί το root certificate της Personal CA στους κόμβους του δικτύου θα προστατεύεται τουλάχιστον από ένα «ασθενές» κοινό μυστικό (π. χ. ένα password ή PIN). Η μέθοδος που θα χρησιμοποιείται για το σκοπό αυτό θα πρέπει να είναι ανθεκτική σε επιθέσεις τύπου “brute force” Lecture 6 45
0e966acae824e56498bd3bc209cfcce2.ppt