Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων SSL/TLS

Σχετικά έγγραφα
Ρ ΓΑ Σ Τ Ή Ρ Ι Ο 8 Α Σ Φ Ά Λ Ε Ι Α Σ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Ώ Ν Σ Υ Σ Τ Η Μ ΆΤ Ω Ν

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

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

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

Ασφάλεια στο WWW SSL/TLS

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

Σχεδιασμός Εικονικών Δικτύων Ενότητα 6: Εικονικά Ιδιωτικά Δίκτυα Επιπέδου Μεταφοράς - Secure Sockets Layer (SSL) / Transport Layer Security (TLS)

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

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

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

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

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

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

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

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

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

ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Διαχείριση Ασφαλείας (Ι) Απειλές Ασφαλείας Συμμετρική & Μη-Συμμετρική Κρυπτογραφία

Ανάλυση Δικτυακής Κίνησης Πρωτοκόλλων Υπηρεσιών. Ασφάλεια Δικτύων. (4 η άσκηση) Διαχείριση Δικτύων - Ευφυή Δίκτυα, 9 ο Εξάμηνο,

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

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

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

Κεφάλαιο 22. Πρωτόκολλα και πρότυπα ασφαλείας του Διαδικτύου

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

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

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

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

Β. Μάγκλαρης 30/11/2015

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

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

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

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

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

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

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

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

Περιεχόµενα. Ασφάλεια σε επίπεδο µεταφοράς και εφαρµογών SSL / TLS SSH. Ασφάλεια ικτύων, Τµήµα Πληροφορικής, Ο.Π.Α., ρ. Ι.

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

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

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

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

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

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

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

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

γ. Αυθεντικότητα (authentication) δ. Εγκυρότητα (validity) Μονάδες 5

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

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

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

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

Π Α Ν Ε Π Ι Σ Τ Η Μ Ι Ο Π ΑΤ Ρ Ω Ν

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

ΔΙΚΤΥΑ ΔΗΜΟΣΙΑΣ ΧΡΗΣΗΣ ΚΑΙ ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ Ενότητα #11: Ασφάλεια δικτύων

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

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

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

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

Σχεδιασμός Εικονικών Δικτύων Ενότητα 4α: VPN on IPSec

Διαδικασία έκδοσης ψηφιακού πιστοποιητικού για το ΤΕΙ Κρήτης

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

6/1/2010. Ασφάλεια Ασύρματων & Κινητών Επικοινωνιών. Περιεχόμενα. Εισαγωγή /1 IEEE

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

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

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

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

ΔΙΚΤΥΑ ΔΗΜΟΣΙΑΣ ΧΡΗΣΗΣ ΚΑΙ ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ Ενότητα #11: Ασφάλεια δικτύων

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

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

8.3 Ασφάλεια ικτύων. Ερωτήσεις

Περιεχόμενα. Πλευρές Ασφάλειας Ιδιωτικό Απόρρητο. Ψηφιακή Υπογραφή. Ψηφιακά Πιστοποιητικά Τα πρωτόκολλα SSL και SET

6.2 Υπηρεσίες Διαδικτύου

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

SOS Ερωτήσεις Δίκτυα Υπολογιστών ΙΙ

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

ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ. ΔΙΑΧΕΙΡΙΣΗ ΑΣΦΑΛΕΙΑΣ: SSL/TLS, , Firewalls, IDS. Β. Μάγκλαρης

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

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

Αυθεντικότητα Μηνυμάτων Συναρτήσεις Hash/MAC

CVE the SSL Heartbleed bug. SSL Renegotiation Attack

Σύνταξη κειμένου : Γεώργιος Μαμαλάκης, MSc Επιμέλεια κειμένου : Κωνσταντίνος Βασιλάκης, PhD

Ασφάλεια Ασύρματων & Κινητών Επικοινωνιών

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

Κεφάλαια 2&21. Συναρτήσεις κατακερματισμού Πιστοποίηση ταυτότητας μηνυμάτων

Η μαζική αποστολή sms ( Bulk sms ) μπορεί να χρησιμοποιηθεί με εκατοντάδες τρόπους από διάφορες κατηγορίες επαγγελματιών.

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

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 5 ΣΕΛΙ ΕΣ

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

Υλοποίηση σχημάτων ασφαλείας σε ασύρματα δίκτυα

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

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Κεφάλαιο 7 Διαδικτύωση-Internet. 7.2 Τεχνολογία TCP/IP

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

Ασφάλεια (PGP)

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

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

Τ.Ε.Ι ΜΕΣΟΛΟΓΓΙΟΥ ΤΜΗΜΑ Ε.Π.Δ.Ο ΣΠΟ ΥΔΑΣΤΡΙΑ ΕΛΕΝΗ ΖΕΡΒΟΥ ΘΕΜΑ (ΚΡΥΠΤΟΓΡΑΦΙΑ, ΤΑΥΤΟΤΗΤΕΣ, ΠΙΣΤΟΠΟΙΗΤΙΚΑ) ΕΦΑΡΜΟΓΕΣ ME SSL ΚΑΙ PGP

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

Τεχνολογία Ηλεκτρονικού Εμπορίου. 9η διάλεξη: Ασφάλεια ιαδικτυακών Συναλλαγών και Ηλεκτρονικού Εμπορίου II (EC Security II) Χρήστος Γεωργιάδης

Ασφάλεια ικτύων (Computer Security)

Transcript:

Εργαστήριο Ασφάλεια Πληροφοριακών Συστημάτων SSL/TLS Fysarakis Konstantinos, PhD kfysarakis@staff.teicrete.gr

» Το SSL (Secure Sockets Layer) αναπτύχθηκε από την εταιρεία Netscape. Η έκδοση 1.0 δεν παρουσιάστηκε ποτέ δημόσια.» Το κοινό γνώρισε το SSL στην έκδοση 2.0 το 1994, μαζί με τον browser της εταιρείας, Netscape Navigator.» Εξαιτίας κάποιων θεμάτων ασφαλείας το 1995 παρουσιάστηκε η έκδοση 3.0.

» Από το 1996 ο έλεγχος του πρωτοκόλλου πέρασε στην IETF (Internet Engineering Task Force) η οποία το 1999 παρουσίασε το TLS (Transport Layer Security) v1.0 με το RFC 2246, το οποίο αποτελεί και το internet standard.

» Το TLS v1.0 αναβαθμίζει και αντικαθιστά το SSL v3.0, διατηρώντας, σε κάποιο βαθμό, την προς τα πίσω συμβατότητα με αυτό.» Το 2006 αναβαθμίζεται στην έκδοση 1.1 (RFC 4346) ενώ η τρέχουσα έκδοση είναι η 1.2 (RFC 5246) που παρουσιάστηκε το 2008.

» To SSL/TLS λειτουργεί επάνω από το επίπεδο Μεταφοράς (Transport Layer Επίπεδο 5 στο μοντέλο OSI). Στο επόμενο σχήμα φαίνεται η αντίστοιχη θέση στο μοντέλο TCP/IP.

» Από τα κατώτερα στρώματα απαιτεί συνήθως αξιόπιστη σύνδεση (π.χ. TCP, DTLS), παρόλο που υπάρχουν και υλοποιήσεις με χρήση UDP, ενώ δεν θέτει περιορισμό στα ανώτερα στρώματα.» Λόγω της θέσης του, το SSL μπορεί να αξιοποιηθεί από ένα πλήθος εφαρμογών με αόρατο στον χρήστη τρόπο. Χαρακτηριστικά παραδείγματα τέτοιων εφαρμογών είναι τα: HTTP, FTP, Telnet, VPNs κ.α.

» Στο επόμενο σχήμα φαίνεται ένα παράδειγμα ασφαλούς επικοινωνίας HTTP με χρήση του SSL.» Στο URL η διεύθυνση ξεκινάει με https αντί του τυπικού http ενώ στο status bar, κάτω δεξιά, υπάρχει το χαρακτηριστικό εικονίδιο-λουκέτο.

» Στο RFC 5246 που ορίζει το TLS v1.2 διαβάζουμε: The primary goal of the TLS protocol is to provide privacy and data integrity between two communicating applications.

» Το SSL/TLS με τους μηχανισμούς που χρησιμοποιεί μπορεί να προσφέρει εμπιστευτικότητα, αυθεντικοποίηση και ακεραιότητα στην επικοινωνία δύο εφαρμογών.»δεν μπορεί να προσφέρει, όμως, μηαποποίηση (non-repudiation).

» Το SSL/TLS είναι ένα υβριδικό πρωτόκολλο. Χρησιμοποιεί κρυπτογραφία δημοσίου κλειδιού για την αυθεντικοποίηση και την δημιουργία των κλειδιών ενώ για να εγγυηθεί την εμπιστευτικότητα του κύριου όγκου της μεταδιδόμενης πληροφορίας χρησιμοποιεί συμμετρικούς αλγορίθμους.» Για την ακεραιότητα των μηνυμάτων χρησιμοποιούνται κώδικες MAC (Message Authentication Code).

» Οι «σουίτες» των κρυπτογραφικών εργαλείων που υποστήριζε το SSL είναι αρκετές.» Πιο συγκεκριμένα, για την κρυπτογράφηση των δεδομένων υποστηρίζονταν οι παρακάτω: DES 3DES DES 40 IDEA RC2 40 RC4 128 RC4 40 Fortezza

» Οι εκδόσεις του TLS επεκτείνουν την συμβατότητα του πρωτοκόλλου με αρκετούς ακόμη αλγορίθμους, πιο σύγχρονους και ασφαλείς (π.χ. AES, Camellia, SEED).» Για τα MAC που χρησιμοποιούνται στο πρωτόκολλο είχε επιλεγεί η χρήση SHA-256.

» Τέλος, ενημερωτικά αναφέρεται ότι για την ανταλλαγή των κλειδιών υποστηρίζονται διάφοροι μηχανισμοί όπως: DHE_DSS DHE_RSA DH_DSS DH_RSA RSA RSA_SHA

» Αξίζει να σημειωθεί ότι για όλα τα παραπάνω μπορεί το SSL/TLS να ρυθμιστεί ώστε να χρησιμοποιεί τις αντίστοιχες EXPORT εκδόσεις που είναι λιγότερο ασφαλείς (κλειδιά περιορισμένου μήκους bits) ώστε να πληρεί τους παλαιότερους αυστηρούς νόμους περί εξαγωγής κρυπτογραφίας από τις ΗΠΑ σε τρίτες χώρες.

» To SSL αποτελείται, επί της ουσίας, από δύο βασικά υπο-πρωτόκολλα, τα: Handshake Protocol. Record Protocol»...και δύο «επικουρικά», τα: Alert Protocol Change Cipher Spec Protocol

» Το Handshake Protocol, όπως μαρτυρά και το όνομά του, είναι ένα πρωτόκολλο «χειραψίας» Χρησιμοποιείται για την συμφωνία/αρχικοποίηση όλων των ρυθμίσεων (κλειδιών, αλγορίθμων κλπ.) που είναι απαραίτητες για την επικοινωνία των δύο κόμβων (client/server) που θέλουν να επικοινωνήσουν με ασφάλεια μέσω του SSL.» Αυτό που προκύπτει μετά το πέρας της παραπάνω διαδικασία είναι η εγκατάσταση ενός SSL Session.

» Το Record Protocol, από την άλλη, είναι υπεύθυνο για τη σύνδεση των κόμβων (SSL Connection) και χρησιμοποιείται για την μετάδοση του κύριου όγκου των δεδομένων και περιλαμβάνει όλους τους μηχανισμούς κατακερματισμού, κρυπτογράφησης και ελέγχου της ακεραιότητας της πληροφορίας.

» Εδώ θα πρέπει να τονιστεί η διαφορά μεταξύ των SSL Session και SSL Connection.» Το πρώτο εγκαθίσταται στην αρχή της επικοινωνίας δύο κόμβων μέσω του Handshake Protocol και αφορά τα κρυπτογραφικά χαρακτηριστικά της ασφαλούς επικοινωνίας που θα ακολουθήσει.» Με το session που δημιουργείται, αποφεύγεται η συνεχής επανάληψη αυτών των σύνθετων και υπολογιστικά «ακριβών» διαδικασιών.

» Το SSL Connection, από την άλλη, αφορά τη μεταφορά των δεδομένων και είναι άμεσα εξαρτώμενο από ένα SSL Session.» Μεταξύ ενός client κι ενός server μπορεί να υπάρχουν πολλαπλά SSL Connections αλλά συνήθως μόνο ένα SSL Session.

» Το Handshake Protocol επιτρέπει στον κόμβο διακομιστή (server) και στον κόμβο πελάτη (client) να αυθεντικοποιήσουν ο ένας τον άλλο και να συμφωνήσουν στις ρυθμίσεις (κρυπτογραφικούς αλγορίθμους, μήκος κλειδιών κλπ.) που θα χρησιμοποιήσουν, πριν ακόμα η εφαρμογή και το πρωτόκολλο που χρησιμοποιεί (HTTP, FTP, Telnet κλπ.) μεταδώσει το πρώτο του byte.

» Αυτή η αρχική επικοινωνία του Handshake Protocol γίνεται χωρίς καμμία κρυπτογράφηση, δηλαδή σε απλό plaintext.

» Τρεις είναι οι βασικοί στόχοι του Handshake Protocol: Συμφωνία σε κοινό μυστικό - κάτι απαραίτητο για τη συμμετρική κρυπτογράφηση που θα ακολουθήσει. + Με τρόπο που δεν θα αποκαλύπτει το μυστικό σε κάποιον που «κρυφακούει» τα μηνύματα αυτά. Αυθεντικοποίηση/πιστοποίηση των κόμβων. + Με χρήση κρυπτογραφίας Δημοσίου Κλειδιού. Ψηφιακό Πιστοποιητικό για τον server (προαιρετικό αλλά χρησιμοποιείται πάντα) Ψηφιακό Πιστοποιητικό για τον client (προαιρετικό και χρησιμοποιείται σπάνια) Διαπραγμάτευση και συμφωνία στους κρυπτογραφικούς αλγορίθμους που θα χρησιμοποιηθούν.

» Αναλυτικά, η «χειραψία» των δύο κόμβων (πελάτη και δρομολογητή) έχει ως εξής:

1. Αρχικά ο client στέλνει στον server την έκδοση του SSL που χρησιμοποιεί, τους επιθυμητούς αλγορίθμους κρυπτογράφησης και μερικά δεδομένα που έχουν παραχθεί τυχαία (τυχαίο 32-byte αριθμό καθώς και ένα session-id). 2. Ο server απαντά στέλνοντας παρόμοιες πληροφορίες συμπεριλαμβανομένου του αλγόριθμου κρυπτογράφησης που επέλεξε (από αυτά που «πρότεινε» ο client αρχικά) καθώς και του ψηφιακού πιστοποιητικού του, το οποίο τον πιστοποιεί στον client. + Προαιρετικά μπορεί να ζητήσει και το ψηφιακό πιστοποιητικό του client.

3. Ο client λαμβάνει το ψηφιακό πιστοποιητικό του server και το χρησιμοποιεί για να τον πιστοποιήσει. 4. Ο client δημιουργεί το συμμετρικό κλειδί που θα χρησιμοποιηθεί στον αλγόριθμο κρυπτογράφησης και το στέλνει στον server κρυπτογραφημένο, χρησιμοποιώντας την τεχνική κρυπτογράφησης δημοσίου κλειδιού. 5. Ο client στέλνει ένα μήνυμα στον server ενημερώνοντάς τον ότι είναι έτοιμος να ξεκινήσει την κρυπτογραφημένη σύνδεση.

6. Ο server στέλνει ένα μήνυμα στον client ενημερώνοντάς τον ότι και αυτός είναι έτοιμος να ξεκινήσει την κρυπτογραφημένη σύνδεση. 7. Από εδώ και πέρα η χειραψία έχει ολοκληρωθεί και τα μηνύματα που ανταλλάσσουν τα δύο μηχανήματα (client - server) είναι κρυπτογραφημένα.

» Το Record Protocol παρέχει ασφαλή σύνδεση και, κατ επέκταση, επικοινωνία με δύο βασικά χαρακτηριστικά:

» Η σύνδεση είναι εμπιστευτική. Χρησιμοποιούνται συμμετρικοί αλγόριθμοι για την κρυπτογράφηση των δεδομένων. Τα κλειδιά αυτής της συμμετρικής κρυπτογράφησης είναι μοναδικά για κάθε σύνδεση. +Σημείωση: Το Record Protocol μπορεί να λειτουργήσει και χωρίς κρυπτογράφηση.

» Η σύνδεση είναι αξιόπιστη. Η μεταφορά των μηνυμάτων περιλαμβάνει μηχανισμούς ελέγχου της ακεραιότητας τους και συγκεκριμένα συναρτήσεις MAC με κλειδιά (keyed MACs). Ασφαλείς συναρτήσεις κατακερματισμού (MD5, SHA κλπ.) χρησιμοποιούνται για τον υπολογισμό των MACs. +Σημείωση: Το Record Protocol μπορεί να λειτουργήσει και χωρίς MACs.

» To SSL/TLS είναι από τα πιο πετυχημένα και διαδεδομένα πρωτόκολλα ασφαλείας σήμερα. Θα πρέπει να είναι ήδη καθαρό ότι η χρήση του αφορά καθαρά την ασφάλεια κατά τη μετάδοση.» Συγκεκριμένα, το μοντέλο που χρησιμοποιήθηκε κατά την ανάπτυξη του πρωτοκόλλου ήταν αυτό της ασφαλούς μετάδοσης αριθμών πιστωτικών καρτών μέσω του Internet.

» Το πρωτόκολλο θεωρείται εξαιρετικά ασφαλές όσο αφορά εμπιστευτικότητα και την ακεραιότητα των μηνυμάτων.» Από την άλλη, το SSL/TLS δεν μπορεί να προσφέρει μη-αποποίηση για τα μηνύματα αυτά ενώ δεν προσφέρει και καμμία εγγύηση για το τι γίνεται στον server με τα δεδομένα αυτά.

» Ο αριθμός της πιστωτικής μας κάρτας προστατεύεται από το SSL κατά την μετάδοση αλλά αν το ηλεκτρονικό κατάστημα που επιλέξαμε αποθηκεύει στη συνέχεια τους αριθμούς των πιστωτικών αυτών σε μία μη ασφαλή βάση δεδομένων αυτό δεν είναι πρόβλημα που μπορεί να αντιμετωπίσει το SSL ούτε, φυσικά, οφείλεται σε αυτό.

» Ένα ακόμα σημείο που χρήζει προσοχής είναι αυτό της αυθεντικοποίησης των κόμβων και ειδικότερα αυτό της αξιολόγησης των πιστοποιητικών. Στην περίπτωση που ένα πιστοποιητικό έχει λήξει ή φαίνεται ύποπτο (π.χ. έχει εκδοθεί για διαφορετικό URL από αυτό του server που το παρουσίασε), ο browser που βρίσκεται εγκατεστημένος στον κόμβο-client εμφανίζει ένα μήνυμα προειδοποίησης στον χρήστη.

» Ο χρήστης έχει την επιλογή, παρά την προειδοποίηση, να προχωρήσει με την αρχικοποίηση της ασφαλούς επικοινωνίας με τον «ύποπτο» server.» Το SSL δεν μπορεί να βοηθήσει σε αυτή την περίπτωση και η τελική επιλογή ανήκει στον χρήστη - ο οποίος μπορεί να μη διαθέτει τις γνώσεις για να πάρει τη σωστή απόφαση. Άρα, ο χρήστης ενδέχεται να επιλέξει να μεταδώσει σημαντικές πληροφορίες σε κάποιο server που ανήκει σε κακόβουλους χρήστες (π.χ. phishing).

» Άλλες απειλές για την ασφάλεια της επικοινωνίας μέσω SSL/TLS είναι οι επιθέσεις Man-In-The-Middle, επιθέσεις που περιλαμβάνουν την ανάλυση της κίνησης των δεδομένων (traffic analysis), επιθέσεις χρονισμού (timing attacks), επιθέσεις όπου ο browser αναγκάζεται να χρησιμοποιήσει λιγότερο ασφαλείς αλγορίθμους ή αδύναμα κλειδιά κ.α.

» Τέλος, πέρα από τα ζητήματα ασφαλείας, υπάρχει και το πρόβλημα της ταχύτητας.» Η επικοινωνία είναι πιο αργή σε σχέση με την ταχύτητα που έχει το ίδιο πρωτόκολλο/εφαρμογή χωρίς χρήση SSL. Η καθυστέρηση οφείλεται κυρίως στο Handshake Protocol.

» Υπάρχει πληθώρα βιβλιοθηκών ανοικτού λογισμικού που (θα πρέπει να) χρησιμοποιούνται όταν θέλουμε να ενσωματώσουμε το SSL/TLS σε μία υπό ανάπτυξη εφαμοργή. PolarSSL, CyaSSL, OpenSSL, MatrixSSL, NSS, GnuTLS etc.» αλλά χρειάζεται *προσοχή* στην χρήση τους Κατανόηση σημασίας παραμέτρων, επιλογών, return values συναρτήσεων κλπ.

» Παρουσίαση των ρυθμίσεων ασφαλείας του SSL/TLS στους δημοφιλείς browsers (Internet Explorer, Firefox, Opera).» Εισαγωγή στις ρυθμίσεις του Apache για χρήση SSL/TLS.