Datensicherheit und Verschlüsselung sind wichtige Themen bei allem, was du online tust. Für die sichere Kommunikation zwischen Browser und Server wird das HTTPS-Protokoll verwendet. Wir erklären, was die Abkürzung bedeutet und wie eine HTTPS-Verbindung funktioniert.
HTTPS steht für HyperText Transfer Protocol Secure. Das Secure ist der Knackpunkt. Im Vergleich zum vorherigen Übertragungsstandard HTTP werden die Daten mit HTTPS gesichert und verschlüsselt übertragen.
Diese Verschlüsselung greift bei jeglicher Kommunikation zwischen einem Webbrowser (Client) und einem Server. Ziele dieser Kommunikation sind die korrekte Darstellung von Webseiten, die sichere Übertragung von Formulardaten sowie eine Reihe an Funktionen, die beim Surfen wichtig sind.
Zwar bietet HTTPS keinen hundertprozentigen Schutz, die Gefahr durch Internetkriminalität und Datendiebstahl sinkt jedoch erheblich.
Wie funktioniert HTTPS?
Das sichere HTTP-Protokoll HTTPS beruht auf den zwei Säulen Verschlüsselung und Authentifizierung:
- Daten werden verschlüsselt zwischen Server und Client übertragen – mehrstufig und bei jeder Anfrage bzw. jedem Kommunikationsschritt.
- Der Server muss über ein Zertifikat beweisen, dass es sich tatsächlich um den Server handelt, den der Client angefragt hat und auf dem sich die anvisierte Website befindet.
Die Verschlüsselung verwendet einen End-to-End-Ansatz: Nur Client und Server verfügen über den Schlüssel zu den Klardaten. Zwischenstationen besitzen diesen Schlüssel nicht.
Grundlage ist das Verschlüsselungsprotokoll SSL/TLS. SSL (Secure Sockets Layer) ist die Basisversion, TLS (Transport Layer Security) ihre heute gängige Weiterentwicklung.
SSL/TLS schaltet sich zwischen das allgemeine Übertragungsprotokoll HTTP und das Übertragungsprotokoll TCP, das die Art und Weise der Übertragung festlegt. Oder, stark vereinfacht gesagt:
HTTP + SSL/TLS + TCP = HTTPS
Wie verschlüsselt HTTPS die Datenübertragung?
Die HTTPS-Verbindung beruht auf einer mehrstufigen Verschlüsselungstaktik, bei der man vor lauter Schlüsseln das Schloss nicht sieht. Genau darum geht es. Die Sicherheit über einen HTTPS-Port (TCP-Port 403) wird auf mehreren Ebenen realisiert:
- Client und Server begrüßen sich: Die Anfrage vom Client an den Server heißt Client Hello. Die Antwort heißt Server Hello.
- Beim Server Hello schickt der Antwortende parallel sein Zertifikat sowie einen öffentlichen Schlüssel für die gemeinsame Sitzung mit. (Server Key Exchange)
- Erkennt der Client das Zertifikat als gültig an (Validierung), erzeugt er einen korrespondierenden Sitzungsschlüssel.
- Den öffentlichen Schlüssel des Servers verwendet der Client, um seinen Sitzungsschlüssel zu verschlüsseln. Das Ergebnis schickt er dann an den Server (Client Key Exchange).
- Der Server wiederum nutzt seinen privaten Schlüssel, um den vom Client erzeugten Schlüssel erneut zu entschlüsseln und einen „geheimen“ Sitzungskanal zu etablieren.
Alle weiteren Anfragen und Antworten zwischen Server und Client werden nach ähnlichem Prinzip permanent gesichert.
Wie sicher ist HTTPS?
Für viele Client-Server-Interaktionen ist HTTPS unverzichtbar – etwa beim Onlineshopping oder Onlinebanking. Das heißt aber nicht, dass alle Webseiten nach diesem Prinzip verschlüsselt sind. Und nur, weil ein Server mit Zertifikat und Schlüssel aufwartet, bedeutet dies noch nicht, dass die Verbindung wirklich sicher ist.
Dazu muss der Client (also beispielsweise der Browser) zuverlässig prüfen können, ob das Server-Zertifikat (noch) gültig ist. Diese Validierung erfolgt über OCSP (Online Certificate Status Protocol) bei der zuständigen Zertifizierungsstelle.
Viele Browser hinken bei OCSP allerdings hinterher. Nach einer Weile ohne Antwort von der Zertifizierungsstelle wird das Zertifikat auch ungeprüft akzeptiert. Auf der anderen Seite können sich Dritte anderweitig in die Verschlüsselung einklinken oder den Schlüsselcode herausbekommen.
HTTPS macht es ihnen jedoch schwer und den Prozess wesentlich aufwendiger. Damit sinkt zumindest die Wahrscheinlichkeit, dass Seiten angegriffen werden, bei denen das Verhältnis von Nutzen und Aufwand aus Hackersicht mit HTTPS zu groß wird.
Fazit
Auch wenn es keine eierlegende Wollmilchsau bei der sicheren Datenübertragung im Internet gibt, ist das Protokoll HTTPS nach heutigem Standard zumindest schon sehr nah dran.
Das „HTTPS“ am Anfang einer URL wird deshalb zunehmend zum Ausschlusskriterium, ob ein Nutzer eine bestimmte Webseite besuchen will oder nicht. So mancher Seitenanbieter muss hier also schleunigst nachrüsten, wenn er relevant und klickbar bleiben will.