TLS Verbindungsaufbau mit Diffie-Hellman: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
Zeile 3: Zeile 3:
 
;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.
 
;Authentifizierung:  
 
;Authentifizierung:  
 
*Der Client überprüft das SSL-Zertifikat des Servers bei der Zertifizierungsstelle, die es ausgestellt hat.
 
*Der Client überprüft das SSL-Zertifikat des Servers bei der Zertifizierungsstelle, die es ausgestellt hat.

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.