Wichtiger Hinweis: Google und Yahoo werden DMARC ab April 2024 vorschreiben.
PowerDMARC

Was ist ein TLS Handshake?

Was ist ein TLS-Handshake?

Was ist ein TLS-Handshake?

Lesezeit: 4 min

TLS-Verschlüsselung und Authentifizierungsprotokoll, das die Internetkommunikation schützt. Der TLS-Handshake ist ein Prozess, der eine Verbindung mit einem Server durch asymmetrische Kryptographie sichert. Websites, die ein TLS-Zertifikat verwenden, können das HTTPS-Protokoll nutzen, um sich sicher mit dem Server zu verbinden. In diesem Blog wird der TLS-Handshake im Detail erklärt, einschließlich der TLS-Handshake-Schritte, der Arbeitsmethodik und mehr.

Was ist ein TLS Handshake?

Wie der Handshake im wirklichen Leben ist auch der TLS-Handshake eine Einführung. Er steht für eine sichere Kommunikation zwischen zwei Servern, bei der Nachrichten ausgetauscht werden, um sich gegenseitig zu bestätigen, zu verifizieren, kryptografische Codes einzurichten und sich auf Sitzungsschlüssel zu einigen. 

Der TLS-Handshake-Prozess beginnt mit dem anfänglichen "Hello" und geht bis zu dem Stadium, in dem ein Client und ein Server über eine gesicherte Verbindung miteinander sprechen können. 

Wie funktioniert das TLS-Handshake?

Nachdem Sie nun wissen, was ein TLS-Handshake ist, wollen wir sehen, wie er funktioniert.

Der TLS-Handshake-Prozess funktioniert also nur, wenn auf dem Server ein TLS-Zertifikat für eine Website oder Anwendung eingerichtet ist. Dieses Zertifikat enthält wichtige Angaben über den Domänenbesitzer und den öffentlichen Schlüssel des Servers, um die Identität des Servers zu bestätigen. Durch diesen sequenziellen Prozess wird eine TLS-Verbindung hergestellt. Wenn also ein Benutzer auf eine TLS-fähige Website zugreifen möchte, beginnt der TLS-Handshake zwischen seinem Gerät und dem Webbrowser und tauscht die folgenden Informationen aus: 

Beim TLS-Handshake wird eine Chiffriersuite für die gesamte Kommunikation festgelegt. Die Cipher Suite wird als eine Reihe von Algorithmen beschrieben, die beim Aufbau einer sicheren Kommunikationsverbindung verwendet werden. Eine wichtige Aufgabe des TLS-Handshake ist die Festlegung der zu verwendenden Cipher-Suite. TLS legt über einen unverschlüsselten Kanal mithilfe der Public-Key-Kryptografie übereinstimmende Sitzungsschlüssel fest. 

Beim Handshake wird auch die Echtheit des Absenders überprüft, indem der Server mit öffentlichen Schlüsseln überprüft wird. Öffentliche Schlüssel sind Einweg-Verschlüsselungsschlüssel, was bedeutet, dass niemand außer dem ursprünglichen Absender die verschlüsselten Daten entschlüsseln kann. Der ursprüngliche Absender verwendet seinen privaten Schlüssel zur Entschlüsselung der Daten. 

TLS-Handshake fehlgeschlagen bedeutet, dass die Verbindung abgebrochen wird und der Client die Fehlermeldung "503 Service Unavailable" erhält. 

TLS vs. SSL-Handshakes

SSL steht für Secure Sockets Layer, das ursprüngliche Sicherheitsprotokoll, das für HTTP entwickelt wurde. SSL wurde durch TLS ersetzt, und die SSL-Handshakes werden jetzt als TSL-Handshakes bezeichnet.

Wann findet ein TLS-Handshake statt?

Der Browser fragt den Ursprungsserver der Website ab, wenn ein Benutzer eine Website über eine gesicherte Verbindung aufrufen möchte. Dies geschieht auch, wenn ein anderer Kommunikationskanal HTTPS verwendet. Dazu gehören API-Aufrufe und DNS über ein gesichertes Netzwerk.

Schritte eines TLS-Handshakes

Die TLS-Handshake-Schritte bestehen aus einer Reihe von Datagrammen oder Nachrichten, die zwischen dem Client und dem Server übertragen werden. Die genauen Schritte unterscheiden sich je nach Art des verwendeten Schlüsselaustauschalgorithmus und der von beiden Seiten unterstützten Cipher Suites. Folgende Schritte können Sie erwarten.

Schritt 1: Die "Client Hello"-Nachricht

Der Server des Kunden beginnt den TLS-Handshake-Prozess, indem er eine "Hallo"-Nachricht an den Hauptserver der Website sendet. Die Nachricht besteht aus wichtigen Details wie der TLS-Version und den unterstützten Cipher-Suites sowie einigen Zufallsbytes, die als "client random" bezeichnet werden.

Schritt 2: Die 'Server Hello'-Meldung

Der Server antwortet auf die "Hallo"-Nachricht des Clients, indem er eine Antwort mit einem SSL-Zertifikat, der vom Server gewählten Cipher-Suite und der vom Server generierten "Server Random"-String sendet. 

Schritt 3: Authentifizierung

In diesem TLS-Handshake-Schritt bestätigt der Client das SSL-Zertifikat des Servers bei der ausstellenden Behörde. Dies geschieht, um zu überprüfen, ob der Server echt ist und der Client mit dem Domäneninhaber kommuniziert.

Schritt 4: Das Premaster-Geheimnis

Das Premaster-Geheimnis, eine weitere zufällige Bytefolge, wird vom Client gesendet. Sie wird mit einem öffentlichen Schlüssel verschlüsselt und kann mit einem privaten Schlüssel vom Server entschlüsselt werden. 

Schritt 5: Verwendeter privater Schlüssel

Das Premaster-Geheimnis wird vom Server entschlüsselt.

Schritt 6: Sitzungsschlüssel erstellt

Client und Servant erstellen Sitzungsschlüssel aus dem Zufallswert des Clients, dem Zufallswert des Servers und dem Premaster-Geheimnis. Das Ergebnis aller drei sollte das gleiche sein.

Schritt 7: Der Kunde ist bereit

Der Client sendet eine mit dem Sitzungsschlüssel verschlüsselte "Fertig"-Nachricht.

Schritt 8: Server ist bereit

Der Server sendet eine mit dem Sitzungsschlüssel verschlüsselte "Fertig"-Nachricht. 

Schritt 9: Sichere symmetrische Verschlüsselung erreicht 

Dies ist der letzte TLS-Handshake-Schritt. Nach seinem Abschluss wird die Kommunikation unter Verwendung der Sitzungsschlüssel fortgesetzt.

TLS 1.3 Handshake - Was ist der Unterschied?

TLS 1.3 unterstützt RSA nicht; daher sind die Schritte etwas anders.

Kunde Hallo

Der Client sendet die "Client Hello''-Nachricht, die die Protokollversion, den zufälligen Client und eine Liste von Cipher Suites enthält. Die Anzahl der Cipher Suites nimmt ab, da die Version TLS 1.3 keine Cipher Suites unterstützt. 

Diese Nachricht enthält auch Parameter, die zur Auswertung des Premaster-Geheimnisses verwendet werden. Dadurch wird die Länge des Handshakes reduziert, was der Hauptunterschied zwischen TLS 1.3-Handshakes und TLS 1.0, 1.1 und 1.2-Handshakes ist. 

Server erstellt Master Secret

In diesem Schritt erhält der Server den Zufallswert des Clients sowie dessen Parameter und Cipher Suites. Da er sein eigenes Server-Random erzeugt, generiert er das Master Secret.

Server Hallo und Beendet

Das Server-Hallo enthält das Serverzertifikat, die kryptografische Signatur, den Zufallsserver und die gewählte Cipher-Suite. Er sendet auch eine "Fertig"-Nachricht, da er das Master-Geheimnis hat. 

Abschließende Schritte und der Kunde ist fertig

Der Client prüft die Signatur und das Zertifikat, generiert das Hauptgeheimnis und sendet die Nachricht "Fertig".

Sichere symmetrische Verschlüsselung erreicht

Nach Abschluss des TLS-Handshakes wird die Kommunikation unter Verwendung der Sitzungsschlüssel fortgesetzt.

Wie kann man TLS-Berichte lesen?

TLS-Berichte können wertvolle Informationen über falsch abgestimmte TLS-Handshakes während der MTA-STS-Authentifizierung sowie über Zustellbarkeitsprobleme liefern. PowerDMARCs TLS-RPT bietet Berichte in einem für den Menschen lesbaren Format, das aus Original-JSON-Dateien geparst wird.

Um die TLS-Berichte ab heute zu lesen, starten Sie Ihren kostenlosen Testzugang bei uns!

Warum sollten Geschäfts- und Webanwendungen TLS Handshake verwenden?

TLS-Handshake schützt Webanwendungen vor Verstößen und anderen Cyberangriffen, da HTTPS die gesicherte Version der HTTP-Erweiterung ist. Websites, die über ein TLS-Zertifikat verfügen, können das HTTPS-Protokoll nutzen, um eine sichere Verbindung mit den Nutzern herzustellen. Ziel ist es, sensible Daten wie persönliche Daten, Finanzdaten, Anmeldeinformationen usw. zu schützen.

Beenden der mobilen Version