TLS Verbindungsaufbau mit Diffie-Hellman: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | ;Client Hello: | + | ;Client Hello: |
| − | *Der Client sendet eine „Client Hello“-Nachricht mit der Protokollversion, dem Client Random und einer Liste von Cipher Suites. | + | *Der Client sendet eine „Client Hello“-Nachricht mit der Protokollversion, dem Client Random und einer Liste von Cipher Suites.w |
| − | ;Server Hello: | + | ;Server Hello: |
| − | *Der Server antwortet mit seinem SSL-Zertifikat, seiner ausgewählten Cipher Suite und dem Server Random. | + | *Der Server antwortet mit seinem SSL-Zertifikat, seiner ausgewählten Cipher Suite und dem Server Random. |
| − | * | + | *Server wählt eine Cipher Suite aus der Liste aus, die sowohl vom Client als auch vom Server unterstützt wird und die den höchsten gemeinsamen Sicherheitsstandard bietet. |
| − | ;Die digitale Signatur des Servers: | + | ;Authentifizierung: |
| + | *Der Client überprüft das SSL-Zertifikat des Servers bei der Zertifizierungsstelle, die es ausgestellt hat. | ||
| + | *Dieser Vorgang bestätigt, dass der Server der ist, der er vorgibt zu sein, und dass der Client mit dem tatsächlichen Eigentümer der Domain interagiert. | ||
| + | ;Die digitale Signatur des Servers: | ||
*Der Server berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt. | *Der Server berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt. | ||
| − | * | + | *Das bedeutet einen Hash auf alle Nachrichten und diese werden verschlüsselt mit dem privaten Schlüssel des Servers |
| − | ;Digitale Signatur bestätigt: | + | *Dies wird an den Client geschickt. |
| − | *Der Client | + | ;Digitale Signatur bestätigt: |
| − | *Der Client | + | *Der Client berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt. |
| − | ;Client-DH-Parameter: | + | *Das bedeutet Hash auf alle Nachrichten. |
| + | *Der Client entschlüsselt die digitale Signature des Servers. | ||
| + | *Dann vergleicht er den eigenen gebildeten Hash mit diesem Wert. | ||
| + | *Stimmen sie überein, ist der Server derjenige der er vorgibt zu sein. | ||
| + | ;Client-DH-Parameter: | ||
*Der Client sendet seinen DH-Parameter an den Server. | *Der Client sendet seinen DH-Parameter an den Server. | ||
| − | ; | + | ;Client und Server berechnen Premaster Secret: |
| − | *Server | + | *Client und Server die von ihnen ausgetauschten DH-Parameter, um ein passendes Premaster Secret separat zu berechnen. |
;Sitzungsschlüssel werden erstellt: | ;Sitzungsschlüssel werden erstellt: | ||
| − | *Client und Server | + | *Nun berechnen Client und Server den Sitzungsschlüssel aus dem Premaster Secret, dem Client Random und dem Server Random. |
;Client ist bereit: | ;Client ist bereit: | ||
| − | *Der Client | + | *Der Client sendet eine „Fertig“-Nachricht, die mit einem Sitzungsschlüssel verschlüsselt ist, der mithilfe der DH-Parameter und des Premaster Secrets erstellt wurde. |
;Server ist bereit: | ;Server ist bereit: | ||
| − | *Der Server | + | *Der Server sendet eine „Fertig“-Nachricht, die ebenfalls mit dem gleichen Sitzungsschlüssel verschlüsselt ist, der zuvor durch die DH-Parameter und das Premaster Secret erzeugt wurde. |
| − | ; | + | ;Sichere symmetrische Verschlüsselung erfolgreich: |
| − | * | + | *Der Handshake ist abgeschlossen, und die Kommunikation wird mit den generierten Sitzungsschlüsseln fortgesetzt, wobei Diffie-Hellman die Grundlage für die Sicherheit der Schlüsselvereinbarung bildet. |
Aktuelle Version vom 9. Oktober 2023, 13:45 Uhr
- Client Hello
- Der Client sendet eine „Client Hello“-Nachricht mit der Protokollversion, dem Client Random und einer Liste von Cipher Suites.w
- Server Hello
- Der Server antwortet mit seinem SSL-Zertifikat, seiner ausgewählten Cipher Suite und dem Server Random.
- Server wählt eine Cipher Suite aus der Liste aus, die sowohl vom Client als auch vom Server unterstützt wird und die den höchsten gemeinsamen Sicherheitsstandard bietet.
- Authentifizierung
- Der Client überprüft das SSL-Zertifikat des Servers bei der Zertifizierungsstelle, die es ausgestellt hat.
- Dieser Vorgang bestätigt, dass der Server der ist, der er vorgibt zu sein, und dass der Client mit dem tatsächlichen Eigentümer der Domain interagiert.
- Die digitale Signatur des Servers
- Der Server berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt.
- Das bedeutet einen Hash auf alle Nachrichten und diese werden verschlüsselt mit dem privaten Schlüssel des Servers
- Dies wird an den Client geschickt.
- Digitale Signatur bestätigt
- Der Client berechnet eine digitale Signatur aller Nachrichten bis zu diesem Punkt.
- Das bedeutet Hash auf alle Nachrichten.
- Der Client entschlüsselt die digitale Signature des Servers.
- Dann vergleicht er den eigenen gebildeten Hash mit diesem Wert.
- Stimmen sie überein, ist der Server derjenige der er vorgibt zu sein.
- Client-DH-Parameter
- Der Client sendet seinen DH-Parameter an den Server.
- Client und Server berechnen Premaster Secret
- Client und Server die von ihnen ausgetauschten DH-Parameter, um ein passendes Premaster Secret separat zu berechnen.
- Sitzungsschlüssel werden erstellt
- Nun berechnen Client und Server den Sitzungsschlüssel aus dem Premaster Secret, dem Client Random und dem Server Random.
- Client ist bereit
- Der Client sendet eine „Fertig“-Nachricht, die mit einem Sitzungsschlüssel verschlüsselt ist, der mithilfe der DH-Parameter und des Premaster Secrets erstellt wurde.
- Server ist bereit
- Der Server sendet eine „Fertig“-Nachricht, die ebenfalls mit dem gleichen Sitzungsschlüssel verschlüsselt ist, der zuvor durch die DH-Parameter und das Premaster Secret erzeugt wurde.
- Sichere symmetrische Verschlüsselung erfolgreich
- Der Handshake ist abgeschlossen, und die Kommunikation wird mit den generierten Sitzungsschlüsseln fortgesetzt, wobei Diffie-Hellman die Grundlage für die Sicherheit der Schlüsselvereinbarung bildet.