SSL
SSL ist die Abkürzung für Secure Sockets Layer

Ein kryptografisches Protokoll, das für die sichere Kommunikation über das Internet entwickelt wurde. Es wurde weitgehend durch seinen Nachfolger ersetzt, TLS (Transport Layer Security), sondern der Begriff SSL wird immer noch häufig zur Bezeichnung beider Protokolle verwendet. SSL bietet drei wesentliche Sicherheitseigenschaften:
- Vertraulichkeit: Die zwischen Client und Server ausgetauschten Daten werden verschlüsselt, sodass sie nicht von Unbefugten gelesen werden können.
- Integrität: SSL verwendet Nachrichtenauthentifizierungscodes, um zu erkennen, ob die Daten während der Übertragung geändert wurden.
- Authentifizierung: Die Identität des Servers wird durch sein SSL-Zertifikat überprüft, wodurch sichergestellt wird, dass der Client mit dem vorgesehenen Server kommuniziert.
Wie funktioniert SSL?
- Handshake: Wenn ein Client (z. B. ein Webbrowser) eine Verbindung zu einem Server (z. B. einer Website) herstellt, initiiert er einen Handshake-Prozess. Der Client sendet eine Nachricht an den Server, in der er die unterstützte SSL-Version und eine Liste der kryptografischen Algorithmen angibt, die er verwenden kann.
- Serverzertifikat: Der Server antwortet mit seinem SSL-Zertifikat, das den öffentlichen Schlüssel des Servers und andere identifizierende Informationen enthält. Dieses Zertifikat wird normalerweise von einer vertrauenswürdigen Zertifizierungsstelle eines Drittanbieters ausgestellt (CA), der die Identität des Servers überprüft.
- Zertifikatsüberprüfung: Der Client überprüft das Zertifikat des Servers, indem er prüft, ob es von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt wird und ob der Hostname des Zertifikats mit dem Hostnamen des Servers übereinstimmt. Dieser Schritt stellt sicher, dass der Client mit dem vorgesehenen Server und nicht mit einem Betrüger kommuniziert.
- Schlüsselaustausch: Wenn das Zertifikat gültig ist, generiert der Client einen zufälligen Sitzungsschlüssel, verschlüsselt ihn mit dem öffentlichen Schlüssel des Servers (aus dem Zertifikat erhalten) und sendet ihn an den Server. Nur der Server kann diese Nachricht mit seinem privaten Schlüssel entschlüsseln und so sicherstellen, dass der Sitzungsschlüssel sicher bleibt.
- Sichere Kommunikation: Client und Server können mit dem eingerichteten Sitzungsschlüssel sicher kommunizieren. Mithilfe des Sitzungsschlüssels verschlüsseln und entschlüsseln sie alle zwischen ihnen ausgetauschten Daten und verhindern so Abhören und Manipulation.
- Ende der Sitzung: Wenn die Kommunikation abgeschlossen ist, wird die Sitzung beendet und der Sitzungsschlüssel verworfen.
SSL wird häufig zum Sichern von Websites verwendet (HTTPS), E-Mail-Kommunikation (SMTPS, IMAPS) und andere Anwendungen, die eine sichere Datenübertragung über das Internet erfordern.